Чтобы получить доступ к KeyVault, необходимо использовать ссылку для получения идентификатора объекта (основного идентификатора) идентификатора управляемой службы виртуальной машины. См. Документацию здесь .
Я вижу, KeyVault хочет TenantID и ID объекта.
Арендатор, который вы уже должны иметь в шаблоне "tenantId": "[subscription().tenantId]"
, а ObjectID - это PrincipalId, как показано в связанных документах и примере ниже.
{
"apiVersion": "2017-09-01",
"type": "Microsoft.Authorization/roleAssignments",
"name": "[parameters('rbacGuid')]",
"properties": {
"roleDefinitionId": "[variables(parameters('builtInRoleType'))]",
"principalId": "[reference(variables('vmResourceId'), '2017-12-01', 'Full').identity.principalId]",
"scope": "[resourceGroup().id]"
},
"dependsOn": [
"[concat('Microsoft.Compute/virtualMachines/', parameters('vmName'))]"
]
}