AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.
This is the response object from the PutBucketPolicy operation.
Namespace: Amazon.S3.Model
Assembly: AWSSDK.S3.dll
Version: 3.x.y.z
public class PutBucketPolicyResponse : AmazonWebServiceResponse
The PutBucketPolicyResponse type exposes the following members
| Name | Description | |
|---|---|---|
|   | PutBucketPolicyResponse() | 
| Name | Type | Description | |
|---|---|---|---|
|   | ContentLength | System.Int64 | Inherited from Amazon.Runtime.AmazonWebServiceResponse. | 
|   | HttpStatusCode | System.Net.HttpStatusCode | Inherited from Amazon.Runtime.AmazonWebServiceResponse. | 
|   | ResponseMetadata | Amazon.Runtime.ResponseMetadata | Inherited from Amazon.Runtime.AmazonWebServiceResponse. | 
This example shows how to Get, Put and Delete bucket policies.
                // Create a client
                AmazonS3Client client = new AmazonS3Client();
                // Put sample bucket policy (overwrite an existing policy)
                string newPolicy = @"{ 
    ""Statement"":[{ 
    ""Sid"":""BasicPerms"", 
    ""Effect"":""Allow"", 
    ""Principal"": ""*"", 
    ""Action"":[""s3:PutObject"",""s3:GetObject""], 
    ""Resource"":[""arn:aws:s3:::amzn-s3-demo-bucketname/*""] 
}]}";
                PutBucketPolicyRequest putRequest = new PutBucketPolicyRequest
                {
                    BucketName = "amzn-s3-demo-bucket",
                    Policy = newPolicy
                };
                await client.PutBucketPolicyAsync(putRequest);
                // Retrieve current policy
                GetBucketPolicyRequest getRequest = new GetBucketPolicyRequest
                {
                    BucketName = "amzn-s3-demo-bucket"
                };
                string policy = (await client.GetBucketPolicyAsync(getRequest)).Policy;
                Console.WriteLine(policy);
                Debug.Assert(policy.Contains("BasicPerms"));
                // Delete current policy
                DeleteBucketPolicyRequest deleteRequest = new DeleteBucketPolicyRequest
                {
                    BucketName = "amzn-s3-demo-bucket"
                };
                await client.DeleteBucketPolicyAsync(deleteRequest);
                // Retrieve current policy and verify that it is null
                policy = (await client.GetBucketPolicyAsync(getRequest)).Policy;
                Debug.Assert(policy == null);
                
.NET: 
Supported in: 8.0 and newer, Core 3.1
.NET Standard: 
Supported in: 2.0
.NET Framework: 
Supported in: 4.7.2 and newer