8.4. Kerberos


Red Hat Single Sign-On 支持通过 Simple 和 Protected GSSAPI Negotiation Mechanism (SPNEGO)协议进行 Kerberos 票据登录。SPNEGO 在用户进行身份验证后通过 Web 浏览器进行透明验证。对于非 Web 情况,或在登录过程中无法使用一个 ticket,Red Hat Single Sign-On 支持使用 Kerberos 用户名和密码登录。

Web 身份验证的典型用例如下:

  1. 用户登录桌面。
  2. 用户使用浏览器访问由 Red Hat Single Sign-On 保护的 Web 应用。
  3. 应用重定向到 Red Hat Single Sign-On 登录。
  4. Red Hat Single Sign-On 会呈现 HTML 登录屏幕,状态为 401 和 HTTP 标头 WWW-Authenticate: Negotiate
  5. 如果浏览器有来自桌面登录的 Kerberos 票据,浏览器会将桌面登录信息传送到标题 授权中的 Red Hat Sign-On: Negotiate 'spnego-token'。否则,它会显示标准登录屏幕,用户输入登录凭证。
  6. Red Hat Single Sign-On 从浏览器中验证令牌并验证用户。
  7. 如果将 LDAPFederationProvider 与 Kerberos 验证支持搭配使用,红帽单点登录从 LDAP 中置备用户数据。如果使用 KerberosFederationProvider,Red Hat Single Sign-On 允许用户更新配置集并预先填充登录数据。
  8. 红帽单点登录返回应用程序。Red Hat Single Sign-On,应用程序通过 OpenID Connect 或 SAML 消息进行通信。红帽单点登录充当 Kerberos/SPNEGO 登录的代理。因此,应用程序会隐藏通过 Kerberos 进行 Red Hat Single Sign-On 验证。

执行以下步骤设置 Kerberos 身份验证:

  1. Kerberos 服务器的设置和配置。
  2. Red Hat Single Sign-On 服务器的设置和配置。
  3. 客户端机器的设置和配置。

8.4.1. Kerberos 服务器设置

设置 Kerberos 服务器的步骤取决于操作系统(OS)和 Kerberos 供应商。有关设置和配置 Kerberos 服务器的说明,请参阅 Windows Active Directory、MIT Kerberos 和您的 OS 文档。

在设置过程中,执行以下步骤:

  1. 在 Kerberos 数据库中添加一些用户主体。您还可以将 Kerberos 与 LDAP 集成,以便从 LDAP 服务器置备用户帐户。
  2. 为 "HTTP" 服务添加服务主体。例如,如果 Red Hat Single Sign-On 服务器在 www.mydomain.org 上运行,请添加服务主体 HTTP/www.mydomain.org@<kerberos realm>

    在 MIT Kerberos 中,您将运行"kadmin"会话。在带有 MIT Kerberos 的机器中,您可以使用以下命令:

sudo kadmin.local

然后,使用命令添加 HTTP 主体并将其密钥导出到 keytab 文件中,例如:

addprinc -randkey HTTP/www.mydomain.org@MYDOMAIN.ORG
ktadd -k /tmp/http.keytab HTTP/www.mydomain.org@MYDOMAIN.ORG

在运行 Red Hat Single Sign-On 的主机上,确保 keytab 文件 /tmp/http.keytab 可访问。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.