Partager via


Choisir comment autoriser l’accès à des données de file d’attente avec Azure CLI

Le service Stockage Azure fournit des extensions pour Azure CLI qui vous permettent de spécifier comment autoriser des opérations sur des données de file d’attente. Vous pouvez autoriser des opérations de données des manières suivantes :

  • Avec un principal de sécurité Microsoft Entra. Microsoft recommande d’utiliser des informations d’identification Microsoft Entra pour une meilleure sécurité et une plus grande facilité d’utilisation.
  • Avec la clé d’accès au compte ou un jeton de signature d’accès partagé (SAP).

Spécifier la façon dont les opérations de données sont autorisées

Les commandes Azure CLI pour la lecture et l’écriture de données de file d’attente incluent le paramètre facultatif --auth-mode. Spécifiez-le pour indiquer comment une opération de données doit être autorisée :

  • Définissez le paramètre --auth-mode sur login pour vous connecter en utilisant un principal de sécurité Microsoft Entra (recommandé).
  • Définissez le paramètre --auth-mode sur la valeur key héritée pour tenter de récupérer la clé d’accès au compte à utiliser pour l’autorisation. Si vous omettez le paramètre --auth-mode, Azure CLI tente également de récupérer la clé d’accès.

Pour utiliser le paramètre --auth-mode, assurez-vous qu’Azure CLI 2.0.46 ou une version ultérieure est installé. Exécutez az --version pour vérifier la version installée.

Notes

Quand un compte de stockage est verrouillé à l’aide d’un verrou ReadOnly Azure Resource Manager, l’opération Répertorier les clés n’est pas autorisée pour ce compte de stockage. Répertorier les clés est une opération POST, et toutes les opérations POST sont empêchées lorsqu’un verrou ReadOnly est configuré pour le compte. Ainsi, quand le compte est verrouillé avec un verrou ReadOnly, les utilisateurs qui ne détiennent pas déjà les clés de compte doivent utiliser des informations d’identification Microsoft Entra pour accéder aux données de file d’attente.

Important

Si vous omettez le paramètre --auth-mode ou si vous le définissez sur key, Azure CLI tente d’utiliser la clé d’accès au compte pour l’autorisation. Dans ce cas, Microsoft recommande de fournir la clé d’accès sur la commande ou dans la variable d’environnement AZURE_STORAGE_KEY. Pour plus d’informations sur les variables d’environnement, voir la section intitulée Définir des variables d’environnement pour les paramètres d’autorisation.

Si vous ne fournissez pas la clé d’accès, Azure CLI tente d’appeler le fournisseur de ressources de Stockage Azure afin de le récupérer pour chaque opération. L’exécution de nombreuses opérations de données nécessitant un appel au fournisseur de ressources peut entraîner une limitation. Pour plus d’informations sur les limites du fournisseur de ressources, voir Objectifs de scalabilité et de performances pour le fournisseur de ressources de Stockage Azure.

Autoriser avec des informations d’identification Microsoft Entra

Quand vous vous connectez à Azure CLI avec des informations d’identification Microsoft Entra, un jeton d’accès OAuth 2.0 est retourné. Ce jeton est utilisé automatiquement par Azure CLI pour autoriser les opérations de données suivantes sur Stockage File d’attente. Pour les opérations prises en charge, vous n’avez plus besoin de fournir une clé de compte ou le jeton SAP avec la commande.

Vous pouvez attribuer des autorisations sur les données de file d’attente à un principal de sécurité Microsoft Entra via le contrôle d’accès en fonction du rôle Azure (Azure RBAC). Pour plus d’informations sur les rôles Azure dans Stockage Azure, consultez Gérer les droits d’accès aux données Stockage Azure avec Azure RBAC.

Autorisations pour appeler des opérations de données

Les extensions Stockage Azure sont prises en charge pour les opérations sur les données en file d’attente. Les opérations que vous pouvez appeler dépendent des autorisations accordées au principal de sécurité Microsoft Entra avec lequel vous vous connectez à Azure CLI. Les autorisations sur les files d’attente sont attribuées via Azure RBAC. Par exemple, si le rôle Lecteur des données en file d’attente du stockage vous a été attribué, vous pouvez exécuter des commandes de script qui lisent les données d’une file d’attente. Si le rôle Contributeur aux données en file d’attente du stockage vous a été attribué, vous pouvez exécuter des commandes de script qui lisent, écrivent ou suppriment une file d’attente ou les données qu’elle contient.

Pour plus d’informations sur les autorisations requises pour chaque opération Stockage Azure sur une file d’attente, consultez Appeler des opérations de stockage avec des jetons OAuth.

Exemple : autoriser une opération à créer une file d’attente avec les informations d’identification Microsoft Entra

L’exemple suivant montre comment créer une file d’attente à partir d’Azure CLI à l’aide de vos informations d’identification Microsoft Entra. Pour créer la file d’attente, vous devez vous connecter à Azure CLI et vous avez besoin d’un groupe de ressources et d’un compte de stockage.

  1. Avant de créer la file d’attente, attribuez-vous le rôle Contributeur aux données en file d’attente du stockage. Même si vous êtes le propriétaire du compte, vous avez besoin d’autorisations explicites pour effectuer des opérations de données sur le compte de stockage. Pour plus d’informations sur l’attribution de rôles Azure, consultez Attribuer un rôle Azure pour l’accès aux données de file d’attente.

    Important

    La propagation des attributions de rôles Azure peut prendre plusieurs minutes.

  2. Appelez la commande az storage queue create avec le paramètre --auth-mode défini sur login pour créer la file d’attente à l’aide de vos informations d’identification Microsoft Entra. N’oubliez pas de remplacer les valeurs d’espace réservé entre crochets par vos propres valeurs :

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

Autoriser avec la clé d’accès au compte

Si vous possédez la clé de compte, vous pouvez appeler toute opération de données Azure Storage. En général, l’utilisation de la clé de compte est moins sécurisée. Si la clé de compte est compromise, toutes les données de votre compte peuvent l’être également.

L’exemple suivant montre comment créer une file d’attente à l’aide de la clé d’accès au compte. Spécifiez la clé de compte et fournissez le paramètre --auth-mode avec la valeur key :

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

Autoriser avec un jeton SAP

Si vous possédez un jeton SAP, vous pouvez appeler des opérations de données autorisées par la signature d’accès partagé. L’exemple suivant montre comment créer une file d’attente à l’aide d’un jeton SAP :

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

Définir des variables d’environnement pour les paramètres d’autorisation

Vous pouvez spécifier des paramètres d’autorisation dans des variables d’environnement afin d’éviter de les inclure à chaque appel à une opération de données Azure Storage. Le tableau suivant décrit les variables d’environnement disponibles.

Variable d’environnement Description
AZURE_STORAGE_ACCOUNT nom du compte de stockage. Cette variable doit être utilisée conjointement avec la clé de compte de stockage ou un jeton SAS. Si ce n’est pas le cas, Azure CLI tente de récupérer la clé d’accès au compte de stockage à l’aide du compte Microsoft Entra authentifié. Si un grand nombre de commandes sont exécutées en même temps, la limitation du fournisseur de ressources de Stockage Azure peut être atteinte. Pour plus d’informations sur les limites du fournisseur de ressources, voir Objectifs de scalabilité et de performances pour le fournisseur de ressources de Stockage Azure.
AZURE_STORAGE_KEY La clé du compte de stockage. Cette variable doit être utilisée conjointement avec le nom du compte de stockage.
AZURE_STORAGE_CONNECTION_STRING Chaîne de connexion contenant la clé de compte de stockage ou un jeton SAP. Cette variable doit être utilisée conjointement avec le nom du compte de stockage.
AZURE_STORAGE_SAS_TOKEN Utilisez un jeton de signature d’accès partagé (SAP). Cette variable doit être utilisée conjointement avec le nom du compte de stockage.
AZURE_STORAGE_AUTH_MODE Mode d’autorisation avec lequel exécuter la commande. Les valeurs autorisées sont login (recommandée) ou key. Si vous spécifiez login, Azure CLI utilise vos informations d’identification Microsoft Entra pour autoriser l’opération de données. Si vous spécifiez le mode key hérité, Azure CLI tente d’interroger la clé d’accès au compte et d’autoriser la commande avec cette clé.

Étapes suivantes