文档首页/ 统一身份认证服务 IAM_统一身份认证服务(新版)/ API参考/ API/ IAM/ 身份策略管理/ 为指定身份策略创建一个新版本 - CreatePolicyVersionV5
更新时间:2026-05-14 GMT+08:00
分享

为指定身份策略创建一个新版本 - CreatePolicyVersionV5

功能介绍

该接口可以用于为指定身份策略创建一个新版本。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

授权信息

账号根用户具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备如下身份策略权限,更多的权限说明请参见权限和授权项

授权项

访问级别

资源类型(*为必须)

条件键

别名

依赖的授权项

iam:policies:createVersionV5

Permission_management

policy *

-

-

-

URI

POST /v5/policies/{policy_id}/versions

表1 路径参数

参数

是否必选

参数类型

描述

policy_id

String

参数解释

身份策略ID。

约束限制

长度为1到64个字符,只包含字母、数字和"-"的字符串。

取值范围

不涉及。

默认取值

不涉及。

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

policy_document

String

参数解释

自定义身份策略或系统预置身份策略的策略文档的json格式。

约束限制

下面的字符= < > ( ) |是语法中的特殊字符,不包含在身份策略中。

问号?表示元素是可选的。例如sid_block?

竖线|表示可选项,括号定义了可选项的范围。例如("Allow" | "Deny")

当一个元素允许多个值时,使用重复值,以及...表示。例如[ <policy_statement>, <policy_statement>, ... ]

下面的递归文法描述了身份策略的语法:

policy = {
  <version_block>,
  <statement_block>
}

<version_block> = "Version" : ("5.0")

<statement_block> = "Statement" : [ <policy_statement>, <policy_statement>, ... ]

<policy_statement> = {
  <sid_block?>,
  <effect_block>,
  <action_block>,
  <resource_block?>,
  <condition_block?>
}

<sid_block> = "Sid" : <sid_string>

<effect_block> = "Effect" : ("Allow" | "Deny")

<action_block> = ("Action" | "NotAction") : [ <action_string>, <action_string>, ... ]

<resource_block> = ("Resource" | "NotResource") : [ <resource_string>, <resource_string>, ... ]

<condition_block> = "Condition" : { <condition_map> }

<condition_map> = {
  <condition_type_string> : { <condition_key_string> : <condition_value_list> },
  <condition_type_string> : { <condition_key_string> : <condition_value_list> },
  ...
}

<condition_value_list> = ( <condition_value> | [ <condition_value>, <condition_value>, ... ] )

<condition_value> = "string"

取值范围

不涉及。

默认取值

不涉及。

set_as_default

Boolean

参数解释

是否设置为默认版本。

约束限制

不涉及。

取值范围

取值范围为[true,false]。

默认取值

默认值false。

响应参数

状态码:201

表3 响应Body参数

参数

参数类型

描述

policy_version

policy_version object

参数解释

身份策略版本信息。

取值范围

不涉及。

表4 policy_version

参数

参数类型

描述

document

String

参数解释

自定义身份策略或系统预置身份策略的策略文档的json格式。

取值范围

不涉及。

version_id

String

参数解释

身份策略版本号。

取值范围

不涉及。

is_default

Boolean

参数解释

是否为默认版本。

取值范围

不涉及。

created_at

String

参数解释

身份策略版本创建时间。

取值范围

不涉及。

状态码:400

表5 响应Body参数

参数

参数类型

描述

error_code

String

参数解释

错误码,请参见错误码

取值范围

格式为PAP5.XXXX,例如 PAP5.0012。

error_msg

String

参数解释

错误信息,请参见错误信息

取值范围

不涉及。

request_id

String

参数解释

API 请求的唯一标识,用于排查接口调用异常。

取值范围

不涉及。

状态码:403

表6 响应Body参数

参数

参数类型

描述

error_code

String

参数解释

错误码,请参见错误码

取值范围

格式为PAP5.XXXX,例如PAP5.0012。

error_msg

String

参数解释

错误信息,请参见错误消息

取值范围

不涉及。

request_id

String

参数解释

API请求的唯一标识,用于排查接口调用异常。

取值范围

不涉及。

encoded_authorization_message

String

参数解释

认证失败时返回的加密详细信息,用于定位认证问题。 可以通过STS5解密接口进行解密,请参见接口链接

取值范围

不涉及。

状态码:404

表7 响应Body参数

参数

参数类型

描述

error_code

String

参数解释

错误码,请参见错误码

取值范围

格式为PAP5.XXXX,例如 PAP5.0012。

error_msg

String

参数解释

错误信息,请参见错误信息

取值范围

不涉及。

request_id

String

参数解释

API 请求的唯一标识,用于排查接口调用异常。

取值范围

不涉及。

状态码:409

表8 响应Body参数

参数

参数类型

描述

error_code

String

参数解释

错误码,请参见错误码

取值范围

格式为PAP5.XXXX,例如 PAP5.0012。

error_msg

String

参数解释

错误信息,请参见错误信息

取值范围

不涉及。

request_id

String

参数解释

API 请求的唯一标识,用于排查接口调用异常。

取值范围

不涉及。

请求示例

为指定身份策略创建一个新版本,并置为默认版本。

POST https://{endpoint}/v5/policies/{policy_id}/versions

{
  "policy_document" : "{\"Version\":\"5.0\",\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"*\"]}]}",
  "set_as_default" : true
}

响应示例

状态码:201

请求成功。

{
  "policy_version" : {
    "document" : "{\"Version\":\"5.0\",\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"*\"]}]}",
    "version_id" : "v2",
    "is_default" : true,
    "created_at" : "2023-09-25T08:00:51.537Z"
  }
}

状态码

状态码

描述

201

请求成功。

400

请求体异常。

403

没有操作权限。

404

未找到相应的资源。

409

请求冲突。

错误码

请参见错误码

相关文档