AmazonS3Client.PutACL Method (PutACLRequest)

.NET Framework 4.5
 
 
 
Did this page help you?  Yes  No   Tell us about it...

uses the acl subresource to set the access control list (ACL) permissions for an object that already exists in a bucket

Namespace: Amazon.S3
Assembly: AWSSDK.dll
Version: 2.0.0.3

Syntax

C#
public virtual PutACLResponse PutACL(
         PutACLRequest request
)

Parameters

request
Type: Amazon.S3.Model.PutACLRequest

Return Value
Type: Amazon.S3.Model.PutACLResponse

Examples

This example shows how to set a canned ACL on an object, first to PublicRead, then back to Private.

PutACL sample 1


// Create a client
AmazonS3Client client = new AmazonS3Client();

// Set Canned ACL (PublicRead) for an existing item
client.PutACL(new PutACLRequest
{
    BucketName = "SampleBucket",
    Key = "Item1",
    CannedACL = S3CannedACL.PublicRead
});

// Set Canned ACL (PublicRead) for an existing item
// (This reverts ACL back to default for object)
client.PutACL(new PutACLRequest
{
    BucketName = "SampleBucket",
    Key = "Item1",
    CannedACL = S3CannedACL.Private
});

                

This example shows how to get and set ACLs on an object.

GetACL\PutACL samples


// Create a client
AmazonS3Client client = new AmazonS3Client();

// Retrieve ACL for object
S3AccessControlList acl = client.GetACL(new GetACLRequest
{
    BucketName = "SampleBucket",
    Key = "Item1",
}).AccessControlList;

// Retrieve owner
Owner owner = acl.Owner;


// Describe grant
S3Grant grant = new S3Grant
{
    Grantee = new S3Grantee { EmailAddress = "sample@example.com" },
    Permission = S3Permission.WRITE_ACP
};

// Create new ACL
S3AccessControlList newAcl = new S3AccessControlList
{
    Grants = new List<S3Grant> { grant },
    Owner = owner
};

// Set new ACL
PutACLResponse response = client.PutACL(new PutACLRequest
{
    BucketName = "SampleBucket",
    Key = "Item1",
    AccessControlList = acl
});

                

Version Information

.NET Framework:
Supported in: 4.5, 4.0, 3.5