バッチアカウント(ユーザーサブスクリプションモードで)の設定をARMスクリプトに追加しようとしていますが、循環依存性に問題があります。1つのARMスクリプトでバッチアカウントとキーボルトを作成する
- バッチアカウントにはKeyVaultReferenceが必要です。
- 鍵ボールトのアクセスポリシー にはBatchAccountオブジェクトIDが必要です。
この状況では、完全に構成されたサービスを作成できません。同じARMスクリプトから両方のサービスを作成するにはどうすればよいですか?
{
"name": "[variables('keyVaultName')]",
"type": "Microsoft.KeyVault/vaults",
"location": "[resourceGroup().location]",
"apiVersion": "2015-06-01",
"properties": {
"sku": {
"family": "A",
"name": "Standard"
},
"tenantId": "[subscription().tenantId]",
"accessPolicies": [
{
"tenantId": "[subscription().tenantId]",
"objectId": "[resourceId('Microsoft.Batch/batchAccounts', variables('batchAccountName'))]",
"permissions": {
"keys": [
"Update"
]
}
}
]
},
"dependsOn": [
"[resourceId('Microsoft.Batch/batchAccounts', variables('batchAccountName'))]"
]
},
{
"name": "[variables('batchAccountName')]",
"type": "Microsoft.Batch/batchAccounts",
"location": "[resourceGroup().location]",
"apiVersion": "2017-05-01",
"properties": {
"poolAllocationMode": "UserSubscription",
"autoStorage": {
"storageAccountId": "[resourceId('Microsoft.Storage/storageAccounts', variables('batchAccountStorageAccountName'))]"
},
"keyVaultReference": {
"id": "[concat(subscription().id, '/resourceGroups/', resourceGroup().name, '/providers/Microsoft.KeyVault/vaults/', variables('keyVaultName'))]",
"url": "[concat('https://', variables('keyVaultName'), '.vault.azure.net/')]"
}
},
"dependsOn": [
"[resourceId('Microsoft.Storage/storageAccounts', variables('batchAccountStorageAccountName'))]",
"[resourceId('Microsoft.KeyVault/vaults', variables('keyVaultName'))]"
]
}
は、あなたがAzureのポータル上のオブジェクトIDを取得することができ、ユーザーに 'マイクロソフトのAzure Batch'権限を与えたいと思います。 '' - > 'アクセス制御(IAM)' - > 'Microsoft Azure Batch' - >' Properties'です。 –
いいですね。私はarm/ps(Azureサブスクリプションステップ)を介してこれらの操作をオートメーションスクリプトに含める方法を探していますが、それは別の話です。ありがとう! –