Help Center/ Identity and Access Management/ API Reference/ API/ Permissions Management/ Querying Permission Details - KeystoneShowPermission
Updated on 2025-12-27 GMT+08:00

Querying Permission Details - KeystoneShowPermission

Function

This API is provided for the administrator to query permission details.

The API can be called using either a global endpoint or a region-specific endpoint. For IAM endpoints, see Regions and Endpoints.

Debugging

You can debug this API in API Explorer.

Authorization Information

Each account is authorized to call all APIs, but its IAM users must obtain the required permissions. For details, see Permissions and Supported Actions.

URI

GET /v3/roles/{role_id}

Table 1 URI parameters

Parameter

Mandatory

Type

Description

role_id

Yes

String

Permission ID. For details about how to obtain a permission ID, see Listing Permissions.

Request Parameters

Table 2 Parameters in the request header

Parameter

Mandatory

Type

Description

Content-Type

Yes

String

Set this parameter to application/json;charset=utf8.

X-Auth-Token

Yes

String

Access token issued to a user to bear its identity and permissions.

For details about the permissions required by the token, see Actions.

Response Parameters

Table 3 Parameters in the response body

Parameter

Type

Description

role

Object

Permission information.

Table 4 role

Parameter

Type

Description

domain_id

String

ID of the account which the permission belongs to.

flag

String

If this parameter is set to fine_grained, the permission is a system-defined policy.

description_cn

String

Description of the permission in Chinese. This parameter is returned in the response only when description_cn is specified during policy creation.

catalog

String

Service catalog of the permission.

name

String

Permission name for internal use. For example, ccs_user is the internal name of the CCS User role for CCS.

This parameter is carried in the token of a user, allowing the system to determine whether the user has permissions to access a specific cloud service.

description

String

Description of the permission.

links

Object

Permission resource link.

id

String

Permission ID.

display_name

String

Permission name.

type

String

Display mode of the permission.

NOTE:
  • AX: Account level.
  • XA: Project level.
  • AA: Both the account level and project level.
  • XX: Neither the account level nor project level.
  • The display mode of a custom policy can only be AX or XA. A custom policy must be displayed at either of the two levels.

policy

Object

Content of the permission.

updated_time

String

Time when the permission was last updated.

NOTE:

The value is a Unix timestamp in millisecond, for example, 1687913793000.

created_time

String

Time when the permission was created.

NOTE:

The value is a Unix timestamp in millisecond, for example, 1687913793000.

Table 6 role.policy

Parameter

Type

Description

Depends

Array of objects

Dependent permissions.

Statement

Array of objects

Statement of the permission.

Version

String

Policy version.

NOTE:
  • 1.0: System-defined role. Only a limited number of service-level roles are provided for authorization.
  • 1.1: Policy. A policy defines the permissions required to perform actions on a specific cloud resource under certain conditions.
Table 7 role.policy.Depends

Parameter

Type

Description

catalog

String

Service catalog of the permission.

display_name

String

Display name of the permission.

Table 8 role.policy.Statement

Parameter

Type

Description

Action

Array of strings

Specific permissions on a resource. For details about supported actions, see "Permissions and Supported Actions" in the API Reference of cloud services.

NOTE:
  • Format: Service name:Resource type:Action, for example, vpc:ports:create
  • Service name: indicates the product name, such as ecs, evs, or vpc. Only lowercase letters are allowed. Resource types and actions are not case-sensitive. You can use an asterisk (*) to represent all actions.
  • In the case of a custom policy for agencies, the parameter value should be "Action": ["iam:tokens:assume"].

Effect

String

Effect of the permission. The value can be Allow or Deny. If both Allow and Deny statements are found in a policy, the authentication starts from the Deny statements.

Options:

  • Allow
  • Deny

Condition

Object

Conditions for the permission to take effect. If this parameter is not specified during policy creation, it will not be returned in the response.

NOTE:

Take the condition in the sample request as an example, the values of the condition key (obs:prefix) and string (public) must be equal (StringEquals).

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

Resource

Object

Cloud resource. If this parameter is not specified during policy creation, it will not be returned in the response.

NOTE:
  • Format: ::::. For example, obs:::bucket:*. Asterisks are allowed.
  • The region segment can be * or a region accessible to the user. The service must exist and the specified resource must belong to the service.
  • In the case of a custom policy for agencies, the type of this parameter is Object, and the value should be "Resource": {"uri": ["/iam/agencies/agencyTest"]}.

Example Request

Request for querying permission details

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

Example Response

Status code: 200

The request is successful.

{
    "role": {
        "domain_id": null,
        "description_cn": "Description of the permission in Chinese",
        "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"
                }
            ]
        }
    }
}

Status Codes

Status Code

Description

200

The request is successful.

400

Invalid parameters.

401

Authentication failed.

403

Access denied.

404

The requested resource cannot be found.

Error Codes

None