Modifying a Custom Policy for Cloud Services
Function
This API is provided for the administrator to modify a custom policy for cloud services.
The API can be called using both the global endpoint and region-specific endpoints.
URI
PATCH /v3.0/OS-ROLE/roles/{role_id}
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
role_id |
Yes |
String |
Custom policy ID. For details about how to obtain a custom policy ID, see Custom Policy ID. |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
Content-Type |
Yes |
String |
Fill application/json;charset=utf8 in this field. |
X-Auth-Token |
Yes |
String |
Token with Security Administrator permissions. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
Yes |
Object |
Custom policy information. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
display_name |
Yes |
String |
Display name of the custom policy. |
type |
Yes |
String |
Display mode.
NOTE:
|
description |
Yes |
String |
Description of the custom policy. |
description_cn |
No |
String |
Description of the custom policy. |
Yes |
Object |
Content of custom policy. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
Version |
Yes |
String |
Policy version. When creating a custom policy, set this parameter to 1.1.
NOTE:
|
Yes |
Array of objects |
Statement of the policy. A policy can contain a maximum of eight statements. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
Action |
Yes |
Array of strings |
Specific operation permission on a resource. A maximum of 100 actions are allowed.
NOTE:
|
Effect |
Yes |
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:
|
No |
Object |
Conditions for the permission to take effect. A maximum of 10 conditions are allowed. |
|
Resource |
No |
Array of strings |
Cloud resource. The array can contain a maximum of 10 resource strings, and each string cannot exceed 128 characters.
NOTE:
|
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
No |
Object |
Operator, for example, Bool and StringEquals.
|
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
<attribute> |
No |
Array of strings |
Condition key. The condition key must correspond to the specified operator. A maximum of 10 condition keys are allowed.
|
Response Parameters
Parameter |
Type |
Description |
---|---|---|
Object |
Custom policy information. |
Parameter |
Type |
Description |
---|---|---|
catalog |
String |
Service catalog. |
display_name |
String |
Display name of the custom policy. |
description |
String |
Description of the custom policy. |
Object |
Resource link of the custom policy. |
|
Object |
Content of custom policy. |
|
description_cn |
String |
Description of the custom policy. |
domain_id |
String |
Domain ID. |
type |
String |
Display mode.
NOTE:
|
id |
String |
Policy ID. |
name |
String |
Name of the custom policy. |
updated_time |
String |
Time when the custom policy was last updated. |
created_time |
String |
Time when the custom policy was created. |
references |
String |
Number of references. |
Parameter |
Type |
Description |
---|---|---|
Version |
String |
Policy version.
NOTE:
|
Array of objects |
Statement of the policy. A policy can contain a maximum of eight statements. |
Parameter |
Type |
Description |
---|---|---|
Action |
Array of strings |
Specific operation permission on a resource. A maximum of 100 actions are allowed.
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:
|
Object |
Conditions for the permission to take effect. A maximum of 10 conditions are allowed. |
|
Resource |
Array of strings |
Cloud resource. The array can contain a maximum of 10 resource strings, and each string cannot exceed 128 characters.
NOTE:
|
Example Request
PATCH https://sample.domain.com/v3.0/OS-ROLE/roles/{role_id}
{ "role": { "display_name": "IAMCloudServicePolicy", "type": "AX", "description": "IAMDescription", "description_cn": "Policy description", "policy": { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "obs:bucket:GetBucketAcl" ], "Condition": { "StringStartWith": { "g:ProjectName": [ "example-west-1" ] } }, "Resource": [ "obs:*:*:bucket:*" ] } ] } } }
Example Response
Status code: 200
The request is successful.
{ "role": { "catalog": "CUSTOMED", "display_name": "IAMCloudServicePolicy", "description": "IAMDescription", "links": { "self": "https://sample.domain.com/v3/roles/93879fd90f1046f69e6e0b31c94d2615" }, "policy": { "Version": "1.1", "Statement": [ { "Action": [ "obs:bucket:GetBucketAcl" ], "Resource": [ "obs:*:*:bucket:*" ], "Effect": "Allow", "Condition": { "StringStartWith": { "g:ProjectName": [ "example-west-1" ] } } } ] }, "description_cn": "Policy description", "domain_id": "d78cbac186b744899480f25bd0...", "type": "AX", "id": "93879fd90f1046f69e6e0b31c94d2615", "name": "custom_d78cbac186b744899480f25bd022f468_1" } }
Status Codes
Status Code |
Description |
---|---|
200 |
The request is successful. |
400 |
The server failed to process the request. |
401 |
Authentication failed. |
403 |
Access denied. |
404 |
The requested resource cannot be found. |
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.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot