全部产品
Search
文档中心

密钥管理服务:凭据策略概述

更新时间:Jul 29, 2026

凭据策略是基于资源的策略,用于控制哪些阿里云账号、RAM用户、RAM角色有权限来管理或使用KMS凭据,KMS实例中的每个凭据必须有且只有一个凭据策略。本文介绍凭据策略的详细信息。

凭据策略与访问控制RAM的权限策略的关系

策略说明

凭据策略与 RAM 权限策略从不同维度控制对 KMS 凭据的访问权限。在凭据策略中添加 RAM 用户或 RAM 角色后,还可配置 RAM 权限策略,管理 RAM 用户或 RAM 角色已在 RAM 控制台配置了相应的 KMS 凭据操作权限。

权限判断优先级

image
  • 当前账号(凭据创建者账号)的 RAM 用户/角色

    • 判定原则:任一允许即可(OR 逻辑)。只要满足以下任意一个条件,且没有显式拒绝(Explicit Deny),即允许访问。

      说明

      关于Explicit Deny(显式拒绝)、Implicit Deny(隐式拒绝)的详细介绍,请参见权限策略判定流程

      • KMS 凭据策略中明确允许该用户/角色。

      • RAM 权限策略中明确允许该用户/角色。

    • 详细规则

      KMS 凭据策略(资源侧)

      RAM 权限策略(身份侧)

      判定结果

      Allow(允许)

      未配置

      Allow(允许)

      未配置

      Allow(允许)

      Allow(允许)

      Allow(允许)

      Allow(允许)

      Allow(允许)

      Allow(允许)

      Deny(拒绝)

      Deny(拒绝)

      Deny(拒绝)

      Allow(允许)

      Deny(拒绝)

      未配置

      未配置

      Deny(拒绝)

  • 其他账号的 RAM 用户/角色(跨账号)

    • 判定原则:必须同时允许(AND 逻辑)。必须同时满足以下两个条件,才允许访问。

      • KMS 凭据策略中明确允许该外部用户/角色(或外部账号)。

      • RAM 权限策略中明确允许该外部用户/角色调用 KMS 相关接口。

    • 详细规则

      KMS 凭据策略(资源侧)

      RAM 权限策略(身份侧)

      判定结果

      Allow(允许)

      Deny(拒绝)

      Deny(拒绝)

      Deny(拒绝)

      Allow(允许)

      Deny(拒绝)

      Allow(允许)

      Allow(允许)

      Allow(允许)

      未配置

      未配置

      Deny(拒绝)

注意事项

  • 仅KMS实例中的凭据支持凭据策略。您可在创建凭据时设置凭据策略,也可在创建后进行修改,具体请参见管理及使用凭据设置凭据策略

  • 如果您授权给其他阿里云账号下的RAM用户、RAM角色,会消耗KMS实例的访问管理数量配额,按阿里云账号个数计算消耗的配额。如果您后续取消跨账号的授权且该实例没有其他资源分享给此账号时,请等待约5分钟再查看配额,配额的消耗数量会相应减少。

  • 凭据策略仅适用于通过KMS服务Endpoint访问凭据时,对访问权限进行判定。如果您是通过KMS实例Endpoint访问凭据,是否能访问依赖于应用接入点AAP中配置的权限策略。

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

凭据策略说明

完整的凭据策略包含如下内容:

  • Version:凭据策略的版本,目前版本仅支持设置为1。

  • Statement:凭据策略的语句,每个凭据策略包含一个或多个语句。每个语句包含以下几个参数。

    • Sid

      可选,表示自定义的语句标识符。内容长度小于等于128字符,支持的字符为:大写英文字母(A-Z)、小写英文字母(a-z)、数字(0-9),特殊字符( _/+=.@-)。

    • Effect

      必选,表示是允许还是拒绝该策略语句中的权限。取值为:AllowDeny

    • Principal

      必选,表示权限策略的授权主体,支持设置为以下主体:

      • 当前阿里云账号,即凭据所属的阿里云账号。

      • 当前阿里云账号下的RAM用户、RAM角色。

      • 其他阿里云账号下的RAM用户、RAM角色。

        重要

        授权给其他阿里云账号下的RAM用户、RAM角色后,您仍需在访问控制RAM侧,使用该RAM用户、RAM角色的阿里云账号为其授权使用该凭据,RAM用户、RAM角色才能使用该凭据。

        具体操作,请参见凭据管理服务自定义权限策略参考管理RAM用户的权限管理RAM角色的权限

    • Action

      必选,表示要允许或拒绝的API操作,内容必须以"kms:"开头。操作权限列表的范围如下,如果您设置了列表外的操作,设置后也不会生效。

      权限列表

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

      必选,表示权限策略生效的目标资源。取值为*或凭据的 ARN。取值为*时表示本 KMS 凭据。您也可以指定具体的凭据 ARN 来限制策略的生效范围。

    • Condition

      可选,表示授权生效的限制条件。Condition元素也称为条件块(Condition Block),它是由一个或多个条件子句构成。一个条件子句由条件操作类型、条件关键字和条件值组成。详细信息,请参见权限策略基本元素

      格式为"Condition": {"condition operator": {"condition key": "condition value"}}

常见问题

如何查看凭据创建者?

  • 通过控制台:登录密钥管理服务控制台,在凭据管理页面,进入凭据详情页面,查看创建者

  • 通过 OpenAPI:调用DescribeSecret接口,响应消息中的Creator即创建者。