配置 IAM 政策
本页面介绍如何配置 Identity and Access Management (IAM) 政策,以便成员创建和管理 Certificate Authority Service 资源。如需详细了解 IAM ,请参阅 IAM 概览。
常规 IAM 政策
在 CA Service 中,您可以向用户或服务账号授予 IAM 角色,以便创建和管理 CA Service 资源。您可以在以下级别添加这些角色绑定:
- CA 池级别,用于管理对特定 CA 池以及该 CA 池中的 CA 的访问权限。
- 项目级或组织级,用于授予对该范围内的所有证书授权机构 (CA) 池的访问权限。
如果在更高级别的资源中授予角色,则角色会沿用。例如,在项目级被授予 Auditor (roles/privateca.auditor)
角色的用户能够查看项目下的所有资源。在证书授权机构 (CA) 池中设置的 IAM 政策由该 CA 池中的所有 CA 沿用。
不能对证书和 CA 资源授予 IAM 角色。
条件 IAM 政策
如果您有一个共享 CA 池,该池可能会被多个有权请求不同类型证书的用户使用,则可以定义 IAM 条件,以强制执行基于属性的访问权限控制,从而对 CA 池执行某些操作。
借助 IAM 条件角色绑定,您可以仅在满足指定条件时才授予对主账号的访问权限。例如,如果
Certificate Requester
角色绑定到 CA 池中的用户 alice@example.com,并且条件是
所请求的 DNS SAN 是 ['alice@example.com', 'bob@example.com'] 的子集,
那么该用户只有在所请求的 SAN 是这两个允许值之一时,才能从同一 CA 池请求证书。您可以使用通用表达式语言 (CEL) 表达式在 IAM 绑定中设置条件。这些条件可以帮助您进一步限制用户能够请求的证书类型。如需了解如何将 CEL 表达式用于 IAM 条件,请参阅
IAM 政策的通用表达式语言 (CEL) 方言。
准备工作
- 启用该 API。
- 按照任一快速入门中的说明创建 CA 和 CA 池。
- 了解可用于 Certificate Authority Service 的 IAM 角色。
在项目级配置 IAM 政策绑定
以下场景介绍了如何在项目级授予用户对 CA Service 资源的访问权限。
管理资源
CA Service Admin (roles/privateca.admin) 拥有管理所有 CA Service 资源的权限,并可以在 CA
池和证书模板中设置 IAM 政策。
如需在项目级向用户分配 CA Service Admin (roles/privateca.admin) 角色,请按照以下说明操作:
控制台
在 Google Cloud 控制台中,前往 IAM 页面。
选择项目。
点击 授予访问权限。
在新的主账号 字段中,输入主账号的电子邮件地址或其他标识符。
在选择角色 列表中,选择 CA Service Admin 角色。
点击保存 。
gcloud
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=