Browse Source

优化数据权限

zhou-hao 5 years ago
parent
commit
aeae03cd38

+ 17 - 0
hsweb-authorization/hsweb-authorization-basic/src/main/java/org/hswebframework/web/authorization/basic/define/DefaultBasicAuthorizeDefinition.java

@@ -129,6 +129,23 @@ public class DefaultBasicAuthorizeDefinition implements AopAuthorizeDefinition {
 
         }
 
+
+        for (Annotation annotation : classAnnotation) {
+            if (annotation instanceof DataAccessType||
+                    annotation instanceof DataAccess) {
+                for (ResourceDefinition resource : definition.getResources().getResources()) {
+                    for (ResourceActionDefinition action : resource.getActions()) {
+                        if(annotation instanceof DataAccessType) {
+                            definition.putAnnotation(action, (DataAccessType) annotation);
+                        }else{
+                            definition.putAnnotation(action, (DataAccess) annotation);
+                        }
+                    }
+                }
+            }
+        }
+
+
         return definition;
     }
 

+ 5 - 1
hsweb-system/hsweb-system-authorization/hsweb-system-authorization-default/src/main/java/org/hswebframework/web/system/authorization/defaults/service/DefaultReactiveAuthenticationInitializeService.java

@@ -65,7 +65,11 @@ public class DefaultReactiveAuthenticationInitializeService
                     .userType(user.getType())
                     .build());
             return initPermission(authentication)
-                    .switchIfEmpty(Mono.just(authentication));
+                    .switchIfEmpty(Mono.just(authentication))
+                    .onErrorResume(err -> {
+                        log.warn(err.getMessage(), err);
+                        return Mono.just(authentication);
+                    });
         });
 
     }