小编Mal*_*lys的帖子

Keycloak:针对特定资源的 2FA 保护

我想使用 2FA 保护高级别风险功能。过去,我们使用 2FA SMS。我想提出相同的功能,但理想情况下,我希望能够集成本地 Keycloak OTP 身份验证器(更安全)。这就是为什么基于 keycloak-sms-authenticator-sns https://github.com/nickpack/keycloak-sms-authenticator-sns> ,我改进了这个身份验证器(我将很快提出合并请求)。

我在 Keycloak 3.4.3 文档中进行了搜索,但使用相同的领域,我没有看到任何功能可以在最终用户想要访问特定资源时询问 2FA。角色机制允许管理访问(403 - 200),但它似乎没有涵盖我的用例。我不确定 UMA 2.0 是否可以提供此功能。此外,它还没有实施。保证水平似乎很好,但尚未实施,而且很难做到。

我可以在业务应用程序(JBoss 适配器)上包含一个 servlet 过滤器,以便在用户想要访问资源时将其路由到 2FA 身份验证器。但在这种情况下,我必须在 Keycloak 和 Java 适配器之间传播一个状态,以免每次访问都要求 2FA 代码。在集群模式(无状态服务)下可能有点棘手。

您有什么想法可以根据本机 keycloak 功能轻松涵盖此用例吗?如果情况并非如此,在您看来,最佳解决方案是什么(见上文)?(可维护性、集群支持和 2FA 技术不可知的最简单集成)

感谢您分享您的经验。

keycloak multi-factor-authentication

5
推荐指数
1
解决办法
3648
查看次数