• Object Storage Service

obs
  1. Help Center
  2. Object Storage Service
  3. API Reference (PHP SDK)
  4. Bucket-Related APIs
  5. PUT Bucket policy

PUT Bucket policy

API Description

You can use this API to set a bucket policy. If the bucket already has a policy, the policy will be overwritten by the one specified in this request.

Method Definition

1. ObsClient->setBucketPolicy(array $parameter)
2. ObsClient->setBucketPolicyAsync(array $parameter, callable $callback)

Request Parameter

Field

Type

Optional or Mandatory

Description

Bucket

string

Mandatory

Bucket name

Policy

string

Mandatory

Policy information in JSON format.

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 -> setBucketPolicy([
              'Bucket' => 'bucketname',
              'Policy' => '{"Version":"2008-10-17","Id": "Policy1","Statement": [{"Sid": "Stmt1375240018061","Action": ["s3:GetBucketPolicy"],"Effect": "Allow","Resource": "arn:aws:s3:::bucketname","Principal": { "CanonicalUser": "userid" } }]}'
       ]);
       printf("RequestId:%s\n", $resp['RequestId']);
}catch (Obs\Common\ObsException $obsException){
       printf("ExceptionCode:%s\n", $obsException->getExceptionCode());
       printf("ExceptionMessage:%s\n", $obsException->getExceptionMessage());
}

The bucket name contained in the Resource field in Policy must be the one specified for the bucket policy.