Setting Access Control for Containers
Setting Access Control for Containers

By default, a container and any blobs within it may be accessed only by the owner of the storage account. If you want to give anonymous users read permissions to a container and its blobs, you can set the access control list (ACL) for the container to allow public access. Anonymous users can read blobs within a publicly accessible container without authenticating the request.

Beginning with the 2009-09-19 version, the container ACL provides the following options for managing container access:

  • Full public read access: Container and blob data can be read via anonymous request. Clients can enumerate blobs within the container via anonymous request, but cannot enumerate containers within the storage account.

  • Public read access for blobs only: Blob data within this container can be read via anonymous request, but container data is not available. Clients cannot enumerate blobs within the container via anonymous request.

  • No public read access: Container and blob data can be read by the account owner only.

If a container is made public using the 2009-09-19 version of Set Container ACL, then all anonymous read access to the container and its resources will use the 2009-09-19 read operations. If a container was made public using a version of Set Container ACL prior to 2009-09-19, then all anonymous read access to the container and its resources will use the use the pre-release default read operations.

noteNote
If your service requires that you exercise more granular control over blob resources, or if you wish to provide permissions for operations other than read operations, you can use a Shared Access Signature to make a resource accessible to users. See Creating a Shared Access Signature for more information.

The following table shows which operations may be called by anonymous users when a container's ACL is set to allow public access.

 

Operation Permission with full public read access Permission with public read access for blobs only

List Containers

Owner only

Owner only

Create Container

Owner only

Owner only

Get Container Properties

All

Owner only

Get Container Metadata

All

Owner only

Set Container Metadata

Owner only

Owner only

Get Container ACL

Owner only

Owner only

Set Container ACL

Owner only

Owner only

Delete Container

Owner only

Owner only

List Blobs

All

Owner only

Put Blob

Owner only

Owner only

Get Blob

All

All

Get Blob Properties

All

All

Set Blob Properties

Owner only

Owner only

Get Blob Metadata

All

All

Set Blob Metadata

Owner only

Owner only

Put Block

Owner only

Owner only

Get Block List (committed blocks only)

All

All

Get Block List (uncommitted blocks only or all blocks)

Owner only

Owner only

Put Block List

Owner only

Owner only

Delete Blob

Owner only

Owner only

Copy Blob

Owner only

Owner only

Snapshot Blob

Owner only

Owner only

Lease Blob

Owner only

Owner only

Put Page

Owner only

Owner only

Get Page Regions

All

All

See Also

© 2009 Microsoft Corporation. All rights reserved.   Terms of Use | Trademarks | Privacy Statement
Page view tracker
Rate the Lightweight library
x
Lightweight builds on ScriptFree (loband) by adding features you've requested: a SearchBox and default code language selection.
Do you like the SearchBox?
Do you like the tabbed code blocks?
How useful is this topic?
Tell us more.
Thanks
x
You're helping to improve MSDN Online.
Feedback
Switch View
Classic
Lightweight Beta
ScriptFree
Switch View