(0) exportieren Drucken
Alle erweitern

CloudBlobContainer.SetPermissions-Methode (BlobContainerPermissions, BlobRequestOptions)

Sets permissions for the container.

Namespace: Microsoft.WindowsAzure.StorageClient
Assembly: Microsoft.WindowsAzure.StorageClient (in microsoft.windowsazure.storageclient.dll)

Dim instance As CloudBlobContainer
Dim permissions As BlobContainerPermissions
Dim options As BlobRequestOptions

instance.SetPermissions(permissions, options)

public void SetPermissions (
	BlobContainerPermissions permissions,
	BlobRequestOptions options
public void SetPermissions (
	BlobContainerPermissions permissions, 
	BlobRequestOptions options
public function SetPermissions (
	permissions : BlobContainerPermissions, 
	options : BlobRequestOptions



The permissions to apply to the container.


An object that specifies any additional options for the request.

The following code example sets both public access permissions and a container-level access policy on the container. The example then generates a shared access signature for the container.

static void CreateSAS()
    //Retrieve storage account information from an app.config file.
    //This is one way to store and retrieve a connection string if you are writing an application 
    //that will run locally, rather than in Windows Azure.
    CloudStorageAccount storageAccount = CloudStorageAccount.Parse(ConfigurationManager.AppSettings["StorageAccountConnectionString"]);

    //Create the blob client object.
    CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();

    //Get a reference to the container for which the shared access signature will be created.
    CloudBlobContainer container = blobClient.GetContainerReference("mysascontainer");

    //Create a permission policy to set the public access setting for the container. 
    BlobContainerPermissions containerPermissions = new BlobContainerPermissions();

    //The public access setting explicitly specifies that the container is private, so that it can't be accessed anonymously.
    containerPermissions.PublicAccess = BlobContainerPublicAccessType.Off;

    //Set the permission policy on the container.

    // Get the shared access signature to share with users, specifying a signature-level access policy.
    string sas = container.GetSharedAccessSignature(new SharedAccessPolicy()
        SharedAccessStartTime = DateTime.Now,
        SharedAccessExpiryTime = DateTime.Now.AddHours(10),
        Permissions = SharedAccessPermissions.Write | SharedAccessPermissions.Read

    //The shared access signature then can be used to create a service client. 
    //This code would likely be run from a different client, but is included here to 
    //demonstrate how to consume the shared access signature.

    //Create the blob client directly, using the shared access signature
    CloudBlobClient sasBlobClient = new CloudBlobClient(storageAccount.BlobEndpoint,
        new StorageCredentialsSharedAccessSignature(sas));

    //Return a reference to a blob.
    CloudBlob blob = sasBlobClient.GetBlobReference("mysascontainer/myblob.txt");

    //Upload text to the blob. If the blob does not yet exist, it will be created. If the blob does exist, its existing
    //content will be overwritten.
    blob.UploadText("Write to a blob using shared access credentials.");

The SetPermissions method sets two types of permissions for the container:

  • Public access permissions, which determine whether container data and blob resources are available for anonymous access.

  • Container-level access policies, which can be used to specify parameters for a shared access signature for the container.

Alle öffentlichen statischen (freigegebenen in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.


Windows XP Home Edition, Windows XP Professional, Windows Server 2003, Windows Server 2008 und Windows 2000



© 2014 Microsoft