多用户访问控制

    策略管理接口

    说明:权限策略分为自定义策略和系统策略。 自定义策略是用户自行创建管理的权限策略,类型为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

    响应头域

    除公共头域外,无其它特殊头域。

    响应参数

    PolicyModel对象

    请求示例

    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时查询自定义策略

    响应头域

    除公共头域外,无其它特殊头域。

    响应参数

    PolicyModel对象

    请求示例

    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"
            }
        ]
    }
    一篇
    角色管理接口
    一篇
    数据类型