Listing Permissions
Function
This API is provided for the administrator to list all permissions.
The API can be called using both the global endpoint and region-specific endpoints.
URI
GET /v3/roles
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
domain_id |
No |
String |
Account ID. For details about how to obtain the account ID, see Obtaining Account, IAM User, Group, Project, Region, and Agency Information.
NOTE:
|
permission_type |
No |
String |
System permission type. This parameter is valid only when domain_id is left blank.
|
name |
No |
String |
Permission name for internal use. For example, ccs_user is the internal name of the CCS User role for Cloud Catalog Service (CCS). It is recommended that the display_name parameter rather than the name parameter be transferred. |
display_name |
No |
String |
Permission name or filter condition. The value of this parameter can be the permission name displayed on the console or included in System Permissions.
|
page |
No |
Integer |
Page number for pagination query, which must be used together with per_page. The minimum value is 1. You can use this parameter when you set domain_id to query custom policies. |
per_page |
No |
Integer |
Number of data records to be displayed on each page. The value ranges from 1 to 300, and the default value is 300. This parameter must be used together with page. A maximum of 300 permissions will be displayed on each page if the page and per_page parameters are not transferred. |
type |
No |
String |
Display mode of the permission. The options include domain, project, and all. domain means returning all permissions of the AA and AX levels; project means returning all permissions of the AA and XA levels; all means returning permissions of the AA, AX, and XA permissions.
NOTE:
|
catalog |
No |
String |
Service catalog, which corresponds to the catalog field in policies. You can set this parameter to query system-defined policies and custom policies. |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
Content-Type |
Yes |
String |
Fill application/json;charset=utf8 in this field. |
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
Parameter |
Type |
Description |
---|---|---|
Object |
Resource link information. |
|
Array of objects |
Permission information. |
|
total_number |
Integer |
Total number of permissions. |
Parameter |
Type |
Description |
---|---|---|
self |
String |
Resource link. |
previous |
String |
Previous resource link. |
next |
String |
Next resource link. |
Parameter |
Type |
Description |
---|---|---|
domain_id |
String |
ID of the account to which the permission belongs. |
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. |
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. |
Object |
Permission resource link. |
|
id |
String |
Permission ID. |
display_name |
String |
Permission name. |
type |
String |
Display mode of the permission.
NOTE:
|
Object |
Content of the permission. |
|
updated_time |
String |
Time when the permission was last updated.
NOTE:
The value is a UTC time in the YYYY-MM-DDTHH:mm:ss.ssssssZ format, for example, 2023-06-28T08:56:33.710000Z. For details about the date and timestamp formats, see ISO-8601. |
created_time |
String |
Time when the permission was created.
NOTE:
The value is a UTC time in the YYYY-MM-DDTHH:mm:ss.ssssssZ format, for example, 2023-06-28T08:56:33.710000Z. For details about the date and timestamp formats, see ISO-8601. |
Parameter |
Type |
Description |
---|---|---|
self |
String |
Resource link. |
previous |
String |
Previous resource link. |
next |
String |
Next resource link. |
Parameter |
Type |
Description |
---|---|---|
Array of objects |
Dependent permissions. |
|
Array of objects |
Statement of the permission. |
|
Version |
String |
Policy version.
NOTE:
|
Parameter |
Type |
Description |
---|---|---|
catalog |
String |
Service catalog of the permission. |
display_name |
String |
Display name of the permission. |
Parameter |
Type |
Description |
---|---|---|
Action |
Array of strings |
Specific operation permissions on a resource. For details about supported actions, see "Permissions and Supported Actions" in the API Reference of cloud services.
NOTE:
|
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:
|
Condition |
Object |
Conditions for the permission to take effect. For details, see Creating a Custom Policy.
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 |
Array of strings |
Cloud resource.
NOTE:
|
Parameter |
Type |
Description |
---|---|---|
attribute |
Array of strings |
Condition key. The condition key must correspond to the specified operator. A maximum of 10 condition keys are allowed. The parameter type is custom character string array. |
Example Request
Request for querying permissions
GET https://iam.myhuaweicloud.eu/v3/roles
Example Response
Status code: 200
The request is successful.
{ "roles" : [ { "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.eu/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" } ] } }, { "domain_id" : null, "flag" : "fine_grained", "description_cn" : "Description of the permission in Chinese", "catalog" : "CSE", "name" : "system_all_34", "description" : "All permissions of CSE service.", "links" : { "next" : null, "previous" : null, "self" : "https://iam.myhuaweicloud.eu/v3/roles/0b5ea44ebdc64a24a9c372b2317f7e39" }, "id" : "0b5ea44ebdc64a24a9c372b2317f7e39", "display_name" : "CSE Admin", "type" : "XA", "policy" : { "Version" : "1.1", "Statement" : [ { "Action" : [ "cse:*:*", "ecs:*:*", "evs:*:*", "vpc:*:*" ], "Effect" : "Allow" } ] } } ], "links" : { "next" : null, "previous" : null, "self" : "https://iam.myhuaweicloud.eu/v3/roles" }, "total_number" : 300 }
Status Codes
Status Code |
Description |
---|---|
200 |
The request is successful. |
400 |
Invalid parameters. |
401 |
Authentication failed. |
403 |
Access denied. |
Error Codes
None
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.