spring-security(2)

记录一下spring security的配置

配置详解


<beans:beans xmlns="http://www.springframework.org/schema/security"
xmlns:beans="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security.xsd">











<beans:bean id="userService" class="com.yitop.feng.service.UserService"/>

<beans:bean id="authenticationSuccessHandler" class="com.yitop.feng.service.security.AuthenticationSuccessHandlerImpl" />

<beans:bean id="authenticationFailHandler" class="com.yitop.feng.service.security.AuthenticationFailHandlerImpl" />




<!--
hash 指定密码加密方式 plaintext sha sha-256 md4 md5 {sha} {ssha}
加密算法 PasswordEncoder 实现类 plaintext PlaintextPasswordEncoder
sha ShaPasswordEncoder
sha-256 ShaPasswordEncoder,使用时new ShaPasswordEncoder(256)
md4 Md4PasswordEncoder
md5 Md5PasswordEncoder
{sha} LdapShaPasswordEncoder
{ssha} LdapShaPasswordEncoder

base64 表示是否需要对加密后的密码使用BASE64进行编码,默认是false
-->



</beans:beans>

url权限控制表达式

hasRole([role]) 当前用户是否拥有指定角色。
hasAnyRole([role1,role2]) 多个角色是一个以逗号进行分隔的字符串。如果当前用户拥有指定角色中的任意一个则返回true。
hasAuthority([auth]) 等同于hasRole
hasAnyAuthority([auth1,auth2]) 等同于hasAnyRole
Principle 代表当前用户的principle对象
authentication 直接从SecurityContext获取的当前Authentication对象
permitAll 允许所有
denyAll 拒绝所有

注解功能


<security:global-method-security jsr250-annotations="enabled"/>

@RolesAllowed({"ROLE_USER", "ROLE_ADMIN"})
public User find(int id) {
System.out.println("find user by id............." + id);
return null;
}

//允许ROLE_USER或ROLE_ADMIN使用find方法

//@PermitAll 允许所有
//@DenyAll 拒绝所有

posted @ 2017-03-28 15:35  fengzp  阅读(433)  评论(0)    收藏  举报