セールス: 1-800-867-1380

CloudBlobContainer.SetPermissions メソッド

コンテナーのアクセス許可を設定します。

名前空間: Microsoft.WindowsAzure.StorageClient
アセンブリ: Microsoft.WindowsAzure.StorageClient (Microsoft.WindowsAzure.StorageClient 内)

'使用
Dim instance As CloudBlobContainer
Dim permissions As BlobContainerPermissions

instance.SetPermissions(permissions)

'宣言
Public Sub SetPermissions ( _
	permissions As BlobContainerPermissions _
)
public void SetPermissions (
	BlobContainerPermissions permissions
)
public function SetPermissions (
	permissions : BlobContainerPermissions
)

パラメーター

permissions

コンテナーに適用するアクセス許可。

パブリック アクセスのアクセス許可とコンテナー レベルのアクセス ポリシーの両方をコンテナーに設定するコード例を次に示します。 その後、コンテナーの共有アクセス署名を生成します。

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");
    container.CreateIfNotExist();

    //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.
    container.SetPermissions(containerPermissions);

    // 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.");
}


SetPermissions メソッドは、2 種類のアクセス許可をコンテナーに設定します。

  • パブリック アクセスのアクセス許可。コンテナーのデータおよび BLOB リソースを匿名アクセスで利用できるかどうかを決定します。

  • コンテナー レベルのアクセス ポリシー。コンテナーの共有アクセス署名のパラメーターを指定するために使用できます。


この型の public static (Visual Basic では Shared) メンバーは、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

開発プラットフォーム

Windows XP Home Edition, Windows XP Professional, Windows Server 2003、Windows Server 2008、および Windows 2000

対象プラットフォーム

この情報は役に立ちましたか。
(残り 1500 文字)
フィードバックをいただき、ありがとうございました

コミュニティの追加

表示:
© 2014 Microsoft