JMM*_*JMM 3 spring jpa spring-security
我正在使用Hibernate 3(带JPA Annotations),Spring 2.5和Spring Security 2.0.5构建应用程序.
我想知道我需要<authentication-provider>在spring安全配置文件(applicationContext-security.xml)中放入我的标签,以便我可以让Spring Security使用我现有的Service层类(AuthenticationService)来处理我的自定义用户和角色域对象.
据我所知,Spring Security要求两个表存在以下模式:
create table users(
username varchar_ignorecase(50) not null primary key,
password varchar_ignorecase(50) not null,
enabled boolean not null);
create table authorities (
username varchar_ignorecase(50) not null,
authority varchar_ignorecase(50) not null,
constraint fk_authorities_users foreign key(username) references users(username));
create unique index ix_auth_username on authorities (username,authority);;
Run Code Online (Sandbox Code Playgroud)
但我想使用自己的域对象,这些对象与上面的表定义不同.
有人可以指点我这里正确的方向吗?我找不到任何有用的文档,我不确定我想做的事情是否真的可行.
谢谢!
您可以将自定义实现UserDetailsService为域和Spring Security之间的桥梁.然后您按如下方式为Spring Security提供它(对于Spring Security 2.x):
<security:authentication-provider user-service-ref='myUserDetailsService'/>
<bean id="myUserDetailsService" class="... your implementation ...">
...
</bean>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6591 次 |
| 最近记录: |