Výběr způsobu autorizace přístupu k datům v objektech blob s využitím Azure CLI

Azure Storage poskytuje rozšíření pro Azure CLI, která umožňují určit, jak chcete autorizovat operace s daty objektů blob. Operace s daty můžete autorizovat následujícími způsoby:

  • S objektem zabezpečení Microsoft Entra. Microsoft doporučuje používat přihlašovací údaje Microsoft Entra pro zajištění vyššího zabezpečení a snadného použití.
  • S přístupovým klíčem účtu nebo tokenem sdíleného přístupového podpisu (SAS).

Určení způsobu autorizace datových operací

Příkazy Azure CLI pro čtení a zápis dat objektů blob zahrnují volitelný --auth-mode parametr. Zadáním tohoto parametru určete, jak má být datová operace autorizovaná:

  • --auth-mode Nastavte parametr pro login přihlášení pomocí objektu zabezpečení Microsoft Entra (doporučeno).
  • --auth-mode Nastavte parametr na starší key hodnotu a pokuste se načíst přístupový klíč účtu, který se má použít k autorizaci. Pokud parametr vynecháte --auth-mode , azure CLI se také pokusí načíst přístupový klíč.

Pokud chcete použít --auth-mode parametr, ujistěte se, že jste nainstalovali Azure CLI verze 2.0.46 nebo novější. Spusťte kontrolu az --version nainstalované verze.

Poznámka:

Pokud je účet úložiště uzamčený zámkem Jen pro čtení Azure Resource Manageru, operace Výpis klíčů není pro tento účet úložiště povolená. Seznam klíčů je operace POST a všechny operace POST jsou znemožněné, pokud je pro účet nakonfigurovaný zámek Jen pro čtení . Z tohoto důvodu, když je účet uzamčen pomocí zámku ReadOnly , uživatelé, kteří ještě nemají klíče účtu, musí pro přístup k datům objektů blob používat přihlašovací údaje Microsoft Entra.

Důležité

Pokud parametr vynecháte --auth-mode nebo ho nastavíte key, azure CLI se pokusí pro autorizaci použít přístupový klíč účtu. V takovém případě microsoft doporučuje zadat přístupový klíč buď v příkazu, nebo v proměnné prostředí AZURE_STORAGE_KEY . Další informace oproměnných

Pokud přístupový klíč nezadáte, azure CLI se pokusí volat poskytovatele prostředků Azure Storage, aby ho načetl pro každou operaci. Provádění mnoha datových operací, které vyžadují volání poskytovatele prostředků, může vést k omezování. Další informace o omezeních poskytovatele prostředků najdete v tématu Škálovatelnost a výkonnostní cíle pro poskytovatele prostředků Azure Storage.

Autorizace pomocí přihlašovacích údajů Microsoft Entra

Když se přihlásíte k Azure CLI pomocí přihlašovacích údajů Microsoft Entra, vrátí se přístupový token OAuth 2.0. Azure CLI tento token automaticky používá k autorizaci následných operací s daty vůči službě Blob Storage nebo Queue Storage. V případě podporovaných operací už s příkazem nemusíte předávat klíč účtu nebo token SAS.

Oprávnění k datům objektů blob můžete přiřadit k objektu zabezpečení Microsoft Entra prostřednictvím řízení přístupu na základě role v Azure (Azure RBAC). Další informace o rolích Azure ve službě Azure Storage najdete v tématu Přiřazení role Azure pro přístup k datům objektů blob.

Oprávnění pro volání datových operací

Rozšíření Azure Storage se podporují pro operace s daty objektů blob. Které operace, které můžete volat, závisí na oprávněních udělených objektu zabezpečení Microsoft Entra, pomocí kterého se přihlašujete k Azure CLI. Oprávnění ke kontejnerům Azure Storage se přiřazují prostřednictvím Azure RBAC. Pokud máte například přiřazenou roli Čtenář dat objektů blob služby Storage, můžete spustit skriptovací příkazy, které čtou data z kontejneru. Pokud máte přiřazenou roli Přispěvatel dat objektů blob služby Storage, můžete spustit skriptovací příkazy, které čtou, zapisují nebo odstraňují kontejner nebo data, která obsahuje.

Podrobnosti o oprávněních požadovaných pro každou operaci Azure Storage v kontejneru najdete v tématu Volání operací úložiště s tokeny OAuth.

Příklad: Autorizace operace pro vytvoření kontejneru pomocí přihlašovacích údajů Microsoft Entra

Následující příklad ukazuje, jak vytvořit kontejner z Azure CLI pomocí přihlašovacích údajů Microsoft Entra. Pokud chcete vytvořit kontejner, budete se muset přihlásit k Azure CLI a budete potřebovat skupinu prostředků a účet úložiště. Informace o vytváření těchto prostředků najdete v tématu Rychlý start: Vytvoření, stažení a výpis objektů blob pomocí Azure CLI.

  1. Před vytvořením kontejneru přiřaďte roli Přispěvatel dat objektů blob služby Storage sami sobě. I když jste vlastníkem účtu, potřebujete explicitní oprávnění k provádění operací s daty s účtem úložiště. Další informace o přiřazování rolí Azure najdete v tématu Přiřazení role Azure pro přístup k datům objektů blob.

    Důležité

    Rozšíření přiřazení rolí Azure může trvat několik minut.

  2. Volání příkazu az storage container create s parametrem --auth-mode nastaveným na login vytvoření kontejneru pomocí přihlašovacích údajů Microsoft Entra. Nezapomeňte nahradit zástupné hodnoty v hranatých závorkách vlastními hodnotami:

    az storage container create \
        --account-name <storage-account> \
        --name sample-container \
        --auth-mode login
    

Autorizace pomocí přístupového klíče účtu

Pokud máte klíč účtu, můžete volat jakoukoli operaci s daty Azure Storage. Obecně platí, že použití klíče účtu je méně bezpečné. Pokud dojde k ohrožení zabezpečení klíče účtu, můžou být ohrožena všechna data ve vašem účtu.

Následující příklad ukazuje, jak vytvořit kontejner pomocí přístupového klíče účtu. Zadejte klíč účtu a zadejte --auth-mode parametr s key hodnotou:

az storage container create \
    --account-name <storage-account> \
    --name sample-container \
    --account-key <key>
    --auth-mode key

Důležité

Pokud je účet úložiště uzamčený zámkem Jen pro čtení Azure Resource Manageru, operace Výpis klíčů není pro tento účet úložiště povolená. Seznam klíčů je operace POST a všechny operace POST jsou znemožněné, pokud je pro účet nakonfigurovaný zámek Jen pro čtení . Z tohoto důvodu, když je účet uzamčen pomocí zámku Jen pro čtení , musí uživatelé přistupovat k datům pomocí přihlašovacích údajů Microsoft Entra.

Autorizace pomocí tokenu SAS

Pokud máte token SAS, můžete volat datové operace, které jsou povolené sasem. Následující příklad ukazuje, jak vytvořit kontejner pomocí tokenu SAS:

az storage container create \
    --account-name <storage-account> \
    --name sample-container \
    --sas-token <token>

Nastavení proměnných prostředí pro parametry autorizace

Parametry autorizace můžete zadat v proměnných prostředí, abyste se vyhnuli jejich zahrnutí do každého volání datové operace Azure Storage. Následující tabulka popisuje dostupné proměnné prostředí.

Proměnná prostředí Popis
AZURE_STORAGE_ACCOUNT Název účtu úložiště. Tato proměnná by se měla používat ve spojení s klíčem účtu úložiště nebo tokenem SAS. Pokud žádný není k dispozici, Azure CLI se pokusí načíst přístupový klíč účtu úložiště pomocí ověřeného účtu Microsoft Entra. Pokud se najednou spustí velký počet příkazů, může být dosaženo limitu omezování poskytovatele prostředků Azure Storage. Další informace o omezeních poskytovatele prostředků najdete v tématu Škálovatelnost a výkonnostní cíle pro poskytovatele prostředků Azure Storage.
AZURE_STORAGE_KEY Klíč účtu úložiště. Tato proměnná se musí používat ve spojení s názvem účtu úložiště.
AZURE_STORAGE_CONNECTION_STRING Připojovací řetězec, který zahrnuje klíč účtu úložiště nebo token SAS. Tato proměnná se musí používat ve spojení s názvem účtu úložiště.
AZURE_STORAGE_SAS_TOKEN Token sdíleného přístupového podpisu (SAS). Tato proměnná se musí používat ve spojení s názvem účtu úložiště.
AZURE_STORAGE_AUTH_MODE Režim autorizace, pomocí kterého se má příkaz spustit. Povolené hodnoty jsou login (doporučeno) nebo key. Pokud zadáte login, Azure CLI použije vaše přihlašovací údaje Microsoft Entra k autorizaci operace s daty. Pokud zadáte starší key verzi režimu, Azure CLI se pokusí zadat dotaz na přístupový klíč účtu a autorizovat příkaz s klíčem.

Další kroky