PUT Object acl
API Description
You can use this API to set the ACL for an object in a specified bucket.
Method Definition
1. ObsClient->setObjectAcl(array $parameter) 2. ObsClient->setObjectAclAsync(array $parameter, callable $callback)
Request Parameter
Field |
Type |
Optional or Mandatory |
Description |
||
---|---|---|---|---|---|
Bucket |
string |
Mandatory |
Bucket name |
||
Key |
string |
Mandatory |
Object name |
||
VersionId |
string |
Optional |
Object version ID |
||
ACL |
string |
Optional |
|||
Owner |
associative array |
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 |
indexed 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
Field |
Type |
Description |
---|---|---|
HttpStatusCode |
integer |
HTTP status code |
Reason |
string |
Reason description |
RequestId |
String |
Request ID returned by the OBS server |
Sample Code
try { $resp = $obsClient->setObjectAcl( [ 'Bucket' => 'bucketname', 'Key' => 'objectkey', 'Owner' => ['ID' => 'ownerid'], 'Grants' => [ ['Grantee' => ['Type' => 'CanonicalUser', 'ID' => 'userid'], 'Permission' => ObsClient::PermissionRead], ['Grantee' => ['Type' => 'CanonicalUser', 'ID' => 'userid'], 'Permission' => ObsClient::PermissionWriteAcp], ['Grantee' => ['Type' => 'Group', 'URI' => ObsClient::GroupAuthenticatedUsers], 'Permission' => ObsClient::PermissionWriteAcp], ['Grantee' => ['Type' => 'Group', 'URI' => ObsClient::GroupAuthenticatedUsers], 'Permission' => ObsClient::PermissionRead], ] ] ); printf ( "RequestId:%s\n", $resp ['RequestId'] ); } catch ( Obs\Common\ObsException $obsException ) { printf ( "ExceptionCode:%s\n", $obsException->getExceptionCode () ); printf ( "ExceptionMessage:%s\n", $obsException->getExceptionMessage () ); }
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