Keycloak:如何仅通过身份提供者登录

标签 keycloak identity provider broker

我有一个 Keycloak Broker 和 2 个身份提供者正在运行。目前,我在代理登录屏幕上看到了用户名和密码字段以及指向已配置身份提供者的 2 个链接。单击 IP 链接后,可以通过身份提供商登录。
我如何禁用/删除用户名/密码字段,因为我只想提供身份提供者来登录我的客户(无法直接通过代理登录)?

最佳答案

很少有开箱即用的功能可能会起作用。
如果您只需要一个默认 IdP,您可以为您的领域配置一个默认身份提供程序。这将绕过 Keycloak 登录页面并将用户直接重定向到身份提供者。更多信息:https://www.keycloak.org/docs/latest/server_admin/index.html#default_identity_provider
对于多个身份提供者,这不起作用 - 但您可以使用客户端建议的身份提供者功能 ( https://www.keycloak.org/docs/latest/server_admin/index.html#_client_suggested_idp )。通过在指向 Keycloak 登录页面的链接上添加 kc_idp_hint 查询字符串参数,它将绕过登录并直接转到该 IdP。在您的 Web 应用程序中,您可以为每个提供程序构建一组链接或按钮,并将 kc_idp_hint 添加到其中。然而,这不会阻止聪明的人仍然进入正常的 Keycloak 登录页面。
创建自己的登录主题可能是最直接的方法,但我想放弃这些选项,以防其他人发现它有用。

关于Keycloak:如何仅通过身份提供者登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63380196/

相关文章:

sqlite - 被解雇的 Dismissible 小部件仍然是 flutter 树的一部分

firebase - 将用户 uid 传递给 Flutter 中的 Firestore 流查询

java - 如何使用 Spring Boot/Keycloak 验证后端到后端

keycloak - 在 Keycloak 中,当 user2 尝试使用 IDP 登录页面登录时,如何自动注销(终止 session )user1?

java - Keycloak 无法使用服务帐户 token 获得具有权限的 RPT

java - 在 Java 中打印用于调试目的的唯一对象标识

asp.net - 我可以通过配置切换.Net 缓存提供程序吗

google-chrome - Keycloak:使用新的 Chrome SameSite/Secure cookie 强制执行 token 请求中缺少 session cookie

authentication - IdentityServer - 用于身份验证的 AD 和数据库中的其余部分

windows - 如何确定 Windows 计算机的身份?