-
API Reference
- Overview
- Initialization
- Predefined Constants
-
Bucket-Related APIs
- PUT Bucket
- GET Buckets
- HEAD Bucket
- DELETE Bucket
- GET Objects
- GET Object versions
- List Multipart uploads
- Obtain Bucket Metadata
- GET Bucket location
- GET Bucket storageinfo
- PUT Bucket quota
- GET Bucket quota
- Set Bucket storagePolicy
- GET Bucket storagePolicy
- PUT Bucket acl
- GET Bucket acl
- PUT Bucket logging
- GET Bucket logging
- PUT Bucket policy
- GET Bucket policy
- DELETE Bucket policy
- PUT Bucket lifecycle
- GET Bucket lifecycle
- DELETE Bucket lifecycle
- PUT Bucket website
- GET Bucket website
- DELETE Bucket website
- PUT Bucket versioning
- GET Bucket versioning
- PUT Bucket cors
- GET Bucket cors
- DELETE Bucket cors
- PUT Bucket tagging
- GET Bucket tagging
- DELETE Bucket tagging
- Objects-Related APIs
- Other APIs
- Change History
- General Reference
Copied.
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