keycloak - Keycloak 在登录过程中添加动态用户会话注释
问题描述
我是 Keycloak 的新手,并尝试自定义登录阶段以将动态参数添加为用户会话注释。
在遗留系统中,用户使用用户名、密码和附加参数登录——我们称之为动态参数。这个动态参数在每个用户登录时可能不同,并且取决于用户。当用户向服务发送请求时,它被用于安全检查。
当迁移到 Keycloak 时,我试图找到一种在登录阶段添加动态参数的方法,因此当使用令牌向服务发送请求时,服务可以检索该动态参数并执行安全检查。我没有设法找到一种方法来很好地利用 Keycloak 当前的功能。
是否可以沿 UsernamePasswordForm 添加任何执行流程来实现此目的?
我发现的最接近的事情是暗示 Authenticator 自我开发的线程:
解决方案
最后,我通过实现 Authenticator 和 AuthenticatorFactory 创建了将动态参数作为用户会话注释的自定义身份验证器。以下如何创建自定义身份验证器。
推荐阅读
- javascript - Javascript Selenium Webdriver 循环、文件保存和承诺
- asp.net-mvc - 使用 EF 异常更新实体
- arrays - 如何将外部数组元素存储到 JOLT 中的数组中?
- wildfly-swarm - 将最大线程参数设置为 Thorntail JBeret 分数
- django - 非默认数据库的 Django Admin“添加”失败
- asp.net-mvc - ASP OpenID Connect:错误请求,请求太长
- javascript - 将 sdk.rest multiretrieve 传递给 Promise
- ssrs-subscription - 编辑订阅时出现 rsElementTypeMismatch 错误
- c++ - 在非 constexpr 函数上添加的 constexpr 限定符不会触发任何警告
- go - 如何在 Golang 中复制结构?