策略管理接口
说明:权限策略分为自定义策略和系统策略。 自定义策略是用户自行创建管理的权限策略,类型为Custom;系统策略是云平台统一管理的内置策略,类型为System。 在下文API中,如未指定policyType参数,则默认为自定义策略类型。
创建策略
接口描述
创建权限策略。
请求结构
POST /v1/policy HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: authorization string
请求头域
除公共头域外,无其它特殊头域。
请求参数
名称 | 类型 | 位置 | 描述 | 是否必须 |
---|---|---|---|---|
name | String | RequestBody参数 | 组名 | 是 |
description | String | RequestBody参数 | 组的描述 | 否 |
document | String | RequestBody参数 | 策略内容,ACL格式序列化后得到的String | 是 |
响应头域
除公共头域外,无其它特殊头域。
响应参数
请求示例
POST /v1/policy HTTP/1.1
Host: iam.bj.baidubce.com
content-type: application/json
Content-Length: 20
Authorization: AuthorizationString
{"name":"test_policy", "document":"{\"accessControlList\": [{\"region\":\"bj\",\"service\":\"bcc\",\"resource\":[\"*\"],\"permission\":[\"*\"],\"effect\":\"Allow\"}]}"}
响应示例
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
X-Bce-Request-Id: 8d51a788-e79d-4ced-a9e0-0662ec85b7f7
Server: BWS
{
"description": "",
"createTime": "2019-06-06T09:13:50Z",
"document": "{\"id\":\"policy_d19f78b0595242b5a8c3419c09c81b40\",\"accessControlList\":[{\"service\":\"bcc\",\"region\":\"bj\",\"resource\":[\"*\"],\"effect\":\"Allow\",\"permission\":[\"*\"]}]}",
"type": "Custom",
"id": "d19f78b0595242b5a8c3419c09c81b40",
"name": "test_policy"
}
查询策略
接口描述
查询权限策略。
请求结构
GET /v1/policy/{policyName}?policyType={policyType} HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: authorization string
请求头域
除公共头域外,无其它特殊头域。
请求参数
名称 | 类型 | 位置 | 描述 | 是否必须 |
---|---|---|---|---|
policyName | String | URL参数 | 策略名 | 是 |
policyType | String | Query参数 | 要查询的策略类型,为System时查询系统策略;为Custom时查询自定义策略 | 否 |
响应头域
除公共头域外,无其它特殊头域。
响应参数
请求示例
GET /v1/policy/test_policy HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: AuthorizationString
响应示例
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
X-Bce-Request-Id: 8d51a788-e79d-4ced-a9e0-0662ec85b7f7
Server: BWS
{
"description": "",
"createTime": "2019-06-06T09:13:50Z",
"document": "{\"id\":\"policy_d19f78b0595242b5a8c3419c09c81b40\",\"accessControlList\":[{\"service\":\"bcc\",\"region\":\"bj\",\"resource\":[\"*\"],\"effect\":\"Allow\",\"permission\":[\"*\"]}]}",
"type": "Custom",
"id": "d19f78b0595242b5a8c3419c09c81b40",
"name": "test_policy"
}
删除策略
接口描述
删除权限策略。
说明:删除组前需要需要先解除到该策略的全部权限关联。
请求结构
DELETE /v1/policy/{policyName} HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: authorization string
请求头域
除公共头域外,无其它特殊头域。
请求参数
名称 | 类型 | 位置 | 描述 | 是否必须 |
---|---|---|---|---|
policyName | String | URL参数 | 组名 | 是 |
响应头域
除公共头域外,无其它特殊头域。
响应参数
无。
请求示例
DELETE /v1/policy/test_policy HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: AuthorizationString
响应示例
HTTP/1.1 204 No Content
X-Bce-Request-Id: 8d51a788-e79d-4ced-a9e0-0662ec85b7f7
Server: BWS
列举策略
接口描述
列举权限策略。
当policyType为System时,可列举系统内置的策略列表。
请求结构
GET /v1/policy?policyType={policyType}&nameFilter=${nameFilter} HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: authorization string
请求头域
除公共头域外,无其它特殊头域。
请求参数
名称 | 类型 | 位置 | 描述 | 是否必须 |
---|---|---|---|---|
policyType | String | Query参数 | 要查询的策略类型,为System时查询系统策略;为Custom时查询自定义策略 | 否 |
nameFilter | String | Query参数 | 策略名字的过滤条件;不为空时仅返回名字包含此关键字的结果 | 否 |
响应头域
除公共头域外,无其它特殊头域。
响应参数
名称 | 类型 | 描述 |
---|---|---|
policies | List<PolicyModel> | 策略对象的列表 |
请求示例
GET /v1/policy HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: AuthorizationString
响应示例
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
X-Bce-Request-Id: 8d51a788-e79d-4ced-a9e0-0662ec85b7f7
Server: BWS
{
"policies": [
{
"description": "",
"createTime": "2019-06-06T09:13:50Z",
"document": "{\"id\":\"policy_d19f78b0595242b5a8c3419c09c81b40\",\"accessControlList\":[{\"service\":\"bcc\",\"region\":\"bj\",\"resource\":[\"*\"],\"effect\":\"Allow\",\"permission\":[\"*\"]}]}",
"type": "Custom",
"id": "d19f78b0595242b5a8c3419c09c81b40",
"name": "test_policy"
}
]
}
关联用户权限
接口描述
为用户关联权限策略。
请求结构
PUT /v1/user/{userName}/policy/{policyName}?policyType={policyType} HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: authorization string
请求头域
除公共头域外,无其它特殊头域。
请求参数
名称 | 类型 | 位置 | 描述 | 是否必须 |
---|---|---|---|---|
userName | String | URL参数 | 用户名 | 是 |
policyName | String | URL参数 | 策略名 | 是 |
policyType | String | Query参数 | 要关联的策略类型,为System时查询系统策略;为Custom时查询自定义策略 | 否 |
响应头域
除公共头域外,无其它特殊头域。
响应参数
无。
请求示例
PUT /v1/user/test-user/policy/test_policy
Host: iam.bj.baidubce.com
Authorization: AuthorizationString
响应示例
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
X-Bce-Request-Id: 8d51a788-e79d-4ced-a9e0-0662ec85b7f7
Server: BWS
解除用户权限
接口描述
解除子用户关联的权限策略。
请求结构
DELETE /v1/user/{userName}/policy/{policyName}policyType={policyType} HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: authorization string
请求头域
除公共头域外,无其它特殊头域。
请求参数
名称 | 类型 | 位置 | 描述 | 是否必须 |
---|---|---|---|---|
userName | String | URL参数 | 用户名 | 是 |
policyName | String | URL参数 | 策略名 | 是 |
policyType | String | Query参数 | 关联的策略类型,为System时查询系统策略;为Custom时查询自定义策略 | 否 |
响应头域
除公共头域外,无其它特殊头域。
响应参数
无。
请求示例
DELETE /v1/user/test-user/policy/test_policy
Host: iam.bj.baidubce.com
Authorization: AuthorizationString
响应示例
HTTP/1.1 204 No Content
Content-Type: application/json;charset=UTF-8
X-Bce-Request-Id: 8d51a788-e79d-4ced-a9e0-0662ec85b7f7
Server: BWS
列举用户的权限
接口描述
列举用户关联的权限策略。
请求结构
GET /v1/user/{userName}/policy HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: authorization string
请求头域
除公共头域外,无其它特殊头域。
请求参数
名称 | 类型 | 位置 | 描述 | 是否必须 |
---|---|---|---|---|
userName | String | URL参数 | 用户名 | 是 |
响应头域
除公共头域外,无其它特殊头域。
响应参数
名称 | 类型 | 描述 |
---|---|---|
policies | List<PolicyModel> | 策略对象的列表 |
请求示例
GET /v1/user/test-user/policy HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: AuthorizationString
响应示例
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
X-Bce-Request-Id: 8d51a788-e79d-4ced-a9e0-0662ec85b7f7
Server: BWS
{
"policies": [
{
"description": "",
"createTime": "2019-06-06T09:13:50Z",
"document": "{\"id\":\"policy_d19f78b0595242b5a8c3419c09c81b40\",\"accessControlList\":[{\"service\":\"bcc\",\"region\":\"bj\",\"resource\":[\"*\"],\"effect\":\"Allow\",\"permission\":[\"*\"]}]}",
"type": "Custom",
"id": "d19f78b0595242b5a8c3419c09c81b40",
"name": "test_policy"
}
]
}
关联组权限
接口描述
为用户组关联权限策略。
请求结构
PUT /v1/group/{groupName}/policy/{policyName}?policyType={policyType} HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: authorization string
请求头域
除公共头域外,无其它特殊头域。
请求参数
名称 | 类型 | 位置 | 描述 | 是否必须 |
---|---|---|---|---|
groupName | String | URL参数 | 组名 | 是 |
policyName | String | URL参数 | 策略名 | 是 |
policyType | String | Query参数 | 要关联的策略类型,为System时查询系统策略;为Custom时查询自定义策略 | 否 |
响应头域
除公共头域外,无其它特殊头域。
响应参数
无。
请求示例
PUT /v1/group/test_group/policy/test_policy
Host: iam.bj.baidubce.com
Authorization: AuthorizationString
响应示例
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
X-Bce-Request-Id: 8d51a788-e79d-4ced-a9e0-0662ec85b7f7
Server: BWS
解除组权限
接口描述
解除用户组关联的权限策略。
请求结构
DELETE /v1/group/{groupName}/policy/{policyName}policyType={policyType} HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: authorization string
请求头域
除公共头域外,无其它特殊头域。
请求参数
名称 | 类型 | 位置 | 描述 | 是否必须 |
---|---|---|---|---|
groupName | String | URL参数 | 组名 | 是 |
policyName | String | URL参数 | 策略名 | 是 |
policyType | String | Query参数 | 关联的策略类型,为System时查询系统策略;为Custom时查询自定义策略 | 否 |
响应头域
除公共头域外,无其它特殊头域。
响应参数
无。
请求示例
DELETE /v1/group/test_group/policy/test_policy
Host: iam.bj.baidubce.com
Authorization: AuthorizationString
响应示例
HTTP/1.1 204 No Content
Content-Type: application/json;charset=UTF-8
X-Bce-Request-Id: 8d51a788-e79d-4ced-a9e0-0662ec85b7f7
Server: BWS
列举组的权限
接口描述
列举用户组关联的权限策略。
请求结构
GET /v1/group/{groupName}/policy HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: authorization string
请求头域
除公共头域外,无其它特殊头域。
请求参数
名称 | 类型 | 位置 | 描述 | 是否必须 |
---|---|---|---|---|
groupName | String | URL参数 | 用户名 | 是 |
响应头域
除公共头域外,无其它特殊头域。
响应参数
名称 | 类型 | 描述 |
---|---|---|
policies | List<PolicyModel> | 策略对象的列表 |
请求示例
GET /v1/group/test_group/policy HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: AuthorizationString
响应示例
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
X-Bce-Request-Id: 8d51a788-e79d-4ced-a9e0-0662ec85b7f7
Server: BWS
{
"policies": [
{
"description": "",
"createTime": "2019-06-06T09:13:50Z",
"document": "{\"id\":\"policy_d19f78b0595242b5a8c3419c09c81b40\",\"accessControlList\":[{\"service\":\"bcc\",\"region\":\"bj\",\"resource\":[\"*\"],\"effect\":\"Allow\",\"permission\":[\"*\"]}]}",
"type": "Custom",
"id": "d19f78b0595242b5a8c3419c09c81b40",
"name": "test_policy"
}
]
}
关联角色权限
接口描述
为角色关联权限策略。
请求结构
PUT /v1/role/{roleName}/policy/{policyName}?policyType={policyType} HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: authorization string
请求头域
除公共头域外,无其它特殊头域。
请求参数
名称 | 类型 | 位置 | 描述 | 是否必须 |
---|---|---|---|---|
roleName | String | URL参数 | 角色名 | 是 |
policyName | String | URL参数 | 策略名 | 是 |
policyType | String | Query参数 | 要关联的策略类型,为System时查询系统策略;为Custom时查询自定义策略 | 否 |
响应头域
除公共头域外,无其它特殊头域。
响应参数
无。
请求示例
PUT /v1/role/test-role/policy/test_policy
Host: iam.bj.baidubce.com
Authorization: AuthorizationString
响应示例
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
X-Bce-Request-Id: 8d51a788-e79d-4ced-a9e0-0662ec85b7f7
Server: BWS
解除角色权限
接口描述
解除角色关联的权限策略。
请求结构
DELETE /v1/role/{roleName}/policy/{policyName}?policyType={policyType} HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: authorization string
请求头域
除公共头域外,无其它特殊头域。
请求参数
名称 | 类型 | 位置 | 描述 | 是否必须 |
---|---|---|---|---|
roleName | String | URL参数 | 角色名 | 是 |
policyName | String | URL参数 | 策略名 | 是 |
policyType | String | Query参数 | 关联的策略类型,为System时查询系统策略;为Custom时查询自定义策略 | 否 |
响应头域
除公共头域外,无其它特殊头域。
响应参数
无。
请求示例
DELETE /v1/role/test-role/policy/test_policy
Host: iam.bj.baidubce.com
Authorization: AuthorizationString
响应示例
HTTP/1.1 204 No Content
Content-Type: application/json;charset=UTF-8
X-Bce-Request-Id: 8d51a788-e79d-4ced-a9e0-0662ec85b7f7
Server: BWS
列举角色的权限
接口描述
列举角色关联的权限策略。
请求结构
GET /v1/role/{roleName}/policy HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: authorization string
请求头域
除公共头域外,无其它特殊头域。
请求参数
名称 | 类型 | 位置 | 描述 | 是否必须 |
---|---|---|---|---|
roleName | String | URL参数 | 角色名 | 是 |
响应头域
除公共头域外,无其它特殊头域。
响应参数
名称 | 类型 | 描述 |
---|---|---|
policies | List<PolicyModel> | 策略对象的列表 |
请求示例
GET /v1/role/test-role/policy HTTP/1.1
Host: iam.bj.baidubce.com
Authorization: AuthorizationString
响应示例
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
X-Bce-Request-Id: 8d51a788-e79d-4ced-a9e0-0662ec85b7f7
Server: BWS
{
"policies": [
{
"description": "",
"createTime": "2019-06-06T09:13:50Z",
"document": "{\"id\":\"policy_d19f78b0595242b5a8c3419c09c81b40\",\"accessControlList\":[{\"service\":\"bcc\",\"region\":\"bj\",\"resource\":[\"*\"],\"effect\":\"Allow\",\"permission\":[\"*\"]}]}",
"type": "Custom",
"id": "d19f78b0595242b5a8c3419c09c81b40",
"name": "test_policy"
}
]
}