Run PowerShell commands with Microsoft Entra credentials to access queue data

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. That token is automatically used by PowerShell to authorize subsequent data operations against Queue Storage. V případě podporovaných operací už s příkazem nemusíte předávat klíč účtu nebo token SAS.

You can assign permissions to queue data to a Microsoft Entra security principal via Azure role-based access control (Azure RBAC). For more information about Azure roles in Azure Storage, see Manage access rights to Azure Storage data with Azure RBAC.

Podporované operace

The Azure Storage extensions are supported for operations on queue data. Which operations you may call depends on the permissions granted to the Microsoft Entra security principal with which you sign in to PowerShell. Permissions to queues are assigned via Azure RBAC. For example, if you have been assigned the Queue Data Reader role, then you can run scripting commands that read data from a queue. If you have been assigned the Queue Data Contributor role, then you can run scripting commands that read, write, or delete a queue or the data they contain.

For details about the permissions required for each Azure Storage operation on a queue, see Call storage operations with OAuth tokens.

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í . For this reason, when the account is locked with a ReadOnly lock, users who do not already possess the account keys must use Microsoft Entra credentials to access queue data. 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

Poznámka:

K interakci s Azure doporučujeme použít modul Azure Az PowerShell. Pokud chcete začít, přečtěte si téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.

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 .

The following example shows how to create a queue in a new storage account from Azure PowerShell using your Microsoft Entra credentials. 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 Connect-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 pomocí příkazu 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 `
    
  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 pro volání jakékoliv další operace s daty:

    $ctx = New-AzStorageContext -StorageAccountName "<storage-account>" -UseConnectedAccount
    
  5. Before you create the queue, assign the Storage Queue Data Contributor role to yourself. I když jste vlastníkem účtu, potřebujete explicitní oprávnění k provádění operací s daty s účtem úložiště. For more information about assigning Azure roles, see Assign an Azure role for access to queue data.

    Důležité

    Azure role assignments may take a few minutes to propagate.

  6. Create a queue by calling New-AzStorageQueue. Because this call uses the context created in the previous steps, the queue is created using your Microsoft Entra credentials.

    $queueName = "sample-queue"
    New-AzStorageQueue -Name $queueName -Context $ctx
    

Další kroky