我正在开发一个使用Keycloak平台的新项目。我想找到一种方法在身份验证选项卡中添加自定义密码策略。我想添加一个带有黑名单单词的字典,这些单词不能包含在用户的密码中
例如,从黑名单字典中,单词“测试”应该阻止所有包含“测试”内行“123testing@123”的密码,…等等
此外,我有密码策略的多种要求,可以通过Keycloak在密码策略下拉菜单中提供的选项来完成。我在一些论坛上发现,我必须创建自己的身份验证SPI但我可以找到任何解释如何一步一步(从头开始)实现这一点的留档。
要实现SPI,您需要实现它的ProviderFactory和Provider接口。您还需要创建一个服务配置文件。
对于密码策略-您需要实现PasswordPolicyProviderFactory.java并且实现将在CustomPasswordPoliceProviderClass中实现PasswordPolicyProvider.java类。
通过这种方式,您应该能够在keycloak中注册此策略,并且可以在领域UI中进行配置