PUT Object acl
API Description
You can use this API to set the ACL for an object in a specified bucket.
Method Definition
ObsClient.setObjectAcl
Request Parameter
Field |
Type |
Optional or Mandatory |
Description |
||
---|---|---|---|---|---|
Bucket |
String |
Mandatory |
Bucket name |
||
Key |
String |
Mandatory |
Object name |
||
RequestDate |
String or Date |
Optional |
Request time
NOTE:
When the parameter type is String, the value must comply with the ISO8601 or RFC822 standards. |
||
VersionId |
String |
Optional |
Object version ID |
||
ACL |
String |
Optional |
|||
Owner |
Object |
Optional |
Object owner |
||
ID |
String |
Mandatory |
ID of the domain to which the object owner belongs |
||
Delivered |
Boolean |
Optional |
Whether the bucket ACL is applied to objects in the bucket |
||
Grants |
Array |
Optional |
List of grantees' permission information |
||
Grantee |
Object |
Mandatory |
Grantee |
||
Type |
String |
Mandatory |
|||
ID |
String |
Mandatory when Type is CanonicalUser. In other cases, leave it null. |
ID of the domain to which the grantee belongs |
||
URI |
String |
Mandatory when Type is Group. In other cases, leave it null. |
|||
Permission |
String |
Mandatory |
- Owner and Grants must be used together and they cannot be used with ACL.
- You must set either the two fields or ACL.
Returned Result (InterfaceResult)
Field |
Type |
Description |
---|---|---|
RequestId |
String |
Request ID returned by the OBS server |
Sample Code
obsClient.setObjectAcl({ Bucket:'bucketname', Key : 'objectkey', Owner:{ID:'ownerid'}, Grants:[ {Grantee:{Type:'CanonicalUser',ID:'userid'},Permission:obsClient.enums.PermissionRead}, {Grantee:{Type:'CanonicalUser',ID:'userid'},Permission:obsClient.enums.PermissionWrite}, {Grantee:{Type:'Group',URI:obsClient.enums.GroupAllUsers},Permission:obsClient.enums.PermissionWrite}, {Grantee:{Type:'Group',URI:obsClient.enums.GroupAllUsers},Permission:obsClient.enums.PermissionRead} ] },function (err, result){ if(err){ console.error('Error-->' + err); }else{ if(result.CommonMsg.Status < 300){ console.log('RequestId-->' + result.InterfaceResult.RequestId); }else{ console.log('Code-->' + result.CommonMsg.Code); console.log('Message-->' + result.CommonMsg.Message); } } });
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