2.3. 配置访问权限
Red Hat Advanced Cluster Security for Kubernetes 提供了一个命令行界面(CLI) roxctl
,它可以轻松地将 Red Hat Advanced Cluster Security for Kubernetes 策略集成到构建管道中。roxctl
CLI 会打印有关问题的详细信息以及如何修复它们,以便开发人员可以在容器生命周期的早期阶段维护高标准。
要安全地向 Red Hat Advanced Cluster Security for Kubernetes API 服务器进行身份验证,您必须创建 API 令牌。
2.3.1. 使用 roxctl CLI 进行身份验证 复制链接链接已复制到粘贴板!
为进行身份验证,您可以使用身份验证令牌或管理员密码。红帽建议在生产环境中使用身份验证令牌,因为每个令牌被分配了特定的访问控制权限。
使用以下步骤生成身份验证令牌。
流程
- 导航到 RHACS 门户。
-
进入 Platform Configuration
Integrations。 - 向下滚动到 Authentication Tokens 类别,然后点 API Token。
- 点 Generate Token。
- 输入令牌的名称,再选择提供所需访问级别的角色(如 持续集成 或 Sensor Creator)。
点 Generate。
重要复制生成的令牌,并安全地存储它。您将无法再次查看它。
生成身份验证令牌后,将其导出为 ROX_API_TOKEN
变量:
export ROX_API_TOKEN=<api_token>
$ export ROX_API_TOKEN=<api_token>
您也可以将令牌保存到文件中,并将它与 --token-file
选项搭配使用。例如:
roxctl central debug dump --token-file <token_file>
$ roxctl central debug dump --token-file <token_file>
-
您不能同时使用
-password
(-p
)和--token-file
选项。 -
如果您已经设置了
ROX_API_TOKEN
变量,并指定--token-file
选项,则roxctl
CLI 会使用指定的令牌文件进行身份验证。 -
如果您已经设置了
ROX_API_TOKEN
变量并指定--password
选项,则roxctl
CLI 将使用指定的密码进行验证。
2.3.2. 通过下载二进制文件安装 roxctl CLI 复制链接链接已复制到粘贴板!
您可以通过命令行界面安装 roxctl
CLI 与 Red Hat Advanced Cluster Security for Kubernetes 交互。您可以在 Linux、Windows 或 macOS 上安装 roxctl
。
2.3.2.1. 在 Linux 中安装 roxctl CLI 复制链接链接已复制到粘贴板!
您可以按照以下流程在 Linux 上安装 roxctl
CLI 二进制文件。
流程
下载
roxctl
CLI 的最新版本:curl -O https://mirror.openshift.com/pub/rhacs/assets/3.72.3/bin/Linux/roxctl
$ curl -O https://mirror.openshift.com/pub/rhacs/assets/3.72.3/bin/Linux/roxctl
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使
roxctl
二进制文件可执行:chmod +x roxctl
$ chmod +x roxctl
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
roxctl
二进制文件放到PATH
中的目录中:要查看您的
PATH
,请执行以下命令:echo $PATH
$ echo $PATH
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
验证您已安装的
roxctl
版本:roxctl version
$ roxctl version
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.3.2.2. 在 macOS 上安装 roxctl CLI 复制链接链接已复制到粘贴板!
您可以按照以下流程在 macOS 中安装 roxctl
CLI 二进制文件。
流程
下载
roxctl
CLI 的最新版本:curl -O https://mirror.openshift.com/pub/rhacs/assets/3.72.3/bin/Darwin/roxctl
$ curl -O https://mirror.openshift.com/pub/rhacs/assets/3.72.3/bin/Darwin/roxctl
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 从二进制文件中删除所有扩展属性:
xattr -c roxctl
$ xattr -c roxctl
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使
roxctl
二进制文件可执行:chmod +x roxctl
$ chmod +x roxctl
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
roxctl
二进制文件放到PATH
中的目录中:要查看您的
PATH
,请执行以下命令:echo $PATH
$ echo $PATH
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
验证您已安装的
roxctl
版本:roxctl version
$ roxctl version
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.3.2.3. 在 Windows 上安装 roxctl CLI 复制链接链接已复制到粘贴板!
您可以按照以下流程在 Windows 上安装 roxctl
CLI 二进制文件。
流程
下载
roxctl
CLI 的最新版本:curl -O https://mirror.openshift.com/pub/rhacs/assets/3.72.3/bin/Windows/roxctl.exe
$ curl -O https://mirror.openshift.com/pub/rhacs/assets/3.72.3/bin/Windows/roxctl.exe
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
验证您已安装的
roxctl
版本:roxctl version
$ roxctl version
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.3.3. 从容器运行 roxctl CLI 复制链接链接已复制到粘贴板!
roxctl
客户端是 Red Hat Advanced Cluster Security for Kubernetes roxctl
镜像的默认入口点。在容器镜像中运行 roxctl
客户端:
前提条件
- 您必须首先从 RHACS 门户生成身份验证令牌。
流程
登录到
registry.redhat.io
registry。docker login registry.redhat.io
$ docker login registry.redhat.io
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为
roxctl
CLI 拉取最新的容器镜像。docker pull registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8:3.72.3
$ docker pull registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8:3.72.3
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
安装 CLI 后,您可以使用以下命令运行它:
docker run -e ROX_API_TOKEN=$ROX_API_TOKEN \ -it registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8:3.72.3 \ -e $ROX_CENTRAL_ADDRESS <command>
$ docker run -e ROX_API_TOKEN=$ROX_API_TOKEN \
-it registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8:3.72.3 \
-e $ROX_CENTRAL_ADDRESS <command>
验证
验证您已安装的
roxctl
版本。docker run -it registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8:3.72.3 version
$ docker run -it registry.redhat.io/advanced-cluster-security/rhacs-roxctl-rhel8:3.72.3 version
Copy to Clipboard Copied! Toggle word wrap Toggle overflow