This documentation is for a release that is no longer maintained.
You can select a different version or view all RHACS documentation.2.3. 使用 roxctl CLI 进行身份验证
要进行身份验证,您可以使用 API 令牌、管理员密码或 roxctl central login 命令。
遵循以下准则来有效地使用 API 令牌:
- 在生产环境中使用 API 令牌以及持续集成 (CI)。每个令牌都被分配特定的访问权限,提供对它可以执行的操作的控制。此外,API 令牌不需要以交互的形式进行(例如通过浏览器进行登录),使其成为自动化流程的理想选择。这些令牌具有 1 年的生存时间 (TTL) 值,为无缝集成和操作效率提供更长的有效期。
- 仅使用管理员密码用于测试目的。不要在生产环境中使用它。
-
roxctl central login命令仅适用于交互式的本地使用。
2.3.1. 创建 API 令牌 复制链接链接已复制到粘贴板!
流程
-
在 RHACS 门户中,进入 Platform Configuration
Integrations。 - 滚动到 Authentication Tokens 类别,然后点 API Token。
- 点 Generate Token。
- 输入令牌的名称并选择提供所需访问级别的角色(例如: Continuous Integration 或 Sensor Creator)。
点 Generate。
重要复制生成的令牌并安全地存储它。您将无法再次查看它。
2.3.2. 导出并保存 API 令牌 复制链接链接已复制到粘贴板!
流程
生成身份验证令牌后,输入以下命令将其导出为
ROX_API_TOKEN变量:export ROX_API_TOKEN=<api_token>
$ export ROX_API_TOKEN=<api_token>Copy to Clipboard Copied! Toggle word wrap Toggle overflow (可选):您还可以将令牌保存到文件中,并通过输入以下命令将其与
--token-file选项一起使用:roxctl central debug dump --token-file <token_file>
$ roxctl central debug dump --token-file <token_file>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
请注意以下信息:
-
您不能同时使用
-password(-p) 和--token-file选项。 -
如果您已经设置了
ROX_API_TOKEN变量,并指定--token-file选项,roxctlCLI 会使用指定的令牌文件进行身份验证。 -
如果您已经设置了
ROX_API_TOKEN变量,并指定--password选项,roxctlCLI 将使用指定的密码进行身份验证。
2.3.3. 使用身份验证供应商与 roxctl 进行身份验证 复制链接链接已复制到粘贴板!
您可以在 Central 中配置身份验证供应商,并使用 roxctl CLI 启动登录过程。设置 ROX_ENDPOINT 变量,使用 roxctl central login 命令启动登录过程,在浏览器窗口中选择身份验证供应商,并从 roxctl CLI 检索令牌信息,如以下步骤所述。
前提条件
- 选择一个身份验证供应商,如带有片段或查询模式的 OpenID Connect (OIDC)。
流程
运行以下命令,将
ROX_ENDPOINT变量设置为 Central 主机名和端口:export ROX_ENDPOINT=<central_hostname:port>
export ROX_ENDPOINT=<central_hostname:port>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令,将登录过程启动到 Central:
roxctl central login
$ roxctl central loginCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
在
roxctlCLI 中,URL 包括在输出中,您会被重定向到一个浏览器窗口,您可以在其中选择您要使用的身份验证供应商。 使用您的身份验证供应商登录。
成功登录后,浏览器窗口表示身份验证成功,您可以关闭浏览器窗口。
roxctlCLI 会显示您的令牌信息,包括访问令牌、访问令牌的过期时间、刷新令牌(如果已发布),并通知这些值存储在本地。输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要确保将环境设置为确定存储配置的目录。默认情况下,配置存储在
$HOME/.roxctl/roxctl-config目录中。-
如果您设置了
$ROX_CONFIG_DIR环境变量,则配置存储在$ROX_CONFIG_DIR/roxctl-config目录中。这个选项具有最高优先级。 -
如果您设置了
$XDG_RUNTIME_DIR环境变量,并且未设置$ROX_CONFIG_DIR变量,则配置存储在$XDG_RUNTIME_DIR /roxctl-config目录中。 -
如果您没有设置
$ROX_CONFIG_DIR或$XDG_RUNTIME_DIR环境变量,则配置存储在$HOME/.roxctl/roxctl-config目录中。
-
如果您设置了