Démarrage rapide : Créer et déployer votre premier fichier Bicep avec des ressources Microsoft Graph
Dans ce guide de démarrage rapide, vous créez un fichier Bicep qui déclare un groupe de sécurité Microsoft Entra et une identité de service managé (MSI), représentant respectivement une ressource Microsoft Graph et une ressource Azure. Vous ajoutez ensuite la MSI en tant que propriétaire du groupe. Vous allez également découvrir comment l’extension Bicep simplifie le développement en fournissant une cohérence des types, la validation de syntaxe et l’autocomplétion. Enfin, vous déployez le fichier Bicep à l’aide d’un utilisateur connecté.
Important
Cet article de démarrage rapide utilise des références de types dynamiques au lieu de types intégrés qui sont déconseillés et seront supprimés le 24 janvier 2025. Jusqu’à la date de mise hors service, les types intégrés, indiqués par extension microsoftGraph
, coexistent avec les nouveaux types dynamiques. Si l’un de vos fichiers Bicep existants utilise des types intégrés, basculez vers l’utilisation de types dynamiques pour éviter les futurs problèmes de déploiement de fichiers Bicep.
Important
Microsoft Graph Bicep est actuellement en préversion. Pour connaître les conditions juridiques qui s’appliquent aux fonctionnalités Azure en version bêta, en préversion ou plus généralement non encore en disponibilité générale, consultez l’Avenant aux conditions d’utilisation des préversions de Microsoft Azure.
Prérequis
Disposer d’un abonnement Azure valide : si vous ne possédez pas d’abonnement Azure, créez un compte gratuit avant de commencer.
Installez les outils Bicep pour la création et le déploiement. Ce guide de démarrage rapide utilise VS Code avec l’extension Bicep pour la création et Azure CLI pour le déploiement. Des exemples sont également fournis pour Azure PowerShell. La version minimale requise de Bicep est v0.30.3.
Disposer d’un rôle Microsoft Entra qui vous attribue des autorisations pour créer un groupe de sécurité. Les utilisateurs disposent de cette autorisation par défaut. Toutefois, les administrateurs peuvent désactiver cette valeur par défaut , auquel cas vous devez avoir au moins le rôle Administrateur de groupes.
Ajouter un groupe d’applications Microsoft Graph
Lancez VS Code et créez deux nouveaux fichiers, main.bicep et bicepconfig.json dans le même dossier.
Ensuite, pour pouvoir déclarer des ressources Microsoft Graph dans un fichier Bicep, vous devez activer la fonctionnalité d’aperçu Bicep et spécifier les versions de type Microsoft Graph Bicep en configurant bicepconfig.json.
Cet exemple utilise les ressources v1.0 et déclare un nom d’extension convivial « microsoftGraphV1_0 » pour référencer la br:mcr.microsoft.com/bicep/extensions/microsoftgraph/v1.0:0.1.8-preview
version de type dans le Registre des artefacts Microsoft.
{
"experimentalFeaturesEnabled": {
"extensibility": true
},
// specify an alias for the version of the v1.0 dynamic types package you want to use
"extensions": {
"microsoftGraphV1_0": "br:mcr.microsoft.com/bicep/extensions/microsoftgraph/v1.0:0.1.8-preview"
}
}
Vous pouvez également déclarer des ressources Microsoft Graph à partir de la version bêta et v1.0 dans le même fichier Bicep en ajoutant une autre référence à une version de type bêta à partir du Registre des artefacts Microsoft.
Dans main.bicep, tapez extension microsoftGraphV1_0
, où microsoftGraphV1_0
est votre nom convivial pour référencer le package de types dynamiques dans le Registre des artefacts Microsoft. L’instruction extension
permet au compilateur Bicep de savoir que vous incluez les types Microsoft Graph que vous avez définis dans bicepconfig.json. Sur la ligne suivante, définissez une ressource à l’aide du resource
mot clé. Tapez resource exampleGroup
et ajoutez un espace.
extension microsoftGraphV1_0
resource exampleGroup
Lorsque vous ajoutez un espace après le nom symbolique, une liste de types de ressources s’affiche. Continuez à taper le groupe jusqu’à ce que vous puissiez sélectionner Microsoft.Graph/Groups dans les options disponibles.
Conseil
Si vous ne voyez pas les options IntelliSense dans VS Code, vérifiez que vous avez installé l’extension Bicep comme spécifié dans Les conditions préalables. Si vous avez installé l’extension, laissez au service de langage Bicep un peu de temps pour démarrer après l’ouverture de votre fichier Bicep. Une notification dans le coin inférieur droit indique que le service est en cours de démarrage. Lorsque cette notification disparaît, le service est en cours d’exécution.
Après avoir sélectionné Microsoft.Graph/Groups, vous êtes présenté avec les versions d’API disponibles - bêta ou v1.0. Sélectionnez toujours v1.0, sauf s’il n’est pas disponible ou si les propriétés de ressource dont vous avez besoin sont disponibles uniquement en version bêta. Pour ce guide de démarrage rapide, utilisez la version 1.0.
Après le guillemet simple pour le type de ressource, ajoutez = et un espace. Les options permettant d’ajouter des propriétés à la ressource s’affichent. Sélectionnez required-properties.
Cette option ajoute toutes les propriétés correspondant au type de ressource requis pour le déploiement. Après avoir sélectionné cette option, votre groupe a les propriétés suivantes :
resource exampleGroup 'Microsoft.Graph/groups@v1.0' = {
displayName:
mailEnabled:
mailNickname:
securityEnabled:
uniqueName:
}
Fournissez des valeurs pour ces propriétés, en définissant mailEnabled sur false
et securityEnabled true
sur . uniqueName représente une clé fournie par le client immuable pour cette ressource de groupe.
Ajouter une ressource d’identité managée
VS Code avec l’extension Bicep simplifie le développement en fournissant des extraits de code prédéfinis, tels qu’un extrait de code qui crée une identité managée. Dans main.bicep, tapez l’homme, puis sélectionnez res-managed-identity dans la liste, puis appuyez sur [TAB] ou [ENTRÉE].
Remarque : Les extraits de ressource pour les ressources extensibles , comme les ressources Microsoft Graph, ne sont actuellement pas pris en charge.
Votre fichier Bicep contient maintenant le code suivant :
resource managedIdentity 'Microsoft.ManagedIdentity/userAssignedIdentities@2018-11-30' = {
name: 'name'
location: location
}
Vous pouvez corriger l’erreur de définition de paramètre manquante en ajoutant une définition de paramètre pour location
. Sous la définition d’extension, ajoutez param location string = resourceGroup().location
. Pour plus d’informations sur la fonction utilisée ici, consultez resourceGroup(). Remplacez le nom de l’identité managée par name
exampleManagedIdentity
.
Rendre l’identité managée propriétaire de la ressource de groupe
Dans la exampleGroup
ressource, créez une ligne sous uniqueName
, tapez ow, qui affiche les propriétaires comme seule option de propriété correspondante, puis appuyez sur [TAB] ou [ENTRÉE].
La propriété propriétaires est un tableau. []
Ajoutez et référencez maintenant l’ID principal de l’identité managée à l’aide d’IntelliSense, en tapant m et en sélectionnant managedIdentity (le nom symbolique de l’identité managée), en tapant des propriétés . et en sélectionnant un autre principalId.
Votre fichier main.bicep doit maintenant ressembler à ceci :
extension microsoftGraphV1_0
param location string = resourceGroup().location
resource exampleGroup 'Microsoft.Graph/groups@v1.0' = {
displayName: 'My example group'
mailEnabled: false
mailNickname: 'my-example-group'
securityEnabled: true
uniqueName: 'myExampleGroup'
owners: [managedIdentity.properties.principalId]
}
resource managedIdentity 'Microsoft.ManagedIdentity/userAssignedIdentities@2018-11-30' = {
name: 'exampleManagedIdentity'
location: location
}
Déployer le fichier Bicep à l’aide d’un utilisateur connecté
Déployez le fichier Bicep en vous connectant à Azure CLI ou à Azure PowerShell à l’aide des exemples suivants. Les exemples Azure CLI de cette documentation utilisent la console Bash.
## Sign in to Azure CLI
az login
## Create a resource group
az group create --name exampleRG --location eastus
## Deploy the Bicep file
az deployment group create --resource-group exampleRG --template-file main.bicep
Une fois le déploiement terminé, un message doit s’afficher pour indiquer que le déploiement a réussi.
Remarque
En raison des retards de réplication, l’ajout de l’identité de service managé (MSI) en tant que propriétaire du groupe Microsoft Entra peut entraîner l’échec du déploiement. Attendez un peu, puis déployez à nouveau le même fichier Bicep.
Nettoyer les ressources
Lorsque les ressources Azure ne sont plus nécessaires, utilisez Azure CLI ou le module Azure PowerShell afin de supprimer le groupe de ressources qui a été utilisé pour ce guide de démarrage rapide.
Remarque
Les groupes de ressources sont un concept Azure et n’ont aucun impact sur les ressources Microsoft Graph. Les ressources Microsoft Graph doivent être nettoyées avec une demande supplémentaire adressée à Microsoft Graph. Pour cela, vous pouvez utiliser Azure CLI ou Azure PowerShell, Microsoft Graph CLI ou Microsoft Graph PowerShell.
Les exemples suivants montrent des commandes pour supprimer la ressource Azure, puis la ressource Microsoft Graph à l’aide d’Azure CLI et d’Azure PowerShell.
## Delete the resource group
az group delete --name exampleRG
## Delete the Microsoft Graph group
az rest --method delete --url 'https://graph.microsoft.com/v1.0/groups%28uniqueName=%27myExampleGroup%27%29'