authentication - 钥匙斗篷 | 如何添加自定义 keycloak 密码策略?
问题描述
我正在开发一个使用 Keycloak 平台的新项目。我想找到一种在身份验证选项卡中添加自定义密码策略的方法。我想添加一个字典,其中包含不能包含在用户密码中的黑名单单词
例如,从黑名单字典中,单词“testing”应该阻止所有在“123testing@123”行内包含“testing”的密码,......等等
此外,我对密码策略有多种要求,可以使用 Keycloak 在密码策略下拉菜单中提供的选项来完成。我在一些论坛中发现我必须创建自己的身份验证 SPI,但我可以找到任何解释逐步(从头开始)如何实现此目的的文档。
解决方案
要实现 SPI,您需要实现它的 ProviderFactory 和 Provider 接口。您还需要创建一个服务配置文件。
对于密码策略 - 您需要实现 PasswordPolicyProviderFactory.java 并且实现将进入 CustomPasswordPolicyProviderClass ,它将实现 PasswordPolicyProvider.java 类。
这样,您应该能够在 keycloak 中注册此策略,并可以在领域 UI 中进行配置。请参阅此合同 -服务提供者接口
推荐阅读
- java - 对象 Web,访问具有静态方法的类
- ansible - 在ansible中是否有Docker的“别名”的等效标签?
- webpack - 配置一个或多个条目
- domain-driven-design - 在命令和事件中使用值对象?
- json - 尝试从来自弹性搜索的多个术语的查询中获得过滤后的响应
- jquery - Jquery Tooltip 显示两次
- elastic-stack - 设置 rsyslog 将日志发送到远程 syslogserver 但不发送到消息/syslog
- php - 为什么我从 jquery ajax 调用中得到 HTML 响应
- mysql - 根据几个“主日期”,找到另一个表中存储的最近的日期,数据相同但没有相同的ID
- angular - Accessing form Array values to display Mat Error