Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Saat organisasi Anda matang, Anda dapat menyebarkan templat Azure Resource Manager (templat ARM) untuk membuat sumber daya di tingkat grup manajemen. Misalnya, Anda mungkin perlu menentukan dan menetapkan kebijakan atau kontrol akses berbasis peran Azure (Azure RBAC) untuk grup manajemen. Dengan templat tingkat grup manajemen, Anda dapat secara deklaratif menerapkan kebijakan dan menetapkan peran di tingkat grup manajemen.
Petunjuk / Saran
Bicep direkomendasikan karena menawarkan kemampuan yang sama dengan templat ARM, dan sintaksnya lebih mudah digunakan. Untuk mempelajari selengkapnya, lihat penyebaran grup manajemen.
Sumber daya yang didukung
Tidak semua jenis sumber daya dapat disebarkan ke tingkat grup manajemen. Bagian ini mencantumkan jenis sumber daya mana yang didukung.
Untuk Azure Blueprints, gunakan:
Untuk Azure Policy, gunakan:
Untuk kontrol akses, gunakan:
- privateLinkAsosiasi
- roleAssignments
- Permintaan Penjadwalan Penugasan Peran
- roleDefinisi
- permintaan jadwal kelayakan peran
- roleManagementPolicyAssignments
Untuk templat bersarang yang disebarkan ke langganan, langganan, atau grup sumber daya, gunakan:
Untuk mengelola sumber daya Anda, gunakan:
- diagnostik
- tag
Grup manajemen adalah sumber daya tingkat penyewa. Namun, Anda dapat membuat grup manajemen dalam penyebaran grup manajemen dengan mengatur cakupan grup manajemen baru ke penyewa. Lihat Grup manajemen.
Skema
Skema yang Anda gunakan untuk penyebaran grup manajemen berbeda dari skema untuk penyebaran grup sumber daya.
Untuk templat, gunakan:
{
"$schema": "https://schema.management.azure.com/schemas/2019-08-01/managementGroupDeploymentTemplate.json#",
...
}
Skema untuk file parameter sama untuk semua cakupan penyebaran. Untuk file parameter, gunakan:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
...
}
Perintah penyebaran
Untuk menyebarkan ke grup manajemen, gunakan perintah penyebaran grup manajemen.
Untuk Azure CLI, gunakan az deployment mg create:
az deployment mg create \
--name demoMGDeployment \
--location WestUS \
--management-group-id myMG \
--template-uri "https://raw.githubusercontent.com/Azure/azure-docs-json-samples/master/management-level-deployment/azuredeploy.json"
Untuk informasi selengkapnya terkait perintah penyebaran dan opsi untuk menyebarkan templat ARM, lihat:
- Menyebarkan sumber daya dengan templat ARM dan portal Microsoft Azure
- Menyebarkan sumber daya dengan templat ARM dan Azure CLI
- Menyebarkan sumber daya dengan templat ARM dan Azure PowerShell
- Menyebarkan sumber daya dengan templat ARM dan REST API Azure Resource Manager
- Menggunakan tombol penyebaran untuk menyebarkan templat dari repositori GitHub
- Menyebarkan templat ARM dari Cloud Shell
Lokasi dan nama penyebaran
Untuk penyebaran tingkat grup manajemen, Anda harus menyediakan lokasi untuk penyebaran. Lokasi penyebaran terpisah dari lokasi sumber daya yang Anda sebarkan. Lokasi penyebaran menentukan tempat menyimpan data penyebaran. Penyebaran langganan dan penyewa juga memerlukan lokasi. Untuk penyebaran grup sumber daya, lokasi grup sumber daya digunakan untuk menyimpan data penyebaran.
Anda dapat memberikan nama untuk penyebaran atau menggunakan nama penyebaran default. Nama default adalah nama file templat. Misalnya, menyebarkan templat bernama azuredeploy.json akan membuat nama penyebaran azuredeploy secara default.
Untuk setiap nama penyebaran, lokasi tidak dapat diubah. Anda tidak dapat membuat penyebaran di satu lokasi saat ada penyebaran yang ada dengan nama yang sama di lokasi lain. Misalnya, jika Anda membuat penyebaran grup manajemen dengan nama deployment1 di centralus, Anda nantinya tidak dapat membuat penyebaran lain dengan nama deployment1 tetapi lokasi westus. Jika Anda mendapatkan kode InvalidDeploymentLocationkesalahan , gunakan nama yang berbeda atau lokasi yang sama dengan penyebaran sebelumnya untuk nama tersebut.
Cakupan penyebaran
Saat menyebarkan ke grup manajemen, Anda bisa menggunakan menyebarkan sumber daya untuk:
- grup manajemen target dari operasi
- grup manajemen lain dalam penyewa
- langganan dalam grup manajemen
- grup sumber daya dalam grup manajemen
- penyewa untuk grup sumber daya
Satu-satunya transisi cakupan yang dilarang terjadi dari Grup Sumber Daya ke Grup Manajemen, atau dari Langganan ke Grup Manajemen.
Sumber daya ekstensi dapat dilingkup ke target yang berbeda dari target penyebaran.
Pengguna yang menyebarkan templat harus memiliki akses ke cakupan yang ditentukan.
Bagian ini memperlihatkan cara menentukan cakupan yang berbeda. Anda dapat menggabungkan cakupan yang berbeda ini dalam templat tunggal.
Cakupan ke grup manajemen target
Sumber daya yang ditentukan dalam bagian sumber daya templat diterapkan ke grup manajemen dari perintah penyebaran:
{
"$schema": "https://schema.management.azure.com/schemas/2019-08-01/managementGroupDeploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
management-group-resources-default
],
"outputs": {}
}
Cakupan ke grup manajemen lainnya
Untuk menargetkan grup manajemen lain, tambahkan penyebaran bersarang dan tentukan properti scope. Atur scope properti ke nilai dalam Microsoft.Management/managementGroups/<mg-name> format .
{
"$schema": "https://schema.management.azure.com/schemas/2019-08-01/managementGroupDeploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"mgName": {
"type": "string"
}
},
"variables": {
"mgId": "[format('Microsoft.Management/managementGroups/{0}', parameters('mgName'))]"
},
"resources": [
{
"type": "Microsoft.Resources/deployments",
"apiVersion": "2025-04-01",
"name": "nestedDeployment",
"scope": "[variables('mgId')]",
"location": "eastus",
"properties": {
"mode": "Incremental",
"template": {
management-group-resources-non-default
}
}
}
],
"outputs": {}
}
Cakupan ke langganan
Anda juga dapat menargetkan langganan dalam grup manajemen. Pengguna yang menyebarkan templat harus memiliki akses ke cakupan yang ditentukan.
Untuk menargetkan langganan dalam grup manajemen, gunakan penyebaran berlapis dan subscriptionId properti :
{
"$schema": "https://schema.management.azure.com/schemas/2019-08-01/managementGroupDeploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.Resources/deployments",
"apiVersion": "2025-04-01",
"name": "nestedSub",
"location": "westus2",
"subscriptionId": "00000000-0000-0000-0000-000000000000",
"properties": {
"mode": "Incremental",
"template": {
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
subscription-resources
}
]
}
}
}
]
}
Cakupan ke grup sumber daya
Anda juga dapat menargetkan grup sumber daya dalam penyewa. Pengguna yang menyebarkan templat harus memiliki akses ke cakupan yang ditentukan.
Untuk menargetkan grup sumber daya dalam penyewa, gunakan penyebaran bersarang. Atur properti subscriptionId dan resourceGroup. Jangan atur lokasi untuk penyebaran berlapis karena disebarkan di lokasi grup sumber daya:
{
"$schema": "https://schema.management.azure.com/schemas/2019-08-01/managementGroupDeploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.Resources/deployments",
"apiVersion": "2025-04-01",
"name": "nestedRGDeploy",
"subscriptionId": "00000000-0000-0000-0000-000000000000",
"resourceGroup": "demoResourceGroup",
"properties": {
"mode": "Incremental",
"template": {
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
resource-group-resources
}
]
}
}
}
]
}
Untuk menggunakan penyebaran grup manajemen untuk membuat grup sumber daya dalam langganan dan menyebarkan akun penyimpanan ke grup sumber daya tersebut, lihat Menyebarkan ke langganan dan grup sumber daya.
Cakupan ke penyewa
Untuk membuat sumber daya di penyewa, atur scope ke /. Pengguna yang menyebarkan templat harus memiliki akses yang diperlukan untuk disebarkan di penyewa.
Untuk menggunakan penyebaran berlapis, atur scope dan location:
{
"$schema": "https://schema.management.azure.com/schemas/2019-08-01/managementGroupDeploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.Resources/deployments",
"apiVersion": "2025-04-01",
"name": "nestedDeployment",
"location": "centralus",
"scope": "/",
"properties": {
"mode": "Incremental",
"template": {
tenant-resources
}
}
}
],
"outputs": {}
}
Atau, Anda dapat mengatur cakupan ke / untuk beberapa jenis sumber daya seperti grup manajemen. Membuat grup manajemen baru dijelaskan di bagian berikutnya.
Grup manajemen
Untuk membuat grup manajemen dalam penyebaran grup manajemen, Anda harus mengatur cakupan ke / untuk grup manajemen.
Contoh berikut membuat grup manajemen baru di grup manajemen akar:
{
"$schema": "https://schema.management.azure.com/schemas/2019-08-01/managementGroupDeploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"mgName": {
"type": "string",
"defaultValue": "[concat('mg-', uniqueString(newGuid()))]"
}
},
"resources": [
{
"type": "Microsoft.Management/managementGroups",
"apiVersion": "2024-02-01-preview",
"name": "[parameters('mgName')]",
"scope": "/",
"location": "eastus",
"properties": {}
}
],
"outputs": {
"output": {
"type": "string",
"value": "[parameters('mgName')]"
}
}
}
Contoh berikutnya membuat grup manajemen baru di grup manajemen yang ditentukan sebagai induk. Perhatikan bahwa ruang lingkup diatur ke /.
{
"$schema": "https://schema.management.azure.com/schemas/2019-08-01/managementGroupDeploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"mgName": {
"type": "string",
"defaultValue": "[concat('mg-', uniqueString(newGuid()))]"
},
"parentMG": {
"type": "string"
}
},
"resources": [
{
"name": "[parameters('mgName')]",
"type": "Microsoft.Management/managementGroups",
"apiVersion": "2024-02-01-preview",
"scope": "/",
"location": "eastus",
"properties": {
"details": {
"parent": {
"id": "[tenantResourceId('Microsoft.Management/managementGroups', parameters('parentMG'))]"
}
}
}
}
],
"outputs": {
"output": {
"type": "string",
"value": "[parameters('mgName')]"
}
}
}
Langganan
Untuk menggunakan templat ARM untuk membuat langganan Azure baru di grup manajemen, lihat:
- Secara terprogram membuat langganan Perjanjian Enterprise Azure
- Secara terprogram membuat langganan Azure untuk Perjanjian Pelanggan Microsoft
- Secara terprogram membuat langganan Azure untuk Perjanjian Mitra Microsoft
Untuk menyebarkan templat yang memindahkan langganan Azure yang sudah ada ke grup manajemen baru, lihat Memindahkan langganan di templat ARM
Azure Policy
Definisi kebijakan kustom yang disebarkan ke grup manajemen adalah ekstensi dari grup manajemen. Untuk mendapatkan ID definisi kebijakan kustom, gunakan extensionResourceId() fungsi . Definisi kebijakan bawaan adalah sumber daya tingkat penyewa. Untuk mendapatkan ID definisi kebijakan bawaan, gunakan tenantResourceId() fungsi .
Contoh berikut menunjukkan cara menentukan kebijakan di tingkat grup manajemen dan menetapkannya:
{
"$schema": "https://schema.management.azure.com/schemas/2019-08-01/managementGroupDeploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"targetMG": {
"type": "string",
"metadata": {
"description": "Target Management Group"
}
},
"allowedLocations": {
"type": "array",
"defaultValue": [
"australiaeast",
"australiasoutheast",
"australiacentral"
],
"metadata": {
"description": "An array of the allowed locations, all other locations will be denied by the created policy."
}
}
},
"variables": {
"mgScope": "[tenantResourceId('Microsoft.Management/managementGroups', parameters('targetMG'))]",
"policyDefinition": "LocationRestriction"
},
"resources": [
{
"type": "Microsoft.Authorization/policyDefinitions",
"name": "[variables('policyDefinition')]",
"apiVersion": "2025-03-01",
"properties": {
"policyType": "Custom",
"mode": "All",
"parameters": {
},
"policyRule": {
"if": {
"not": {
"field": "location",
"in": "[parameters('allowedLocations')]"
}
},
"then": {
"effect": "deny"
}
}
}
},
{
"type": "Microsoft.Authorization/policyAssignments",
"name": "location-lock",
"apiVersion": "2025-03-01",
"dependsOn": [
"[variables('policyDefinition')]"
],
"properties": {
"scope": "[variables('mgScope')]",
"policyDefinitionId": "[extensionResourceId(variables('mgScope'), 'Microsoft.Authorization/policyDefinitions', variables('policyDefinition'))]"
}
}
]
}
Menyebarkan ke langganan dan grup sumber daya
Dari penyebaran tingkat grup manajemen, Anda dapat menargetkan langganan dalam grup manajemen. Contoh berikut membuat grup sumber daya dalam langganan dan menyebarkan akun penyimpanan ke grup sumber daya tersebut:
{
"$schema": "https://schema.management.azure.com/schemas/2019-08-01/managementGroupDeploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"nestedsubId": {
"type": "string"
},
"nestedRG": {
"type": "string"
},
"storageAccountName": {
"type": "string"
},
"nestedLocation": {
"type": "string"
}
},
"resources": [
{
"type": "Microsoft.Resources/deployments",
"apiVersion": "2025-04-01",
"name": "nestedSub",
"location": "[parameters('nestedLocation')]",
"subscriptionId": "[parameters('nestedSubId')]",
"properties": {
"mode": "Incremental",
"template": {
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
},
"variables": {
},
"resources": [
{
"type": "Microsoft.Resources/resourceGroups",
"apiVersion": "2025-04-01",
"name": "[parameters('nestedRG')]",
"location": "[parameters('nestedLocation')]"
}
]
}
}
},
{
"type": "Microsoft.Resources/deployments",
"apiVersion": "2025-04-01",
"name": "nestedRG",
"subscriptionId": "[parameters('nestedSubId')]",
"resourceGroup": "[parameters('nestedRG')]",
"dependsOn": [
"nestedSub"
],
"properties": {
"mode": "Incremental",
"template": {
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.Storage/storageAccounts",
"apiVersion": "2025-06-01",
"name": "[parameters('storageAccountName')]",
"location": "[parameters('nestedLocation')]",
"kind": "StorageV2",
"sku": {
"name": "Standard_LRS"
}
}
]
}
}
}
]
}
Langkah berikutnya
- Untuk mempelajari cara menetapkan peran, lihat Menetapkan peran Azure menggunakan templat Azure Resource Manager.
- Untuk contoh penyebaran pengaturan ruang kerja untuk Pertahanan Microsoft untuk Cloud, lihat deployASCwithWorkspaceSettings.json.
- Anda juga dapat menyebarkan templat di tingkat langganan dan tingkat penyewa.