Keycloak adding new authenticator(密钥罩添加新的验证码)
本文介绍了密钥罩添加新的验证码的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想在keyloak中添加一个新的auth方法。准确地说,我希望密钥罩向外部API请求一些特定值。我读过有关钥匙斗篷中的流程,但它们的记录似乎很少,而且我有一种感觉,它不是很直观。
在登录期间,我希望密钥罩向外部API发送请求,并且当且仅当返回特定值时才允许用户登录。例如,我可以覆盖一些登录方法,然后添加几行代码来做我想做的事情。
哪个类使用哪种方法负责登录?
推荐答案
要实现此目标,您需要执行多项操作。我会仔细检查一下:
- 实现Authenticator和AuthenticatorFactory接口。
- 复制现有身份验证流
- 绑定流
我假设您知道如何编写和部署密钥罩扩展。
1.实现Authenticator和AuthenticatorFactory接口。
具体接口为:
org.keycloak.authentication.AuthenticatorFactory
org.keycloak.authentication.Authenticator
示例实现:
org.keycloak.authentication.authenticators.browser.UsernamePasswordFormFactory
org.keycloak.authentication.authenticators.browser.UsernamePasswordForm
如果要外部化配置(以便可以为外部API添加用户名/密码等),请重写AuthenticatorFactory
getConfigProperties()
方法
2.复制现有身份验证流。
- 使用管理员凭据登录密钥罩。
- 创建新领域(如果有,请使用)
- 转到左侧的"身份验证"选项卡。
- 复制浏览器登录流程
- 添加您的流/执行(您的Authenticator/Factory实现将列在Executions下) 您可以向上或向下移动它们。使它们成为必需的或可供选择的等等。
- 如果覆盖配置列表,它将显示在您的执行旁边
3.绑定流。
在身份验证页面的第二个选项卡中绑定流。这篇关于密钥罩添加新的验证码的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:密钥罩添加新的验证码
基础教程推荐
猜你喜欢
- 如何使用 Eclipse 检查调试符号状态? 2022-01-01
- Spring Boot Freemarker从2.2.0升级失败 2022-01-01
- 如何使用 Stream 在集合中拆分奇数和偶数以及两者的总和 2022-01-01
- 如何强制对超级方法进行多态调用? 2022-01-01
- 由于对所需库 rt.jar 的限制,对类的访问限制? 2022-01-01
- Java 中保存最后 N 个元素的大小受限队列 2022-01-01
- 如何在不安装整个 WTP 包的情况下将 Tomcat 8 添加到 Eclipse Kepler 2022-01-01
- 在螺旋中写一个字符串 2022-01-01
- 如何对 HashSet 进行排序? 2022-01-01
- 首次使用 Hadoop,MapReduce Job 不运行 Reduce Phase 2022-01-01