Spouštění příkazů PowerShellu s přihlašovacími údaji Microsoft Entra pro přístup k datům objektů blob

Azure Storage poskytuje rozšíření pro PowerShell, která umožňují přihlásit se a spouštět skriptovací příkazy pomocí přihlašovacích údajů Microsoft Entra. Když se přihlásíte k PowerShellu pomocí přihlašovacích údajů Microsoft Entra, vrátí se přístupový token OAuth 2.0. Tento token automaticky používá PowerShell k autorizaci následných operací s daty v úložišti objektů blob. 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.

Podporované operace

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 PowerShellu. Oprávnění ke kontejnerům Azure Storage se přiřazují prostřednictvím Azure RBAC. Pokud jste například přiřadili roli Čtenář dat objektů blob, můžete spustit skriptovací příkazy, které čtou data z kontejneru. Pokud máte přiřazenou roli Přispěvatel dat objektů blob, můžete spustit skriptovací příkazy, které čtou, zapisují nebo odstraňují kontejner nebo data, která obsahují.

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.

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 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. V PowerShellu -UseConnectedAccount zahrňte parametr pro vytvoření objektu AzureStorageContext s přihlašovacími údaji Microsoft Entra.

Volání příkazů PowerShellu pomocí přihlašovacích údajů Microsoft Entra

Pokud chcete použít Azure PowerShell k přihlášení a spuštění následných operací se službou Azure Storage pomocí přihlašovacích údajů Microsoft Entra, vytvořte kontext úložiště pro odkaz na účet úložiště a zahrňte parametr -UseConnectedAccount .

Následující příklad ukazuje, jak vytvořit kontejner v novém účtu úložiště z Azure PowerShellu pomocí přihlašovacích údajů Microsoft Entra. Nezapomeňte nahradit zástupné hodnoty v hranatých závorkách vlastními hodnotami:

  1. Přihlaste se ke svému účtu Azure pomocí příkazu Připojení-AzAccount:

    Connect-AzAccount
    

    Další informace o přihlašování k Azure pomocí PowerShellu najdete v tématu Přihlášení pomocí Azure PowerShellu.

  2. Vytvořte skupinu prostředků Azure voláním rutiny New-AzResourceGroup.

    $resourceGroup = "sample-resource-group-ps"
    $location = "eastus"
    New-AzResourceGroup -Name $resourceGroup -Location $location
    
  3. Vytvořte účet úložiště voláním New-AzStorageAccount.

    $storageAccount = New-AzStorageAccount -ResourceGroupName $resourceGroup `
      -Name "<storage-account>" `
      -SkuName Standard_LRS `
      -Location $location `
      -AllowBlobPublicAccess $false
    
  4. Získejte kontext účtu úložiště, který určuje nový účet úložiště voláním New-AzStorageContext. Při práci s účtem úložiště můžete místo opakovaného předávání přihlašovacích údajů odkazovat na kontext. Pomocí přihlašovacích údajů Microsoft Entra zahrňte parametr, -UseConnectedAccount který bude volat všechny následné operace s daty:

    $ctx = New-AzStorageContext -StorageAccountName "<storage-account>" -UseConnectedAccount
    
  5. 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.

  6. Vytvořte kontejner voláním New-AzStorageContainer. Vzhledem k tomu, že toto volání používá kontext vytvořený v předchozích krocích, kontejner se vytvoří pomocí přihlašovacích údajů Microsoft Entra.

    $containerName = "sample-container"
    New-AzStorageContainer -Name $containerName -Context $ctx
    

Další kroky