diff --git a/kicc-common/kicc-common-core/src/main/java/com/cloud/kicc/common/core/constant/SecurityConstants.java b/kicc-common/kicc-common-core/src/main/java/com/cloud/kicc/common/core/constant/SecurityConstants.java index 337f403a..1a3a4d67 100644 --- a/kicc-common/kicc-common-core/src/main/java/com/cloud/kicc/common/core/constant/SecurityConstants.java +++ b/kicc-common/kicc-common-core/src/main/java/com/cloud/kicc/common/core/constant/SecurityConstants.java @@ -1,5 +1,7 @@ package com.cloud.kicc.common.core.constant; +import com.cloud.kicc.common.core.enums.SsoSystemEnum; + /** *
* 安全常量 @@ -15,6 +17,11 @@ public interface SecurityConstants { */ String ROLE = "ROLE_"; + /** + * sso多系统角色权限 + */ + String SSO_PERMISSION = SsoSystemEnum.KICC.getName() + ROLE; + /** * 项目的license */ diff --git a/kicc-common/kicc-common-core/src/main/java/com/cloud/kicc/common/core/enums/SsoSystemEnum.java b/kicc-common/kicc-common-core/src/main/java/com/cloud/kicc/common/core/enums/SsoSystemEnum.java new file mode 100644 index 00000000..de50de93 --- /dev/null +++ b/kicc-common/kicc-common-core/src/main/java/com/cloud/kicc/common/core/enums/SsoSystemEnum.java @@ -0,0 +1,43 @@ +package com.cloud.kicc.common.core.enums; + +import lombok.Getter; +import lombok.RequiredArgsConstructor; + +/** + *
+ * sso系统枚举 + *
+ * + * @Author: wangxiang4 + * @Since: 2023/8/16 + */ +@Getter +@RequiredArgsConstructor +public enum SsoSystemEnum { + + /** + * sso认证系统 + */ + KICC("KICC", "主kicc系统"), + + /** + * 子系统1 + */ + KICS("KICS", "子系统1"), + + /** + * 子系统2 + */ + KLAB("KLAB", "子系统2"); + + /** + * 名称 + */ + private final String name; + + /** + * 描述 + */ + private final String description; + +} diff --git a/kicc-common/kicc-common-data/src/main/java/com/cloud/kicc/common/data/entity/KiccUser.java b/kicc-common/kicc-common-data/src/main/java/com/cloud/kicc/common/data/entity/KiccUser.java index f41372fa..ef394899 100644 --- a/kicc-common/kicc-common-data/src/main/java/com/cloud/kicc/common/data/entity/KiccUser.java +++ b/kicc-common/kicc-common-data/src/main/java/com/cloud/kicc/common/data/entity/KiccUser.java @@ -1,5 +1,6 @@ package com.cloud.kicc.common.data.entity; +import com.cloud.kicc.common.core.constant.SecurityConstants; import lombok.EqualsAndHashCode; import lombok.Getter; import lombok.Setter; @@ -8,6 +9,8 @@ import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.userdetails.User; import java.util.Collection; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; /** *@@ -15,41 +18,44 @@ import java.util.Collection; *
* * @Author: wangxiang4 - * @Date: 2022/2/17 + * @Since: 2023/8/16 */ +@Getter @Accessors(chain = true) @EqualsAndHashCode(callSuper = false) public class KiccUser extends User { + private static final long serialVersionUID = 999L; + /** * 用户ID */ - @Getter - private String id; + private final String id; /** * 部门ID */ - @Getter - private String deptId; + private final String deptId; /** * 手机号 */ - @Getter - private String phone; + private final String phone; /** * 用户类型 - * {@link com.cloud.kicc.system.api.enums.UserTypeEnum } */ - @Getter - private String userType; + private final String userType; + + /** + * 扩展sso多系统角色权限 + */ + @Setter + private Map