8.3.3. 创建无密码浏览器登录流程


为了说明流程的创建,本节描述了创建高级浏览器登录流。此流程的目的是允许用户选择使用无密码的 WebAuthn 登录,或使用密码和 OTP 进行双因素身份验证。

流程

  1. 在菜单中,单击 Authentication
  2. Flows 选项卡。
  3. 单击 New
  4. 输入浏览器密码 作为别名。
  5. Save
  6. 单击 Add execution
  7. 从下拉列表中选择 Cookie
  8. Save
  9. 单击 Cookie 身份验证类型的替代选择,以将其要求设置为替代方案。
  10. 单击 Add execution
  11. 从下拉列表中选择 Kerberos
  12. 单击 Add execution
  13. 从下拉列表中选择 Identity Provider Redirector
  14. Save
  15. 单击 Identity Provider Redirector 身份验证类型的替代选择,以将其要求设置为替代方案。
  16. Add flow
  17. 输入 Forms 作为别名。
  18. Save
  19. 点击 Forms 身份验证类型的替代选择,以将其要求设置为替代方案。

    浏览器流的常用部分

    Passwordless browser login common

  20. Actions for the *Forms 执行。
  21. 选择 Add execute
  22. 从下拉列表中选择 Username Form
  23. Save
  24. 单击 Username Form authentication type 所需的 Required,以将其要求设置为 required。

在这个阶段,表单需要用户名,但没有密码。我们必须启用密码验证来避免安全风险。

  1. Forms 子流的 Actions
  2. Add flow
  3. 输入 Authentication 作为别名。
  4. Save
  5. 单击 Authentication 身份验证类型的必需,以设置其要求。
  6. Authentication 子流的 Actions
  7. 单击 Add execution
  8. 从下拉列表中选择 Webauthn Passwordless Authenticator
  9. Save
  10. 点击 Webauthn Passwordent icator 身份验证类型的替代选择。
  11. Authentication 子流的 Actions
  12. Add flow
  13. 使用 OTP 作为别名输入 Password
  14. Save
  15. 点击 OTP 身份验证类型 的替代方案,将其要求设置为替代方案。
  16. 带有 OTP 子流的密码Actions
  17. 单击 Add execution
  18. 从下拉列表中选择 Password Form
  19. Save
  20. 单击 Password Form authentication type 所需,以将其要求设置为必填。
  21. 带有 OTP 子流的密码Actions
  22. 单击 Add execution
  23. 从下拉列表中选择 OTP Form
  24. Save
  25. 点击 OTP Form 身份验证类型所需的设置要求。

最后,更改绑定。

  1. 单击 Bindings 选项卡。
  2. 点击 Browser Flow 下拉列表。
  3. 从下拉列表中选择 Browser Password-less
  4. Save

免密码浏览器登录

Passwordless browser login

输入用户名后,流程如下:

如果用户记录了 WebAuthn无密码的凭证,他们可以使用这些凭证直接登录。这是无密码登录。用户还可以使用 OTP 选择 Password,因为 WebAuthn Passwordless execution 和 使用 OTP 流的 Password 设置为 alternatives。如果将其设定为 Required,则用户必须输入 WebAuthn、password 和 OTP。

如果用户选择使用 WebAuthn 免密码身份验证 的另一方式 链接,用户可以选择密码和安全密钥(WebAuthn无密码 密码 )。选择密码时,用户需要继续使用分配的 OTP 登录。如果用户没有 WebAuthn 凭证,用户必须输入密码,然后 OTP。如果用户没有 OTP 凭证,则会要求您记录它。

注意

由于 WebAuthn 免密码执行设定为 替代方案,而不是 必需的,因此这个流不会要求用户注册 WebAuthn 凭据。用户若要具有 Webauthn 凭据,管理员必须向用户添加所需的操作。为此:

  1. 在 realm 中启用 Webauthn Register Passwordless 必需操作(请参阅 WebAuthn 文档)。
  2. 使用用户凭据管理菜单的 Credential Reset 部分设置必要的操作。???

创建等高级流可能会产生副作用。例如,如果启用为用户重置密码的功能,可以通过密码表单访问此密码。在默认的 Reset Credentials 流中,用户必须输入其用户名。由于用户已在 浏览器式密码 流中之前输入了用户名,因此这个操作对于 Red Hat Single Sign-On 和 sub-optimal 对用户体验来说是不必要的。要解决这个问题,您可以:

  • 复制 重置凭据 流。将其名称设置为 "重置无密码"的凭据,例如:
  • Choose user execution 的 Actions 菜单中选择 Delete
  • Bindings 菜单中,将 reset credential 流从 Reset Credentials 更改为 Reset Credentials forless
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat