diff --git a/hsweb-authorization/hsweb-authorization-api/README.md b/hsweb-authorization/hsweb-authorization-api/README.md index 0e4680e76..c7fa66020 100644 --- a/hsweb-authorization/hsweb-authorization-api/README.md +++ b/hsweb-authorization/hsweb-authorization-api/README.md @@ -21,8 +21,8 @@ _点击名称,查看源代码注释获得使用说明_ | 类名 | 说明 | | ------------- |:-------------:| -| [`Authorization`](src/main/java/org/hswebframework/web/authorization/Authorization.java) | 用户的认证信息 | -| [`AuthorizationHolder`](src/main/java/org/hswebframework/web/authorization/AuthorizationHolder.java) | 用于获取当前登录用户的认证信息 | +| [`Authentication`](src/main/java/org/hswebframework/web/authorization/Authentication.java) | 用户的认证信息 | +| [`AuthenticationHolder`](src/main/java/org/hswebframework/web/authorization/AuthenticationHolder.java) | 用于获取当前登录用户的认证信息 | ### Listener @@ -46,9 +46,9 @@ api提供[AuthorizationListener](src/main/java/org/hswebframework/web/authorizat public class CustomAuthorizationSuccessListener implements AuthorizationListener{ @Override public void on(AuthorizationSuccessEvent event) { - Authorization authorization=event.getAuthorization(); + Authentication authentication=event.getAuthentication(); //.... - System.out.println(authorization.getUser().getName()+"登录啦"); + System.out.println(authentication.getUser().getName()+"登录啦"); } } ``` \ No newline at end of file diff --git a/hsweb-authorization/hsweb-authorization-api/pom.xml b/hsweb-authorization/hsweb-authorization-api/pom.xml index 929b7e3f4..107470126 100644 --- a/hsweb-authorization/hsweb-authorization-api/pom.xml +++ b/hsweb-authorization/hsweb-authorization-api/pom.xml @@ -10,5 +10,11 @@ 4.0.0 hsweb-authorization-api - + + + org.hswebframework.web + hsweb-boost-aop + ${project.version} + + \ No newline at end of file diff --git a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/AuthenticationHolder.java b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/AuthenticationHolder.java index e4a875de4..5bdefcf3c 100644 --- a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/AuthenticationHolder.java +++ b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/AuthenticationHolder.java @@ -37,15 +37,33 @@ public final class AuthenticationHolder { private static AuthenticationSupplier supplier; /** - * @return 当前登录用户信息 + * @return 当前登录的用户权限信息 */ public static Authentication get() { if (null == supplier) { - throw new UnsupportedOperationException("AuthorizationSupplier is null!"); + throw new UnsupportedOperationException("supplier is null!"); } return supplier.get(); } + /** + * 获取指定用户的权限信息 + * + * @param userId 用户ID + * @return 权限信息 + */ + public static Authentication get(String userId) { + if (null == supplier) { + throw new UnsupportedOperationException("supplier is null!"); + } + return supplier.get(userId); + } + + /** + * 初始化 {@link AuthenticationSupplier} + * + * @param supplier + */ public static void setSupplier(AuthenticationSupplier supplier) { if (null == AuthenticationHolder.supplier) AuthenticationHolder.supplier = supplier; diff --git a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/AuthenticationSupplier.java b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/AuthenticationSupplier.java index 37d4bc530..5788f26d4 100644 --- a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/AuthenticationSupplier.java +++ b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/AuthenticationSupplier.java @@ -26,4 +26,5 @@ import java.util.function.Supplier; * @see AuthenticationHolder */ public interface AuthenticationSupplier extends Supplier { + Authentication get(String userId); } diff --git a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/annotation/Authorize.java b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/annotation/Authorize.java index b7a55209a..25444a80a 100644 --- a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/annotation/Authorize.java +++ b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/annotation/Authorize.java @@ -21,7 +21,6 @@ package org.hswebframework.web.authorization.annotation; import org.hswebframework.web.authorization.Permission; import org.hswebframework.web.authorization.Role; import org.hswebframework.web.authorization.User; -import org.hswebframework.web.boost.aop.context.RecordAopContext; import java.lang.annotation.*; @@ -35,7 +34,6 @@ import java.lang.annotation.*; @Retention(RetentionPolicy.RUNTIME) @Inherited @Documented -@RecordAopContext public @interface Authorize { /** diff --git a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/annotation/RequiresDataAccess.java b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/annotation/RequiresDataAccess.java index 654c8d1f0..09a5ce8d4 100644 --- a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/annotation/RequiresDataAccess.java +++ b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/annotation/RequiresDataAccess.java @@ -20,7 +20,6 @@ package org.hswebframework.web.authorization.annotation; import org.hswebframework.web.authorization.access.DataAccessConfig; import org.hswebframework.web.authorization.access.DataAccessController; import org.hswebframework.web.authorization.Permission; -import org.hswebframework.web.boost.aop.context.RecordAopContext; import java.lang.annotation.*; @@ -37,7 +36,6 @@ import java.lang.annotation.*; @Target({ElementType.TYPE, ElementType.METHOD}) @Retention(RetentionPolicy.RUNTIME) @Documented -@RecordAopContext public @interface RequiresDataAccess { /** diff --git a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/annotation/RequiresExpression.java b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/annotation/RequiresExpression.java index c5f3f6e5b..65815b602 100644 --- a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/annotation/RequiresExpression.java +++ b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/annotation/RequiresExpression.java @@ -17,8 +17,6 @@ package org.hswebframework.web.authorization.annotation; -import org.hswebframework.web.boost.aop.context.RecordAopContext; - import java.lang.annotation.*; /** @@ -30,7 +28,6 @@ import java.lang.annotation.*; @Target({ElementType.TYPE, ElementType.METHOD}) @Retention(RetentionPolicy.RUNTIME) @Documented -@RecordAopContext public @interface RequiresExpression { /** diff --git a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/annotation/RequiresFieldAccess.java b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/annotation/RequiresFieldAccess.java index 0468b1c49..da0c06d2d 100644 --- a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/annotation/RequiresFieldAccess.java +++ b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/annotation/RequiresFieldAccess.java @@ -19,7 +19,6 @@ package org.hswebframework.web.authorization.annotation; import org.hswebframework.web.authorization.Permission; import org.hswebframework.web.authorization.access.FieldAccessConfig; -import org.hswebframework.web.boost.aop.context.RecordAopContext; import java.lang.annotation.*; @@ -36,7 +35,6 @@ import java.lang.annotation.*; @Target({ElementType.TYPE, ElementType.METHOD}) @Retention(RetentionPolicy.RUNTIME) @Documented -@RecordAopContext public @interface RequiresFieldAccess { /**