更新时间:2024-11-18 GMT+08:00
分享

查询权限详情

功能介绍

该接口可以用于管理员查询权限详情。

该接口可以使用全局区域的Endpoint和其他区域的Endpoint调用。IAM的Endpoint请参见:地区和终端节点

调试

您可以在API Explorer中调试该接口。

URI

GET /v3/roles/{role_id}

表1 路径参数

参数

是否必选

参数类型

描述

role_id

String

权限ID,获取方式请参见:获取权限ID

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

Content-Type

String

该字段内容填为“application/json;charset=utf8”。

X-Auth-Token

String

访问令牌,承载用户的身份、权限等信息。

token所需权限请参见授权项

响应参数

表3 响应Body参数

参数

参数类型

描述

role

Object

权限信息。

表4 role

参数

参数类型

描述

domain_id

String

权限所属账号ID。

flag

String

该参数值为fine_grained时,标识此权限为系统内置的策略。

description_cn

String

权限的中文描述信息,仅在创建时传入了description_cn参数,响应体中才会返回此字段。

catalog

String

权限所在目录。

name

String

系统内部呈现的权限名称。如云目录服务CCS普通用户权限CCS User的name为ccs_user。

携带在用户的token中,云服务根据该名称来判断用户是否有权限访问。

description

String

权限描述信息。

links

Object

权限的资源链接信息。

id

String

权限ID。

display_name

String

权限名称。

type

String

权限的显示模式。

说明:
  • AX表示在domain层显示。
  • XA表示在project层显示。
  • AA表示在domain和project层均显示。
  • XX表示在domain和project层均不显示。
  • 自定义策略的显示模式只能为AX或者XA,不能在domain层和project层都显示(AA),或者在domain层和project层都不显示(XX)。

policy

Object

权限的具体内容。

updated_time

String

权限更新时间。

说明:

UNIX时间戳格式,单位是毫秒,时间戳格式如:1687913793000。

created_time

String

权限创建时间。

说明:

UNIX时间戳格式,单位是毫秒,时间戳格式如:1687913793000。

表6 role.policy

参数

参数类型

描述

Depends

Array of objects

该权限所依赖的权限。

Statement

Array of objects

授权语句,描述权限的具体内容。

Version

String

权限版本号。

说明:
  • 1.0:系统预置的角色。以服务为粒度,提供有限的服务相关角色用于授权。
  • 1.1:策略。IAM最新提供的一种细粒度授权的能力,可以精确到具体服务的操作、资源以及请求条件等。
表7 role.policy.Depends

参数

参数类型

描述

catalog

String

权限所在目录。

display_name

String

权限展示名。

表8 role.policy.Statement

参数

参数类型

描述

Action

Array of strings

授权项,指对资源的具体操作权限。支持的授权项请参考各云服务《API参考》中“权限和授权项”章节。

说明:
  • 格式为:服务名:资源类型:操作,例:vpc:ports:create。
  • 服务名为产品名称,例如ecs、evs和vpc等,服务名仅支持小写。 资源类型和操作没有大小写,要求支持通配符号*,无需罗列全部授权项。
  • 当自定义策略为委托自定义策略时,该字段值为: "Action": ["iam:agencies:assume"]

Effect

String

作用。包含两种:允许(Allow)和拒绝(Deny),既有Allow又有Deny的授权语句时,遵循Deny优先的原则。

取值范围:

  • Allow
  • Deny

Condition

Object

限制条件。如果创建此策略未传入此字段,则返回结果中也无此字段。

说明:

以请求示例中的Condition为例:条件键(obs:prefix)和字符串(public)需相等(StringEquals)。

 "Condition": {
              "StringEquals": {
                "obs:prefix": [
                  "public"
                ]
              }
            }

Resource

Object

资源。如果创建此策略时未传入此字段,则返回结果中也无此字段。规则如下:

说明:
  • 可填 * 的五段式:::::,例:"obs:::bucket:*"。
  • region字段为*或用户可访问的region。service必须存在且resource属于对应service。
  • 当该自定义策略为委托自定义策略时,该字段类型为Object,值为:"Resource": {"uri": ["/iam/agencies/07805acaba800fdd4fbdc00b8f888c7c"]}

请求示例

查询权限详情。

GET  https://iam.myhuaweicloud.com/v3/roles/{role_id}

响应示例

状态码为 200 时:

请求成功。

{
    "role": {
        "domain_id": null,
        "description_cn": "漏洞扫描服务(VSS)管理员,拥有该服务下的所有权限",
        "catalog": "VulnScan",
        "name": "wscn_adm",
        "description": "Vulnerability Scan Service administrator of tasks and reports.",
        "links": {
            "next": null,
            "previous": null,
            "self": "https://iam.myhuaweicloud.com/v3/roles/0af84c1502f447fa9c2fa18083fbb87e"
        },
        "id": "0af84c1502f447fa9c2fa18083fbb87e",
        "display_name": "VSS Administrator",
        "type": "XA",
        "policy": {
            "Version": "1.0",
            "Statement": [
                {
                    "Action": [
                        "WebScan:*:*"
                    ],
                    "Effect": "Allow"
                }
            ],
            "Depends": [
                {
                    "catalog": "BASE",
                    "display_name": "Server Administrator"
                },
                {
                    "catalog": "BASE",
                    "display_name": "Tenant Guest"
                }
            ]
        }
    }
}

返回值

返回值

描述

200

请求成功。

400

参数无效。

401

认证失败。

403

没有操作权限。

404

未找到相应的资源。

错误码

相关文档