首页 > 代码库 > Spring Security应用开发(21)基于方法的授权(五)使用@Secured注解

Spring Security应用开发(21)基于方法的授权(五)使用@Secured注解

Spring Security提供了@Secured注解来实现基于方法的授权控制。

@Secured注解可以指定一个字符串数组参数作为value的值,表示当前用户具备这些角色中的任何一个角色即可满足授权条件。

(1)启用@Secured注解。

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

 

(2)使用Secured注解。

 

//getUserByName()方法可以被具备ROLE_ADMIN或者ROLE_USER角色的用户访问。
@Secured({"ROLE_ADMIN","ROLE_USER"})
public UserBean  getUserByName(String name){
UserBean user = new UserBean(name,1001);
System.out.println("getUserByName");
return user;

}


@Secured("ROLE_ADMIN")
public void addUser(){
System.out.println("addUser");
}
 

@Secured("ROLE_ADMIN")
public void removeUser(){
System.out.println("removeUser");
} @Secured(
"ROLE_ADMIN") public void updateUser(){ System.out.println("updateUser"); }

 

@Secured注解的用法和@RolesAllowed注解的用户基本相同,请参考@RolesAllowed注解相关博客的介绍。

 

Spring Security应用开发(21)基于方法的授权(五)使用@Secured注解