Создание управляемого пользователем удостоверения и администратора сервера с использованием шаблона ARM

Я хочу добавить управляемое пользователем удостоверение в качестве администратора к ресурсу сервера sql в Azure. Я могу создать удостоверение пользователя с помощью шаблонов ARM следующим образом:

{
    "type": "Microsoft.ManagedIdentity/userAssignedIdentities",
    "name": "[variables('identityName')]",
    "apiVersion": "2018-11-30",
    "location": "[resourceGroup().location]"
},

и я также могу создать ресурс администратора из шаблона ARM. Но как мне сослаться на созданный выше идентификатор в ресурсе администратора? :

{
    "name": "[concat(variables('serverName'),'/ActiveDirectory')]",
    "type": "Microsoft.Sql/servers/administrators",
    "dependsOn": [
        "[resourceId('Microsoft.Sql/servers', variables('serverName'))]"
    ],
    "apiVersion": "2019-06-01-preview",
    "properties": {
        "administratorType": "ActiveDirectory",
        "login": "[parameters('identityName')]",
        "sid": "<How do I add reference here>",
        "tenantId": "<How do I add reference here>"
    }
}

person Ashish Kumar    schedule 15.12.2020    source источник
comment
Мы не можем установить субъект-службу в качестве администратора Azure AD в базе данных SQL Azure. Мы просто можем добавить субъект-службу в качестве члена группы AD, а затем установить группу в качестве администратора AD. Дополнительные сведения см. на странице docs.microsoft.com/en-us/azure/azure-sql/database/   -  person Jim Xu    schedule 15.12.2020


Ответы (1)


Я пробовал кое-что, и следующее, кажется, работает нормально:

{
            "name": "[concat(variables('serverName'),'/ActiveDirectory')]",
            "type": "Microsoft.Sql/servers/administrators",
            "dependsOn": [
                "[resourceId('Microsoft.Sql/servers', variables('serverName'))]",
                "[resourceId('Microsoft.ManagedIdentity/userAssignedIdentities', variables('identityName'))]"
            ],
            "apiVersion": "2019-06-01-preview",
            "properties": {
                "administratorType": "ActiveDirectory",
                "login": "[variables('identityName')]",
                "sid": "[reference(concat('Microsoft.ManagedIdentity/userAssignedIdentities/', variables('identityName'))).clientId]",
                "tenantId": "[reference(concat('Microsoft.ManagedIdentity/userAssignedIdentities/', variables('identityName'))).tenantId]"
            }
        },
person Ashish Kumar    schedule 15.12.2020