我有一个 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/