View a markdown version of this page

Resource-based 政策 - Amazon 私有证书颁发机构
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Resource-based 政策

Resource-based 策略是您创建并手动附加到资源(在本例中为私有 CA)而不是用户身份或角色的权限策略。或者,与其创建自己的策略,不如使用 Amazon 托管策略 Amazon 私有 CA。通过 Amazon RAM 应用基于资源的策略, Amazon 私有 CA 管理员可以直接或通过 Amazon Organizations与其他 Amazon 账户中的用户共享对 CA 的访问权限。或者, Amazon 私有 CA 管理员可以使用 PCA API PutPolicyGetPolicy和或相应的 Amazon CLI 命令 p ut-policy DeletePolicy、get- policy 和 del ete-pol icy 来应用和管理基于资源的策略。

有关基于资源的策略的一般信息,请参阅Identity-Based策略和 Resource-Based 策略以及使用策略控制访问权限

要查看的基于资源的 Amazon 托管策略列表 Amazon 私有 CA,请导航到 Amazon Resource Access Manager 控制台中的托管权限库,然后搜索。CertificateAuthority与任何策略一样,在应用之前,我们建议在测试环境中应用该策略,以确保其符合您的要求。

Amazon 私有 CA 还支持 RAM 客户托管权限,允许您定义以下集合中的自定义操作组合:DescribeCertificateAuthorityGetCertificateGetCertificateAuthorityCertificateListPermissionsListTagsIssueCertificate、和RevokeCertificate。客户托管权限使您可以灵活地授予最低权限访问权限,例如,向某些账户授予只读访问权限,同时允许其他账户颁发和吊销证书。有关更多信息,请参阅 RAM 中的客户托管权限

Amazon Certificate Manager (ACM) 对私有 CA 具有跨账户共享访问权限的用户可以颁发由 CA 签署的托管证书。当您授予IssueCertificate操作权限时,可以通过向策略中添加acm-pca:TemplateArn条件来限制用于证书颁发的证书模板。

策略示例

本节提供了满足各种需求的跨账户策略示例。在所有情况下,都使用以下命令模式来应用策略:

$ aws acm-pca put-policy \ --region region \ --resource-arn arn:aws:acm-pca:us-east-1:111122223333:certificate-authority/11223344-1234-1122-2233-112233445566 \ --policy file:///[path]/policyN.json

除了指定 CA 的 ARN 之外,管理员还提供一个 Amazon 账户 ID 或一个将被授予对 CA 的访问权限的 Amazon Organizations ID。为了便于阅读,以下每项策略的 JSON 都被格式化为文件,但也可以作为内联 CLI 参数提供。

注意

必须严格遵循下面显示的基于 JSON 资源的策略的结构。客户只能配置委托人的 ID 字段( Amazon 账号或 Org Amazon anizations ID)和 CA ARN。

  1. 文件:policy1.json – 与不同账户中的用户共享对 CA 的访问权限

    555555555555替换为共享 CA 的 Amazon 账户 ID。

    对于资源 ARN,请用您自己的值替换以下内容:

    • aws-分 Amazon 区。例如,、awsaws-us-govaws-cn、等。

    • us-east-1-资源可用 Amazon 的地区,例如us-west-1

    • 111122223333-资源所有者的 Amazon 账户 ID。

    • 11223344-1234-1122-2233-112233445566-证书颁发机构的资源 ID。

    JSON
    { "Version":"2012-10-17", "Statement": [{ "Sid": "ExampleStatementID", "Effect": "Allow", "Principal": { "AWS": "555555555555" }, "Action": [ "acm-pca:DescribeCertificateAuthority", "acm-pca:GetCertificate", "acm-pca:GetCertificateAuthorityCertificate", "acm-pca:ListPermissions", "acm-pca:ListTags" ], "Resource": "arn:aws:acm-pca:us-east-1:123456789012:certificate-authority/CA_ID" }, { "Sid": "ExampleStatementID2", "Effect": "Allow", "Principal": { "AWS": "555555555555" }, "Action": [ "acm-pca:IssueCertificate" ], "Resource": "arn:aws:acm-pca:us-east-1:123456789012:certificate-authority/CA_ID", "Condition": { "StringEquals": { "acm-pca:TemplateArn": "arn:aws:acm-pca:::template/EndEntityCertificate/V1" } } } ] }
  2. 文件:policy2.json — 通过共享对 CA 的访问权限 Amazon Organizations

    o-a1b2c3d4z5替换为 Amazon Organizations 身份证。

    对于资源 ARN,请用您自己的值替换以下内容:

    • aws-分 Amazon 区。例如,、awsaws-us-govaws-cn、等。

    • us-east-1-资源可用 Amazon 的地区,例如us-west-1

    • 111122223333-资源所有者的 Amazon 账户 ID。

    • 11223344-1234-1122-2233-112233445566-证书颁发机构的资源 ID。

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Sid": "ExampleStatementID3", "Effect": "Allow", "Principal": "*", "Action": "acm-pca:IssueCertificate", "Resource":"arn:aws:acm-pca:us-east-1:123456789012:certificate-authority/CA_ID", "Condition": { "StringEquals": { "acm-pca:TemplateArn": "arn:aws:acm-pca:::template/EndEntityCertificate/V1", "aws:PrincipalOrgID": "o-a1b2c3d4z5" }, "StringNotEquals": { "aws:PrincipalAccount": "111122223333" } } }, { "Sid": "ExampleStatementID4", "Effect": "Allow", "Principal": "*", "Action": [ "acm-pca:DescribeCertificateAuthority", "acm-pca:GetCertificate", "acm-pca:GetCertificateAuthorityCertificate", "acm-pca:ListPermissions", "acm-pca:ListTags" ], "Resource":"arn:aws:acm-pca:us-east-1:123456789012:certificate-authority/CA_ID", "Condition": { "StringEquals": { "aws:PrincipalOrgID": "o-a1b2c3d4z5" }, "StringNotEquals": { "aws:PrincipalAccount": "111122223333" } } } ] }