4.9. 使用红帽单点登录验证 OpenShift Cluster Manager CLI
为确保安全性,红帽建议使用带有 Red Hat Single Sign-On 的 ocm-cli
命令行工具,而不是使用离线令牌。OCM CLI (ocm)版本 v0.1.73 或更高版本支持单点登录授权。
离线身份验证令牌可持续几天、周、几个月,甚至永久使用。这个长生命跨度意味着网络认证可以有更多时间来发现特定的令牌并攻击帐户。另外,离线身份验证令牌通常由您的操作系统存储在您的设备上,这意味着计算机上的其他应用可以在未适当保护的情况下访问令牌。这些离线令牌长期存在,无法撤销。用户必须手动复制和粘贴它们,从而造成安全风险。
ocm-cli
工具目前是开发者预览。
开发者预览版本提供给一组有限的客户,用于评估该产品的早期版本,并将反馈集合回产品开发团队。在生产环境中不支持开发人员预览版本。如需更多信息,请参阅 开发人员预览支持范围。
虽然您仍然可以使用离线令牌登录到 Red Hat ocm-cli
工具,但您可以使用基于浏览器的单点登录(SSO)方法安全地登录 Red Hat ocm-cli 工具,它会自动向 CLI 实例发送一个对 10 小时有效的刷新令牌。由于此授权代码是唯一的且临时的,因此它是一个安全的身份验证方法。SSO 授权代码可让您访问您需要的任何 Red Hat OpenShift 服务,只需一个登录。
后续步骤
- 如果您的系统有 Web 浏览器,请按照 第 4.9.1 节 “使用 Red Hat Single Sign-On 授权代码登录到 OpenShift Cluster Manager CLI (ocm-cli)工具” 中的步骤使用 Red Hat Single Sign-On 进行身份验证。
- 如果您在没有 Web 浏览器的情况下使用容器、远程主机或其他环境,请按照 第 4.9.2 节 “使用红帽单点登录设备代码登录到 OpenShift Cluster Manager CLI” 中的步骤使用 Red Hat Single Sign-On 进行身份验证。
其他资源
-
有关使用
ocm-cli
工具管理集群的更多信息,请参阅使用 ocm-cli 在 OpenShift Cluster Manager 中管理集群。
4.9.1. 使用 Red Hat Single Sign-On 授权代码登录到 OpenShift Cluster Manager CLI (ocm-cli)工具
如果您的系统支持基于 Web 的浏览器,您可以使用 Red Hat Single Sign-On 授权代码而不是离线令牌登录到 OpenShift Cluster Manager CLI。
这个方法比使用离线令牌更安全。
先决条件
- 您有红帽帐户。
- 您有 OCM CLI (ocm)版本 v0.1.73 或更高版本。
- 您的系统安装了受支持的网页浏览器。有关支持的浏览器的信息,请点击 混合云控制台 底部的 浏览器支持。
流程
在终端窗口中输入以下命令:
ocm login --use-auth-code
此时会打开 Red Hat SSO 身份验证浏览器窗口。
- 使用您的红帽帐户凭证登录。
-
身份验证过程完成后,关闭登录窗口,再返回到终端窗口中的 CLI。CLI 显示消息
Login Successful
。现在,您可以使用ocm-cli
工具与所有 OpenShift Cluster Manager API 交互。
4.9.2. 使用红帽单点登录设备代码登录到 OpenShift Cluster Manager CLI
如果您在没有 Web 浏览器的情况下使用容器、远程主机和其他环境,您可以使用 Red Hat Single Sign-On 设备代码来保护身份验证。为此,请使用使用 Web 浏览器批准登录的第二个设备。
这个方法比使用离线令牌更安全。
先决条件
- 您有红帽帐户。
- 您有 OCM CLI (ocm)版本 v0.1.73 或更高版本。
- 您有一个第二个具有 Web 浏览器的设备。
流程
在您要验证的设备上的终端窗口中,输入以下命令:
ocm login --use-device-code
CLI 显示类似如下的消息,其中 <
DEVICE_CODE>
; 是唯一的身份验证代码:To login, navigate to https://sso.redhat.com/device on another device and enter code <DEVICE_CODE>. Checking status every 5 seconds…
-
在具有 Web 浏览器的设备上,导航至
https://sso.redhat.com/device
。 - 在 Device log in 窗口中,从 CLI 消息输入设备代码,然后单击 Submit。
-
在 Grant access to ocm-cli 窗口中,单击 Grant access。您的浏览器显示消息 Red Hat device login successful。现在,您可以使用
ocm-cli
工具与所有 OpenShift Cluster Manager API 交互。
验证
返回到您验证的设备上的终端,并确认 CLI 显示了此消息:
Login successful.
4.9.3. 离线令牌和自动化
使用红帽单点登录进行身份验证的新安全方法不会破坏依赖于离线令牌的现有自动化。要将离线令牌用于自动化或其他目的,您可以从 OpenShift Cluster Manager API Token 页面下载 OpenShift Cluster Manager API 令牌。使用 Service Accounts 页面中的服务帐户,用于自动化目的。
其他资源
- 有关机构服务帐户的更多信息,请参阅创建和管理服务帐户。