18.2. 启用 PKI 身份验证
如果使用企业证书颁发机构(CA)进行身份验证,您可以配置 Red Hat Advanced Cluster Security for Kubernetes (RHACS)来使用个人证书验证用户。
配置 PKI 身份验证后,用户和 API 客户端可以使用其个人证书登录。没有证书的用户仍然可以使用其他身份验证选项,包括 API 令牌、本地管理员密码或其他身份验证供应商。PKI 身份验证在 Web UI、gRPC 和 REST API 相同的端口号上提供。
当您配置 PKI 身份验证时,默认情况下,Red Hat Advanced Cluster Security for Kubernetes 会使用相同的端口用于 PKI、Web UI、gRPC、其他单点登录(SSO)供应商和 REST API。您还可以使用 YAML 配置文件配置和公开端点,为 PKI 身份验证配置单独的端口。
18.2.1. 使用 RHACS 门户配置 PKI 身份验证
您可以使用 RHACS 门户配置公钥基础架构(PKI)身份验证。
流程
-
在 RHACS 门户中,进入 Platform Configuration
Access Control。 - 单击 Create Auth Provider,然后从下拉列表中选择 User Certificates。
- 在 Name 字段中,指定此身份验证提供程序的名称。
- 在 CA 证书(PEM) 字段中,以 PEM 格式粘贴您的 root CA 证书。
为使用 PKI 身份验证访问 RHACS 的用户分配 最小访问权限角色。用户必须具有授予此角色的权限或具有较高权限的角色才能登录到 RHACS。
提示为安全起见,红帽建议在完成设置时 将最小访问角色设置为 None。之后,您可以返回到 Access Control 页面,以根据身份提供程序中的用户元数据设置更为定制的访问规则。
要为访问 RHACS 的用户和组添加访问规则,请点击 Rules 部分中的 Add new rule。例如,要为名为
administrator
的用户提供 Admin 角色,您可以使用以下键值对创建访问规则:键
值
名称
Administrator
角色
Admin
- 点 Save。
18.2.2. 使用 roxctl
CLI 配置 PKI 身份验证
您可以使用 roxctl
CLI 配置 PKI 身份验证。
流程
运行以下命令:
$ roxctl -e <hostname>:<port_number> central userpki create -c <ca_certificate_file> -r <default_role_name> <provider_name>
18.2.3. 更新身份验证密钥和证书
您可以使用 RHACS 门户更新身份验证密钥和证书。
流程
- 创建新的身份验证提供程序。
- 将角色从旧身份验证提供程序复制到新的身份验证提供程序。
- 使用旧的 root CA 密钥重命名或删除旧的身份验证供应商。
18.2.4. 使用客户端证书登录
配置 PKI 身份验证后,用户在 RHACS 门户登录页面中看到证书提示。只有在用户的系统中安装了由配置的 root CA 信任的客户端证书时,提示符才会显示。
使用本节中描述的流程使用客户端证书登录。
流程
- 打开 RHACS 门户。
- 在浏览器提示符中选择证书。
- 在登录页面中,选择身份验证供应商名称选项以使用证书登录。如果您不想使用证书登录,也可以使用管理员密码或其他登录方法登录。
使用客户端证书登录到 RHACS 门户后,除非您重启浏览器,否则您无法使用其他证书登录。