Compare commits

...

2 Commits

28 changed files with 51 additions and 41 deletions

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus-api</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -4,7 +4,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -4,7 +4,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
@ -87,7 +87,7 @@
<dependency>
<groupId>com.bonus</groupId>
<artifactId>bonus-common-config</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
<dependency>

View File

@ -4,7 +4,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus-common</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus-common</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus-common</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus-common</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus-common</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus-common</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus-common</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -4,7 +4,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus-common</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -1,17 +1,15 @@
package com.bonus.common.security.annotation;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.lang.annotation.*;
/**
* @author wangvivi
*/
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Target({ ElementType.METHOD, ElementType.TYPE })
@Documented
public @interface RequiresPermissionsOrInnerAuth {
InnerAuth innerAuth() default @InnerAuth();
RequiresPermissions requiresPermissions() default @RequiresPermissions();
InnerAuth innerAuth() default @InnerAuth(isUser = false);
RequiresPermissions requiresPermissions() default @RequiresPermissions(value = {});
}

View File

@ -11,6 +11,7 @@ import lombok.extern.slf4j.Slf4j;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Pointcut;
import org.aspectj.lang.reflect.MethodSignature;
import org.springframework.core.Ordered;
import org.springframework.stereotype.Component;
@ -24,13 +25,14 @@ import java.lang.reflect.Method;
*/
@Aspect
@Component
@Slf4j
public class PermisssionOrInnerAuthAspect
public class PermissionOrInnerAuthAspect
{
@Around("@annotation(RequiresPermissionsOrInnerAuth)")
public Object innerAround(ProceedingJoinPoint point, RequiresPermissionsOrInnerAuth permissionsOrInnerAuth) throws Throwable
@Pointcut("@annotation(com.bonus.common.security.annotation.RequiresPermissionsOrInnerAuth)")
public void permissionOrInnerAuthAspect() {}
@Around("permissionOrInnerAuthAspect()")
public Object innerAround(ProceedingJoinPoint point) throws Throwable
{
log.info("******************RequiresPermissionsOrInnerAuth**********");
MethodSignature signature = (MethodSignature) point.getSignature();
RequiresPermissionsOrInnerAuth auth = signature.getMethod().getAnnotation(RequiresPermissionsOrInnerAuth.class);
@ -56,7 +58,7 @@ public class PermisssionOrInnerAuthAspect
try {
AuthUtil.checkInnerAuth(innerAuth);
} catch (InnerAuthException e){
log.error("内部认证失败:{}",e.getMessage());
// log.error("内部认证失败:{}",e.getMessage());
return false;
}
return true;
@ -66,4 +68,13 @@ public class PermisssionOrInnerAuthAspect
AuthUtil.checkPermi(requiresPermissions,point);
return true;
}
// /**
// * 确保在权限认证aop执行前执行
// */
// @Override
// public int getOrder()
// {
// return Ordered.HIGHEST_PRECEDENCE + 2;
// }
}

View File

@ -4,6 +4,8 @@ com.bonus.common.security.config.VerificationCodeConfig
com.bonus.common.security.service.TokenService
com.bonus.common.security.service.SmsService
com.bonus.common.security.service.EmailService
com.bonus.common.security.aspect.PermissionOrInnerAuthAspect
com.bonus.common.security.aspect.PreAuthorizeAspect
com.bonus.common.security.aspect.InnerAuthAspect
com.bonus.common.security.aspect.PreventRepeatSubmitAspect
com.bonus.common.security.handler.GlobalExceptionHandler

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus-common</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus-common</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -4,7 +4,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -4,7 +4,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus-modules</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus-modules</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus-modules</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus-modules</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -5,7 +5,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus-modules</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -24,7 +24,6 @@ import com.bonus.system.service.*;
import com.bonus.system.warning.WebSocketHandler;
import org.apache.commons.lang3.ArrayUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@ -77,7 +76,7 @@ public class SysUserController extends BaseController {
/**
* 获取用户列表
*/
@RequiresPermissionsOrInnerAuth(innerAuth = @InnerAuth, requiresPermissions = @RequiresPermissions("system:user:list"))
@RequiresPermissionsOrInnerAuth(innerAuth = @InnerAuth(isUser = false), requiresPermissions = @RequiresPermissions("system:user:list"))
@GetMapping("/list")
@PreventRepeatSubmit
@SysLog(title = "用户管理", businessType = OperaType.QUERY, logType = 0, module = "系统管理->用户管理", details = "查询用户列表")

View File

@ -4,7 +4,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -4,7 +4,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus-visual</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -4,7 +4,7 @@
<parent>
<groupId>com.bonus</groupId>
<artifactId>bonus</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

View File

@ -6,14 +6,14 @@
<groupId>com.bonus</groupId>
<artifactId>bonus</artifactId>
<version>24.11.0-SNAPSHOT</version>
<version>24.12.0-SNAPSHOT</version>
<name>bonus</name>
<url>http://www.ahbonus.cn</url>
<description>博诺思微服务系统</description>
<properties>
<bonus.version>24.11.0-SNAPSHOT</bonus.version>
<bonus.version>24.12.0-SNAPSHOT</bonus.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>