refactor(security): Ports & Adapters 架构重构|解除反向依赖|抽离 Security Starter 准备

- 新增 2 个端口接口(UserAuthenticationPort / PermissionPort)+ 1 个适配器(PermissionAdapter)
- SecurityUserDetails 用 roles(Set<String>) 替代 authorities,消除 Jackson 序列化问题
- 删除 UserSession,Redis / JWT 直存 SecurityUserDetails
- SecurityUserDetailsService / PermissionService 注入 Port 替代 system Service
This commit is contained in:
Ray.Hao
2026-07-05 16:53:46 +08:00
parent b17bd6bf7c
commit 2441efa9ba
46 changed files with 2917 additions and 938 deletions

View File

@@ -33,9 +33,9 @@ public interface JwtClaimConstants {
String DATA_SCOPES = "dataScopes";
/**
* 权限(角色Code)集合
* 角色编码集合(不带 ROLE_ 前缀)
*/
String AUTHORITIES = "authorities";
String ROLES = "roles";
/**
* Token 版本号

View File

@@ -0,0 +1,30 @@
package com.youlai.boot.common.enums;
import com.baomidou.mybatisplus.annotation.EnumValue;
import com.youlai.boot.common.base.IBaseEnum;
import lombok.Getter;
/**
* 第三方登录平台类型枚举
*/
@Getter
public enum SocialPlatformEnum implements IBaseEnum<String> {
WECHAT_MINI("WECHAT_MINI", "微信小程序"),
WECHAT_MP("WECHAT_MP", "微信公众号"),
WECHAT_OPEN("WECHAT_OPEN", "微信开放平台"),
ALIPAY("ALIPAY", "支付宝"),
QQ("QQ", "QQ"),
APPLE("APPLE", "Apple ID");
@EnumValue
private final String value;
private final String label;
SocialPlatformEnum(String value, String label) {
this.value = value;
this.label = label;
}
}