Číst v angličtině

Sdílet prostřednictvím


Vytvoření uložených zásad přístupu pomocí .NET

Uložené zásady přístupu poskytují další úroveň kontroly nad sdílenými přístupovými podpisy na úrovni služby (SAS) na straně serveru. Definování uložených zásad přístupu slouží k seskupení sdílených přístupových podpisů a k poskytnutí dalších omezení pro sdílené přístupové podpisy, které jsou vázány zásadou. Uložené zásady přístupu můžete použít ke změně času spuštění, doby vypršení platnosti nebo oprávnění sas nebo k jeho odvolání po jeho vydání.

Následující prostředky Azure Storage podporují uložené zásady přístupu:

  • Kontejnery objektů blob
  • Sdílené složky
  • Fronty
  • Tabulky

Poznámka

Uložené zásady přístupu v kontejneru můžou být přidružené ke sdílenému přístupovém podpisu, který uděluje oprávnění k samotnému kontejneru nebo objektům blob, které obsahuje. Podobně se uložené zásady přístupu ve sdílené složce dají přidružit ke sdílenému přístupovém podpisu, který uděluje oprávnění k samotné sdílené složce nebo k souborům, které obsahuje.

Zásady uloženého přístupu jsou podporovány pouze pro sdílený přístupový podpis služby. Zásady uloženého přístupu nejsou podporované pro SAS účtu ani SAS delegování uživatele.

Další informace o uloženýchzásadách

Vytvoření uložených zásad přístupu

Základní operací REST pro vytvoření uložených zásad přístupu je Nastavit seznam ACL kontejneru. Operaci musíte autorizovat k vytvoření uložených zásad přístupu prostřednictvím sdíleného klíče pomocí přístupových klíčů účtu v připojovací řetězec. Autorizace operace Nastavit seznam ACL kontejneru pomocí přihlašovacích údajů Microsoft Entra se nepodporuje. Další informace najdete v tématu Oprávnění pro volání datových operací.

Následující příklady kódu vytvoří uložené zásady přístupu v kontejneru. Zásady přístupu můžete použít k určení omezení sas služby v kontejneru nebo jeho objektech blob.

Pokud chcete vytvořit uložené zásady přístupu v kontejneru s verzí 12 klientské knihovny .NET pro Azure Storage, zavolejte jednu z následujících metod:

Následující příklad vytvoří uloženou zásadu přístupu, která platí pro jeden den a uděluje oprávnění ke čtení a zápisu:

C#
async static Task CreateStoredAccessPolicyAsync(string containerName)
{
    string connectionString = "";

    // Use the connection string to authorize the operation to create the access policy.
    // Azure AD does not support the Set Container ACL operation that creates the policy.
    BlobContainerClient containerClient = new BlobContainerClient(connectionString, containerName);

    try
    {
        await containerClient.CreateIfNotExistsAsync();

        // Create one or more stored access policies.
        List<BlobSignedIdentifier> signedIdentifiers = new List<BlobSignedIdentifier>
        {
            new BlobSignedIdentifier
            {
                Id = "mysignedidentifier",
                AccessPolicy = new BlobAccessPolicy
                {
                    StartsOn = DateTimeOffset.UtcNow.AddHours(-1),
                    ExpiresOn = DateTimeOffset.UtcNow.AddDays(1),
                    Permissions = "rw"
                }
            }
        };
        // Set the container's access policy.
        await containerClient.SetAccessPolicyAsync(permissions: signedIdentifiers);
    }
    catch (RequestFailedException e)
    {
        Console.WriteLine(e.ErrorCode);
        Console.WriteLine(e.Message);
    }
    finally
    {
        await containerClient.DeleteAsync();
    }
}

Viz také

Zdroje informací

Související ukázky kódu s využitím zastaralých sad .NET verze 11.x najdete v ukázkách kódu pomocí .NET verze 11.x.