Browse Source

chore: sso auth

master
wangxiang 2 years ago
parent
commit
6ab9cbe6bf
No known key found for this signature in database
GPG Key ID: 1BA7946AB6B232E4
  1. 7
      kicc-common/kicc-common-core/src/main/java/com/cloud/kicc/common/core/constant/SecurityConstants.java
  2. 43
      kicc-common/kicc-common-core/src/main/java/com/cloud/kicc/common/core/enums/SsoSystemEnum.java
  3. 29
      kicc-common/kicc-common-data/src/main/java/com/cloud/kicc/common/data/entity/KiccUser.java
  4. 1
      kicc-common/kicc-common-security/src/main/java/com/cloud/kicc/common/security/service/impl/KiccAppUserDetailsServiceImpl.java

7
kicc-common/kicc-common-core/src/main/java/com/cloud/kicc/common/core/constant/SecurityConstants.java

@ -1,5 +1,7 @@ @@ -1,5 +1,7 @@
package com.cloud.kicc.common.core.constant;
import com.cloud.kicc.common.core.enums.SsoSystemEnum;
/**
*<p>
* 安全常量
@ -15,6 +17,11 @@ public interface SecurityConstants { @@ -15,6 +17,11 @@ public interface SecurityConstants {
*/
String ROLE = "ROLE_";
/**
* sso多系统角色权限
*/
String SSO_PERMISSION = SsoSystemEnum.KICC.getName() + ROLE;
/**
* 项目的license
*/

43
kicc-common/kicc-common-core/src/main/java/com/cloud/kicc/common/core/enums/SsoSystemEnum.java

@ -0,0 +1,43 @@ @@ -0,0 +1,43 @@
package com.cloud.kicc.common.core.enums;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
/**
*<p>
* sso系统枚举
*</p>
*
* @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;
}

29
kicc-common/kicc-common-data/src/main/java/com/cloud/kicc/common/data/entity/KiccUser.java

@ -1,5 +1,6 @@ @@ -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; @@ -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;
/**
*<p>
@ -15,41 +18,44 @@ import java.util.Collection; @@ -15,41 +18,44 @@ import java.util.Collection;
*</p>
*
* @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<String, Collection<? extends GrantedAuthority>> ssoPermissions = new ConcurrentHashMap<>(3);
/**
* 多租户ID
*/
@Getter
@Setter
private String tenantId;
@ -62,6 +68,7 @@ public class KiccUser extends User { @@ -62,6 +68,7 @@ public class KiccUser extends User {
this.phone = phone;
this.userType = userType;
this.tenantId = tenantId;
this.ssoPermissions.put(SecurityConstants.SSO_PERMISSION, authorities);
}
}

1
kicc-common/kicc-common-security/src/main/java/com/cloud/kicc/common/security/service/impl/KiccAppUserDetailsServiceImpl.java

@ -3,7 +3,6 @@ package com.cloud.kicc.common.security.service.impl; @@ -3,7 +3,6 @@ package com.cloud.kicc.common.security.service.impl;
import com.cloud.kicc.common.core.api.R;
import com.cloud.kicc.common.core.constant.SecurityConstants;
import com.cloud.kicc.common.data.entity.KiccUser;
import com.cloud.kicc.common.security.exception.SecurityCheckedException;
import com.cloud.kicc.common.security.service.KiccUserDetailsService;
import com.cloud.kicc.system.api.entity.User;
import com.cloud.kicc.system.api.feign.RemoteUserService;

Loading…
Cancel
Save