钥匙斗篷 |如何添加自定义 keycloak 密码策略?

Posted

技术标签:

【中文标题】钥匙斗篷 |如何添加自定义 keycloak 密码策略?【英文标题】:Keycloak | How to add custom keycloak password policies? 【发布时间】:2019-09-07 09:35:39 【问题描述】:

我正在开发一个使用 Keycloak 平台的新项目。我想找到一种在身份验证选项卡中添加自定义密码策略的方法。 我想添加一个字典,其中包含不能包含在用户密码中的黑名单单词

例如,从黑名单字典中,单词“testing”应该阻止所有在“123testing@123”行内包含“testing”的密码,......等等

我还对密码策略有多种要求,可以通过 Keycloak 在密码策略下拉菜单中提供的选项来完成。 我在一些论坛中发现我必须创建自己的身份验证 SPI,但我可以找到任何解释逐步(从头开始)如何实现此目的的文档。

【问题讨论】:

【参考方案1】:

要实现 SPI,您需要实现它的 ProviderFactory 和 Provider 接口。您还需要创建一个服务配置文件。

对于密码策略 - 您需要实施 PasswordPolicyProviderFactory.java 并且实施将在 CustomPasswordPolicyProviderClass 中实现,该类将实施 PasswordPolicyProvider.java 类。

通过这种方式,您应该能够在 keycloak 中注册此策略,并可以在领域 UI 中进行配置。 请参阅此合同 - Service Provider Interfaces

【讨论】:

以上是关于钥匙斗篷 |如何添加自定义 keycloak 密码策略?的主要内容,如果未能解决你的问题,请参考以下文章

钥匙斗篷登录页面

钥匙斗篷。如何更改管理控制台域?

钥匙斗篷 |使用 Spring Security 的 OIDC 反向通道(单)注销

Keycloak |如何添加自定义密钥泄露密码策略?

通过 openresty 使用 keycloak 对 websocket 进行身份验证

如何使用嵌入式密钥斗篷进行完整导出(包括用户)