Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Azure Resource Manager fournit les fonctions suivantes pour obtenir des valeurs d’étendue de déploiement dans votre modèle Azure Resource Manager (modèle ARM) :
Pour obtenir des valeurs à partir de paramètres, de variables ou du déploiement actuel, consultez les fonctions de valeur de déploiement.
Conseil / Astuce
Bicep est recommandé, car il offre les mêmes fonctionnalités que les modèles ARM et la syntaxe est plus facile à utiliser. Pour en savoir plus, consultez scope les fonctions.
managementGroup
managementGroup()
Retourne un objet avec des propriétés du groupe d’administration dans le déploiement actuel.
Dans Bicep, utilisez la fonction d’étendue managementGroup .
Remarques
managementGroup() ne peut être utilisé que sur les déploiements de groupe d’administration. Elle retourne le groupe d’administration actuel pour l’opération de déploiement. Utilisez-le pour obtenir les propriétés du groupe d’administration actuel.
Valeur retournée
Objet avec les propriétés du groupe d’administration actuel.
Exemple de groupe d’administration
L’exemple suivant retourne les propriétés du groupe d’administration actuel :
{
"$schema": "https://schema.management.azure.com/schemas/2019-08-01/managementGroupDeploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"variables": {
"mgInfo": "[managementGroup()]"
},
"resources": [],
"outputs": {
"mgResult": {
"type": "object",
"value": "[variables('mgInfo')]"
}
}
}
Cela renvoie :
"mgResult": {
"type": "Object",
"value": {
"id": "/providers/Microsoft.Management/managementGroups/examplemg1",
"name": "examplemg1",
"properties": {
"details": {
"parent": {
"displayName": "Tenant Root Group",
"id": "/providers/Microsoft.Management/managementGroups/00000000-0000-0000-0000-000000000000",
"name": "00000000-0000-0000-0000-000000000000"
},
"updatedBy": "00000000-0000-0000-0000-000000000000",
"updatedTime": "2020-07-23T21:05:52.661306Z",
"version": "1"
},
"displayName": "Example MG 1",
"tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee"
},
"type": "/providers/Microsoft.Management/managementGroups"
}
}
L’exemple suivant crée un nouveau groupe d’administration et utilise cette fonction pour définir le groupe d’administration parent :
{
"$schema": "https://schema.management.azure.com/schemas/2019-08-01/managementGroupDeploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"mgName": {
"type": "string",
"defaultValue": "[format('mg-{0}', uniqueString(newGuid()))]"
}
},
"resources": [
{
"type": "Microsoft.Management/managementGroups",
"apiVersion": "2024-02-01-preview",
"scope": "/",
"name": "[parameters('mgName')]",
"properties": {
"details": {
"parent": {
"id": "[managementGroup().id]"
}
}
}
}
],
"outputs": {
"newManagementGroup": {
"type": "string",
"value": "[parameters('mgName')]"
}
}
}
resourceGroup
resourceGroup()
Retourne un objet qui représente le groupe de ressources actuel.
Dans Bicep, utilisez la fonction d’étendue resourceGroup .
Valeur retournée
L’objet retourné est au format suivant :
{
"id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}",
"name": "{resourceGroupName}",
"type":"Microsoft.Resources/resourceGroups",
"location": "{resourceGroupLocation}",
"managedBy": "{identifier-of-managing-resource}",
"tags": {
},
"properties": {
"provisioningState": "{status}"
}
}
La propriété managedBy est retournée uniquement pour les groupes de ressources qui contiennent des ressources gérées par un autre service. Pour les applications managées, Databricks et AKS, la valeur de la propriété est l’ID de ressource de la ressource de gestion.
Remarques
La resourceGroup() fonction ne peut pas être utilisée dans un modèle déployé au niveau de l’abonnement. Il ne peut être utilisé que dans les modèles déployés dans un groupe de ressources. Vous pouvez utiliser la resourceGroup() fonction dans un modèle lié ou imbriqué (avec une étendue interne) qui cible un groupe de ressources, même lorsque le modèle parent est déployé sur l’abonnement. Dans ce scénario, le modèle lié ou imbriqué est déployé au niveau du groupe de ressources. Pour plus d’informations sur le ciblage d’un groupe de ressources dans un déploiement au niveau de l’abonnement, consultez Déployer des ressources Azure sur plusieurs abonnements ou groupes de ressources.
Une utilisation courante de la resourceGroup fonction consiste à créer des ressources dans le même emplacement que le groupe de ressources. L’exemple suivant utilise l’emplacement du groupe de ressources pour une valeur de paramètre par défaut.
"parameters": {
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]"
}
}
Vous pouvez également utiliser la resourceGroup fonction pour appliquer des balises du groupe de ressources à une ressource. Pour plus d’informations, consultez Appliquer des balises à partir du groupe de ressources.
Lorsque vous utilisez des modèles imbriqués pour déployer sur plusieurs groupes de ressources, vous pouvez spécifier l’étendue de l’évaluation de la resourceGroup fonction. Pour plus d’informations, consultez Déployer des ressources Azure sur plusieurs abonnements ou groupes de ressources.
Exemple de groupe de ressources
L’exemple suivant retourne les propriétés du groupe de ressources :
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"resourceGroupOutput": {
"type": "object",
"value": "[resourceGroup()]"
}
}
}
L’exemple précédent retourne un objet au format suivant :
{
"id": "/subscriptions/{subscription-id}/resourceGroups/examplegroup",
"name": "examplegroup",
"type":"Microsoft.Resources/resourceGroups",
"location": "southcentralus",
"properties": {
"provisioningState": "Succeeded"
}
}
abonnement
subscription()
Retourne des détails sur l’abonnement pour le déploiement actuel.
Dans Bicep, utilisez la fonction d’étendue subscription .
Valeur retournée
La fonction retourne le format suivant :
{
"id": "/subscriptions/{subscription-id}",
"subscriptionId": "{subscription-id}",
"tenantId": "{tenant-id}",
"displayName": "{name-of-subscription}"
}
Remarques
Lorsque vous utilisez des modèles imbriqués pour déployer sur plusieurs abonnements, vous pouvez spécifier l’étendue de l’évaluation de la subscription fonction. Pour plus d’informations, consultez Déployer des ressources Azure sur plusieurs abonnements ou groupes de ressources.
Exemple d’abonnement
L’exemple suivant montre la subscription fonction appelée dans la section sorties :
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"subscriptionOutput": {
"type": "object",
"value": "[subscription()]"
}
}
}
locataire
tenant()
Retourne le locataire de l’utilisateur.
Dans Bicep, utilisez la fonction d’étendue tenant .
Remarques
tenant() peut être utilisé avec n’importe quelle étendue de déploiement. Elle retourne toujours le locataire actuel. Utilisez cette fonction pour obtenir les propriétés du locataire actuel.
Lorsque vous définissez l’étendue d’un modèle lié ou d’une ressource d’extension, utilisez la syntaxe suivante : "scope": "/".
Valeur retournée
Objet avec des propriétés sur le locataire actuel.
Exemple de locataire
L’exemple suivant retourne les propriétés d’un locataire :
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"variables": {
"tenantInfo": "[tenant()]"
},
"resources": [],
"outputs": {
"tenantResult": {
"type": "object",
"value": "[variables('tenantInfo')]"
}
}
}
Cela renvoie :
"tenantResult": {
"type": "Object",
"value": {
"countryCode": "US",
"displayName": "Contoso",
"id": "/tenants/00000000-0000-0000-0000-000000000000",
"tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee"
}
}
Étapes suivantes
- Pour en savoir plus sur les sections d’un modèle ARM, consultez la structure et la syntaxe des modèles ARM.
- Pour fusionner plusieurs modèles, consultez les modèles liés et imbriqués lors du déploiement de ressources Azure.
- Pour itérer un nombre spécifié de fois lors de la création d’un type de ressource, consultez l’itération de ressource dans les modèles ARM.
- Pour en savoir plus sur le déploiement du modèle que vous avez créé, découvrez comment déployer des ressources avec des modèles ARM et Azure PowerShell.