如何在 Keycloak 中禁用用户名和密码表单并提供在多个 IDP 之间进行选择的选项

Uda*_*ddy 7 keycloak

keycloak 中的领域配置了多个 IDP,例如 Azure、Okta、Google 等。但是不需要用户名和密码。

在浏览器身份验证流程中,如果我禁用表单而不是“替代”,登录页面将显示“无效的用户名或密码”

请注意,我希望登录页面中显示多个 IDP 按钮,而无需用户名和密码登录表单。

keycloak 文档中对此没有太多记录。

GGG*_*rce 0

您可以使用自定义身份验证提供程序来实现您的目标。

  1. 指示 Keycloak 为来自 IDP 的所有用户分配特定的用户属性。
  2. 构建一个身份验证提供程序来检查该用户属性并拒绝访问。
  3. 将身份验证提供程序添加到浏览器登录流程中。
  4. 创建新主题并调整模板文件以隐藏登录字段,并在用户执行步骤 2 失败时显示用户友好的错误。仅在相关领域使用主题。

更多详细信息请参见:https://groups.google.com/g/keycloak-user/c/N9cuqXIBrSA/m/sycLxTZbCAAJ