使用场景
对Bean的方法进行角色或者账号的限制。
使用方法
检查service包依赖
<dependency>
<groupId>com.hvisions</groupId>
<artifactId>hvisions-common-springboot-starter</artifactId>
<version>3.3.0</version>
</dependency>
@PreAuthority(userAccounts = {"admin"},errorMessage = "只允许管理员操作")
在Controller的方法 上添加以上注解,因为要用到Request对象所以目前不支持非Http调用的情况。
注解属性解释
//需要拥有的角色名称
String[] roleNames() default {};
//允许的账号
String[] userAccounts() default {};
//角色限定判断方法,AuthType.AND = 1 表示需要拥有所有的角色才能进行访问。AuthType.OR= 2 表示只要拥有一个角色就可以进行访问
int roleCheckType() default 1;
//如果没有通过判定,返回的异常信息
String errorMessage() default "权限不足不能访问";