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.