Démarrage rapide : attribuer un rôle Azure en utilisant Bicep

Le contrôle d’accès en fonction du rôle Azure (RBAC Azure) vous permet de gérer l’accès aux ressources Azure. Dans ce démarrage rapide, vous allez créer un groupe de ressources et autoriser un utilisateur à créer et à gérer des machines virtuelles dans le groupe de ressources. Ce démarrage rapide utilise Bicep pour octroyer l’accès.

Bicep est un langage spécifique à un domaine (DSL) qui utilise la syntaxe déclarative pour déployer des ressources Azure. Il fournit une syntaxe concise, une cohérence des types fiable et une prise en charge de la réutilisation du code. Bicep offre la meilleure expérience de création pour vos solutions d’infrastructure en tant que code dans Azure.

Prérequis

Pour attribuer des rôles et supprimer des attributions de rôles, voici ce dont vous devez disposer :

  • Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.
  • Microsoft.Authorization/roleAssignments/writeet Microsoft.Authorization/roleAssignments/delete autorisations, telles que le contrôle d’accès en fonction du rôle Administration istrator.
  • Pour attribuer un rôle, vous devez spécifier trois éléments : un principal de sécurité, une définition de rôle et une étendue. Pour ce démarrage rapide, vous ou un autre utilisateur dans votre annuaire avez le rôle de principal de sécurité, la définition de rôle est Contributeur de machine virtuelle et l’étendue est un groupe de ressources que vous spécifiez.

Examiner le fichier Bicep

Le fichier Bicep utilisé dans ce guide de démarrage rapide est tiré des modèles de démarrage rapide Azure. Le fichier Bicep a deux paramètres et une section de ressources. Notez que la section de ressources contient les trois éléments d’une attribution de rôle : principal de sécurité, définition de rôle et étendue.

@description('Specifies the role definition ID used in the role assignment.')
param roleDefinitionID string

@description('Specifies the principal ID assigned to the role.')
param principalId string

var roleAssignmentName= guid(principalId, roleDefinitionID, resourceGroup().id)
resource roleAssignment 'Microsoft.Authorization/roleAssignments@2022-04-01' = {
  name: roleAssignmentName
  properties: {
    roleDefinitionId: resourceId('Microsoft.Authorization/roleDefinitions', roleDefinitionID)
    principalId: principalId
  }
}

output name string = roleAssignment.name
output resourceGroupName string = resourceGroup().name
output resourceId string = roleAssignment.id

La ressource définie dans le fichier Bicep est :

Déployer le fichier Bicep

  1. Enregistrez le fichier Bicep en tant que main.bicep sur votre ordinateur local.

  2. Déployez le fichier Bicep à l’aide d’Azure CLI ou d’Azure PowerShell.

    az group create --name exampleRG --location eastus
    az deployment group create --resource-group exampleRG --template-file main.bicep --parameters roleDefinitionID=9980e02c-c2be-4d73-94e8-173b1dc7cf3c principalId=<principal-id>
    

Notes

Remplacez <l’ID du principal> par l’ID de principal attribué au rôle.

Une fois le déploiement terminé, un message doit s’afficher pour indiquer que le déploiement a réussi.

Vérifier les ressources déployées

Utilisez le portail Azure, Azure CLI ou Azure PowerShell pour répertorier les ressources déployées dans le groupe de ressources.

az role assignment list --resource-group exampleRG

Nettoyer les ressources

Quand vous n’en avez plus besoin, utilisez le Portail Azure, Azure CLI ou Azure PowerShell pour supprimer l’attribution de rôle. Pour plus d’informations, consultez Supprimer des attributions de rôles Azure.

Utilisez le Portail Azure, Azure CLI ou Azure PowerShell pour supprimer le groupe de ressources.

az group delete --name exampleRG

Étapes suivantes