S3Control / Client / put_bucket_policy
put_bucket_policy#
- S3Control.Client.put_bucket_policy(**kwargs)#
- Note - This action puts a bucket policy to an Amazon S3 on Outposts bucket. To put a policy on an S3 bucket, see PutBucketPolicy in the Amazon S3 API Reference . - Applies an Amazon S3 bucket policy to an Outposts bucket. For more information, see Using Amazon S3 on Outposts in the Amazon S3 User Guide . - If you are using an identity other than the root user of the Amazon Web Services account that owns the Outposts bucket, the calling identity must have the - PutBucketPolicypermissions on the specified Outposts bucket and belong to the bucket owner’s account in order to use this action.- If you don’t have - PutBucketPolicypermissions, Amazon S3 returns a- 403 Access Deniederror. If you have the correct permissions, but you’re not using an identity that belongs to the bucket owner’s account, Amazon S3 returns a- 405 Method Not Allowederror.- Warning - As a security precaution, the root user of the Amazon Web Services account that owns a bucket can always use this action, even if the policy explicitly denies the root user the ability to perform this action. - For more information about bucket policies, see Using Bucket Policies and User Policies. - All Amazon S3 on Outposts REST API requests for this action require an additional parameter of - x-amz-outpost-idto be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of- s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the- x-amz-outpost-idderived by using the access point ARN, see the Examples section.- The following actions are related to - PutBucketPolicy:- See also: AWS API Documentation - Request Syntax - response = client.put_bucket_policy( AccountId='string', Bucket='string', ConfirmRemoveSelfBucketAccess=True|False, Policy='string' ) - Parameters:
- AccountId (string) – - [REQUIRED] - The Amazon Web Services account ID of the Outposts bucket. 
- Bucket (string) – - [REQUIRED] - Specifies the bucket. - For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well. - For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format - arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/bucket/<my-bucket-name>. For example, to access the bucket- reportsthrough Outpost- my-outpostowned by account- 123456789012in Region- us-west-2, use the URL encoding of- arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.
- ConfirmRemoveSelfBucketAccess (boolean) – - Set this parameter to true to confirm that you want to remove your permissions to change this bucket policy in the future. - Note - This is not supported by Amazon S3 on Outposts buckets. 
- Policy (string) – - [REQUIRED] - The bucket policy as a JSON document. 
 
- Returns:
- None