设置凭据策略

更新时间:
复制为 MD 格式

您可以在凭据策略中添加或删除 RAM 用户、RAM 角色,以设置凭据的管理员和使用者。本文介绍如何设置凭据策略。

通过控制台设置

  1. 登录密钥管理服务控制台,在顶部菜单栏选择地域后,在左侧导航栏单击资源 > 凭据管理

  2. 凭据管理页签,定位到您的目标凭据,单击凭据 ID 或操作列的详情

  3. 在详情页面下方的凭据策略区域,单击设置凭据策略,完成设置后单击确定

    1. 图形编辑:此模式下授权主体(RAM 用户或 RAM 角色),使用默认策略权限(Action)

      • 管理员:对凭据进行管控类操作,不支持获取凭据值操作。支持选择当前主账号下的 RAM 用户和 RAM 角色。

      • 使用者:仅支持获取凭据值操作。支持选择当前主账号下的 RAM 用户和 RAM 角色。

      • 其他账号使用者

        重要
        • 如果授权给其他阿里云账号下的 RAM 用户、RAM 角色,将消耗 KMS 实例的访问管理数量配额,按阿里云账号个数计算消耗的配额。取消授权后,约 5 分钟后,返还配额。

        • 需同时在 RAM 控制台为其用户/角色配置相应的凭据使用权限,才能正常使用。具体操作,请参见密钥管理服务自定义权限策略参考RAM用户授权管理RAM角色的权限

        • 可以是其他阿里云账号的 RAM 用户或 RAM 角色,仅支持获取凭据值操作。

        • 单击添加其他账号使用者ARN,填写授权主体的 ARN,可登录RAM 控制台,在用户或角色详情页获取 ARN 信息。

          • RAM 用户:格式为acs:ram::<其他阿里云账号 userId>:user/<ramuser>,例如acs:ram::119285303511****:user/testpolicyuser

          • RAM 角色:格式为acs:ram::<其他阿里云账号 userId>:role/<ramrole>,例如acs:ram::119285303511****:role/testpolicyrole

    2. 语法编辑:可在语法编辑框中,直接修改或新增权限策略,配置示例如下。

      • 场景说明:为阿里云账号(119285303511****)下的凭据设置凭据策略为例。

        • 允许当前阿里云账号(119285303511****)对该凭据的完全访问权限,即管理和使用凭据,不建议修改。

          说明

          系统默认凭据拥有者拥有全部权限,不可修改规则。

        • 允许当前阿里云账号(119285303511****)下的 RAM 用户(secret_ramuser1)管理凭据。

        • 允许当前阿里云账号(119285303511****)下的 RAM 用户(secret_ramuser2)、其他阿里云账号(190325303126****)下的 RAM 用户(secret_ramuser3)使用凭据。

      • 语法示例

        {
            "Statement": [
                {
                    "Action": [
                        "kms:*"
                    ],
                    "Effect": "Allow",
                    "Principal": {
                        "RAM": [
                            "acs:ram::119285303511****:*"
                        ]
                    },
                    "Resource": [
                        "*"
                    ],
                    "Sid": "kms default secret policy"
                },
                {
                    "Action": [
                        "kms:List*",
                        "kms:Describe*",
                        "kms:PutSecretValue",
                        "kms:Update*",
                        "kms:DeleteSecret",
                        "kms:RestoreSecret",
                        "kms:RotateSecret",
                        "kms:TagResource",
                        "kms:UntagResource"
                    ],
                    "Effect": "Allow",
                    "Principal": {
                        "RAM": [
                            "acs:ram::119285303511****:user/secret_ramuser1"
                        ]
                    },
                    "Resource": [
                        "*"
                    ]
                },
                {
                    "Action": [
                        "kms:List*",
                        "kms:Describe*",
                        "kms:GetSecretValue"
                    ],
                    "Effect": "Allow",
                    "Principal": {
                        "RAM": [
                            "acs:ram::119285303511****:user/secret_ramuser2",
                            "acs:ram::190325303126****:user/secret_ramuser3"
                        ]
                    },
                    "Resource": [
                        "*"
                    ]
                }
            ],
            "Version": "1"
        }

使用限制

  • KMS实例中的凭据支持设置凭据策略。

  • 凭据策略的内容长度不超过32768个字节,且为JSON格式。

  • 凭据策略中可以设置的操作列表如下:

    警告

    如果设置了列表外的操作,设置后也不会生效。

    "Action": [
                    "kms:List*",
                    "kms:Describe*",
                    "kms:PutSecretValue",
                    "kms:Update*",
                    "kms:DeleteSecret",
                    "kms:RestoreSecret",
                    "kms:RotateSecret",
                    "kms:TagResource",
                    "kms:UntagResource"
                    "kms:GetSecretValue"
                ]
  • 跨账号凭据授权:若需要授权其他阿里云账号下的 RAM 用户或 RAM 角色使用当前账号下的 KMS 凭据时,需要进行双向授权配置:

    1. 在 KMS 控制台设置凭据策略,授予目标账号使用权限。即需添加授权主体为其他账号使用者的凭据策略。

    2. 目标账号需在 RAM 控制台为其用户/角色配置相应的凭据使用权限。

默认策略权限(Action)

管理员

对凭据进行管控类操作,不支持获取凭据值操作。

  "Action": [
                "kms:List*",
                "kms:Describe*",
                "kms:PutSecretValue",
                "kms:Update*",
                "kms:DeleteSecret",
                "kms:RestoreSecret",
                "kms:RotateSecret",
                "kms:TagResource",
                "kms:UntagResource"
            ]

使用者/其他账号使用者

仅支持获取凭据值操作。

 "Action": [
                "kms:List*",
                "kms:Describe*",
                "kms:GetSecretValue"
            ]