我正在研究一个使用Keycloak平台的新项目。我想找到一种在“身份验证”选项卡中添加自定义密码策略的方法。 我想添加一个包含黑名单单词的字典,这些单词不能包含在用户密码中
例如,在黑名单字典中,单词“ testing”应阻止行“ 123testing @ 123”中包含“ testing”的所有密码,等等。
我还对密码策略有多种要求,可以使用密码策略下拉菜单中Keycloak提供的选项来完成。 我在某些论坛中发现必须创建自己的身份验证SPI,但是我可以找到任何文档(从头开始)逐步说明如何实现此目的。
答案 0 :(得分:1)
要实现SPI,您需要实现其ProviderFactory和Provider接口。您还需要创建服务配置文件。
对于密码策略-您需要实现PasswordPolicyProviderFactory.java,该实现将放入CustomPasswordPolicyProviderClass中,该类将实现PasswordPolicyProvider.java类。
这样,您应该可以在keycloak中注册此策略,并可以在领域UI中进行配置。 请参考合同-https://www.keycloak.org/docs/1.9/server_development_guide/topics/providers.html