File tree Expand file tree Collapse file tree 1 file changed +8
-5
lines changed
hsweb-authorization/hsweb-authorization-shiro Expand file tree Collapse file tree 1 file changed +8
-5
lines changed Original file line number Diff line number Diff line change 4
4
5
5
本模块对shiro进行拓展,增加对[ hsweb-authorization-api] ( ../hsweb-authorization-api ) 中的注解进行实现。
6
6
实现类如下:
7
- | 注解名称 | 实现类 |
7
+
8
+ | 注解名称 | 实现类 |
8
9
| ------------- | :-------------:|
9
- | [ ` @Authorize ` ] ( src/main/java/org/hswebframework/web/authorization/annotation/Authorize.java ) | 暂未实现 |
10
- | [ ` @RequiresExpression ` ] ( src/main/java/org/hswebframework/web/authorization/annotation/RequiresExpression.java ) | [ ExpressionAnnotationMethodInterceptor] ( src/main/java/org/hswebframework/web/authorization/shiro/boost/ExpressionAnnotationMethodInterceptor.java ) |
11
- | [ ` @RequiresDataAccess ` ] ( src/main/java/org/hswebframework/web/authorization/annotation/RequiresDataAccess.java ) | [ DataAccessAnnotationMethodInterceptor] ( src/main/java/org/hswebframework/web/authorization/shiro/boost/DataAccessAnnotationMethodInterceptor.java ) |
12
- | [ ` @RequiresFieldAccess ` ] ( src/main/java/org/hswebframework/web/authorization/annotation/RequiresFieldAccess.java ) | [ FieldAccessAnnotationMethodInterceptor] ( src/main/java/org/hswebframework/web/authorization/shiro/boost/FieldAccessAnnotationMethodInterceptor.java ) |
10
+ | [ ` @Authorize ` ] ( src/main/java/org/hswebframework/web/authorization/annotation/Authorize.java ) | 暂未实现 |
11
+ | [ ` @RequiresExpression ` ] ( src/main/java/org/hswebframework/web/authorization/annotation/RequiresExpression.java ) | [ ExpressionAnnotationMethodInterceptor] ( src/main/java/org/hswebframework/web/authorization/shiro/boost/ExpressionAnnotationMethodInterceptor.java ) |
12
+ | [ ` @RequiresDataAccess ` ] ( src/main/java/org/hswebframework/web/authorization/annotation/RequiresDataAccess.java ) | [ DataAccessAnnotationMethodInterceptor] ( src/main/java/org/hswebframework/web/authorization/shiro/boost/DataAccessAnnotationMethodInterceptor.java ) |
13
+ | [ ` @RequiresFieldAccess ` ] ( src/main/java/org/hswebframework/web/authorization/annotation/RequiresFieldAccess.java ) | [ FieldAccessAnnotationMethodInterceptor] ( src/main/java/org/hswebframework/web/authorization/shiro/boost/FieldAccessAnnotationMethodInterceptor.java ) |
13
14
14
15
## 拓展接口
15
16
16
17
### 行级权限控制器
17
18
18
19
控制逻辑简述:
20
+
19
21
1 . 获取被拦截方法的注解信息,取得当前需要验证的permission,action。如: user,query
20
22
2 . 根据上一步获取到需要验证的permission和action获取当前登录用户权限信息中配置的控制规则(控制规则可以在前端进行设置)
21
23
3 . 调用控制器进行验证
22
24
23
25
可自己实现DataAccessHandler接口并注入spring以实现自定义的控制方式
24
26
25
27
现已实现3中控制器
28
+
26
29
1 . [ CustomDataAccessHandler] ( src/main/java/org/hswebframework/web/authorization/shiro/boost/handler/CustomDataAccessHandler.java ) 自定义控制器
27
30
2 . [ OwnCreatedDataAccessHandler] ( src/main/java/org/hswebframework/web/authorization/shiro/boost/handler/OwnCreatedDataAccessHandler.java ) 控制只能操作自己创建的数据
28
31
3 . [ ScriptDataAccessHandler] ( src/main/java/org/hswebframework/web/authorization/shiro/boost/handler/ScriptDataAccessHandler.java ) 使用脚本方式控制
You can’t perform that action at this time.
0 commit comments