# 自定义密码强度和默认密码
# 背景&需求(接着是二号标题)
1、当前系统密码强度不满足客户需求,可以通过spi的方式自定义密码强度 2、当前系统的默认密码不符合客户要求,可以通过spi的方式自定义默认密码
# 依赖服务
用户中心(ctp-user)
# 版本要求
自定义密码强度:ctp-user 版本5.0.3+ 自定义默认密码:ctp-user版本5.3+
# 操作步骤&解决方案
# 步骤一:
客开工程依赖ctp-user-api jar包
# 步骤二:
客开实现方法:
public interface PasswordCheckService {
/**
* 方法类型
*
* @return 方法类型集合
*/
default List<PasswordMethodTypeEnum> getMethodType() {
return Lists.newArrayList(PasswordMethodTypeEnum.CHECK_STRENGTH);
};
/**
* 密码强度校验
* @param password
* @return
*/
default Boolean checkPasswordStrength(String password) {
return Boolean.TRUE;
}
/**
* 自定义初始化密码
*
* @param userDto 用户信息
* @param password 原始密码
* @return
*/
default String customInitPassword(CtpUserSpiUserDto userDto, String password) {
return password;
}
}
getMethodType说明执行的功能,如果只执行密码强度,则返回Lists.newArrayList(PasswordMethodTypeEnum.CHECK_STRENGTH);如果既要执行密码强度,又要执行自定义初始化密码,则返回Lists.newArrayList(PasswordMethodTypeEnum.CHECK_STRENGTH, PasswordMethodTypeEnum.INIT_PASS)
# 自定义密码规则
实现checkPasswordStrength 方法,判断传入的password是否符合客户自定义的密码规则,如果符合,就返回true,不符合就返回false ***注意:***如果一旦配置自定义的密码规则,通过系统管理员配置的密码规则不会再生效,完全以客开规则为准
# 自定义初始化密码:
实现customInitPassword 方法,自定义初始化密码,返回自定义后的初始化密码 ***注意:***如果一旦配置自定义的初始化密码,通过系统管理员配置的初始密码不会再生效,并且也不会受是否启用初始化密码开关控制,完全以自定义的为准
# 步骤三:
打包好后在nacos ctp-user中配置插件
seeyon:
spi:
enable: true
spi-plugins:
- oss:com.seeyon,xxxx,5.0.xxx
# 步骤四:
重启用户中心
编撰人:liuxiong
← 登录前门户 选人组件-页签扩展方案 →