Listing Custom Policies
Function
This API is provided for the administrator to list all custom policies.
The API can be called using both the global endpoint and region-specific endpoints.
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.0/OS-ROLE/roles
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| page | No | Integer | Page number for pagination query, which must be used together with per_page. The minimum value is 1. |
| per_page | No | Integer | Number of data records to be displayed on each page. The value ranges from 1 to 300. This parameter must be used together with page. |
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 | Custom policy information. | |
| total_number | Integer | Total number of custom policies returned. |
| Parameter | Type | Description |
|---|---|---|
| self | String | Resource link. |
| previous | String | Previous resource link. If the previous resource link is unavailable, this parameter is set to null. |
| next | String | Next resource link. If the next resource link is unavailable, this parameter is set to null. |
| Parameter | Type | Description |
|---|---|---|
| domain_id | String | Account ID. |
| updated_time | String | Time when the custom policy was last updated. NOTE: The value is a Unix timestamp in millisecond, for example, 1687913793000. |
| created_time | String | Time when the custom policy was created. NOTE: The value is a Unix timestamp in millisecond, for example, 1687913793000. |
| description_cn | String | Description of the custom policy in Chinese. This parameter is returned in the response only when description_cn is specified during custom policy creation. |
| catalog | String | Service catalog. |
| name | String | Name of the custom policy. |
| description | String | Description of the custom policy. |
| Object | Resource link of the custom policy. | |
| id | String | Custom policy ID. |
| display_name | String | Display name of the custom policy. |
| type | String | Display mode. NOTE:
|
| Object | Content of the custom policy. |
| Parameter | Type | Description |
|---|---|---|
| Version | String | Policy version. NOTE:
|
| Array of objects | Statement of the policy, which describes details of a custom policy. |
| 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. |
| Condition | Map<String,Map<String,Array<String>>> | 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:
|
Example Request
Request for querying a list of custom policies
GET https://iam.myhuaweicloud.eu/v3.0/OS-ROLE/roles Example Response
Status code: 200
The request is successful.
{
"roles" : [ {
"domain_id" : "d78cbac186b744899480f25bd022f...",
"updated_time" : "1579229246886",
"created_time" : "1579229246886",
"description_cn" : "Description in Chinese",
"catalog" : "CUSTOMED",
"name" : "custom_d78cbac186b744899480f25bd022f468_1",
"description" : "IAMDescription",
"links" : {
"self" : "https://iam.myhuaweicloud.eu/v3/roles/93879fd90f1046f69e6e0b31c94d2..."
},
"id" : "93879fd90f1046f69e6e0b31c94d2...",
"display_name" : "IAMCloudServicePolicy",
"type" : "AX",
"policy" : {
"Version" : "1.1",
"Statement" : [ {
"Condition" : {
"StringStartWith" : {
"g:ProjectName" : [ "eu-west-101" ]
}
},
"Action" : [ "obs:bucket:GetBucketAcl" ],
"Resource" : [ "obs:*:*:bucket:*" ],
"Effect" : "Allow"
} ]
}
}, {
"domain_id" : "d78cbac186b744899480f25bd022f...",
"updated_time" : "1579229242358",
"created_time" : "1579229242358",
"description_cn" : "Description in Chinese",
"catalog" : "CUSTOMED",
"name" : "custom_d78cbac186b744899480f25bd022f468_0",
"description" : "IAMDescription",
"links" : {
"self" : "https://iam.myhuaweicloud.eu/v3/roles/f67224e84dc849ab954ce29fb4f47..."
},
"id" : "f67224e84dc849ab954ce29fb4f473...",
"display_name" : "IAMAgencyPolicy",
"type" : "AX",
"policy" : {
"Version" : "1.1",
"Statement" : [ {
"Action" : [ "iam:tokens:assume" ],
"Resource" : {
"uri" : [ "/iam/agencies/agencyTest" ]
},
"Effect" : "Allow"
} ]
}
} ],
"links" : {
"next" : null,
"previous" : null,
"self" : "https://iam.myhuaweicloud.eu/v3/roles?domain_id=d78cbac186b744899480f25bd022f..."
},
"total_number" : 300
} Status Codes
| Status Code | Description |
|---|---|
| 200 | The request is successful. |
| 400 | Invalid parameters. |
| 401 | Authentication failed. |
| 403 | Access denied. |
| 500 | Internal server error. |
Error Codes
None
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.