Я пытаюсь создать автоматизированный процесс, который добавляет Azure Active Directory на SQL Server в группу Azure после развертывания SQL-сервера. Группа, которую я хочу добавить, тоже является группой безопасности. Я думаю об использовании политики Azure для реализации этого. Как будет выглядеть правило политики? Если есть лучший сервис/функция Azure для выполнения моей задачи, что это?
Как добавить администратора Azure Active Directory на SQL Server в группу Azure после развертывания SQL Server
comment
Вы хотите настроить одну и ту же группу AD для каждого SQL-сервера?
- person Jim Xu   schedule 09.02.2021
comment
Да! Я хочу настроить одну и ту же группу AD для каждого сервера SQL.
- person Dimeji Olayinka   schedule 09.02.2021
Ответы (1)
Вот пример определения политики, которое сработало для меня, которое оценивает и предоставляет ресурсы для жалоб и без жалоб на существующие ресурсы. Также обратите внимание, что во время цикла оценки определения политик с эффектом DeployIfNotExists, соответствующие ресурсам, помечаются как несоответствующие, но с этим ресурсом не предпринимаются никакие действия. Существующие несоответствующие ресурсы можно исправить с помощью задачи исправления.
{
"mode": "All",
"policyRule": {
"if": {
"allOf": [
{
"field": "type",
"equals": "Microsoft.Sql/servers"
}
]
},
"then": {
"effect": "deployIfNotExists",
"details": {
"type": "Microsoft.Sql/servers/administrators",
"existenceCondition": {
"allOf": [
{
"field": "Microsoft.Sql/servers/administrators/administratorType",
"equals": "ActiveDirectory"
},
{
"field": "Microsoft.Sql/servers/administrators/login",
"equals": "[email protected]"
},
{
"field": "Microsoft.Sql/servers/administrators/sid",
"equals": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx"
},
{
"field": "Microsoft.Sql/servers/administrators/tenantId",
"equals": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx"
}
]
},
"deployment": {
"properties": {
"mode": "incremental",
"template": {
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"location": {
"type": "string"
},
"sqlServerName": {
"type": "string"
}
},
"variables": {},
"resources": [
{
"name": "[parameters('sqlServerName')]",
"type": "Microsoft.Sql/servers",
"apiVersion": "2019-06-01-preview",
"location": "[parameters('location')]",
"resources": [
{
"type": "Microsoft.Sql/servers/administrators",
"apiVersion": "2019-06-01-preview",
"name": "[concat(parameters('sqlServerName'), '/ActiveDirectory')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('sqlServerName'))]"
],
"properties": {
"administratorType": "ActiveDirectory",
"login": "[email protected]",
"sid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx",
"tenantId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx"
}
}
]
}
]
},
"parameters": {
"sqlServerName": {
"value": "[field('Name')]"
},
"location": {
"value": "[field('Location')]"
}
}
}
},
"roleDefinitionIds": [
"/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c",
"/providers/Microsoft.Authorization/roleDefinitions/8e3af657-a8ff-443c-a75c-2fe8c4bcb635"
]
}
}
},
"parameters": {}
}
person
SwathiDhanwada-MSFT
schedule
12.02.2021