Пользовательские роли для миграции SQL Server в Azure Виртуальные машины с помощью ADS
В этой статье объясняется, как настроить настраиваемую роль в Azure для миграции баз данных. Пользовательская роль будет иметь только разрешения, необходимые для создания и запуска Database Migration Service с виртуальной машиной Azure в качестве целевого объекта.
Управлять отображением разрешений в пользовательском интерфейсе назначения ролей на портале позволяет раздел AssignableScopes JSON-строки определения роли. Обычно роль определяется на уровне группы ресурсов или даже отдельных ресурсов, чтобы избежать загромождения пользовательского интерфейса лишними ролями. Это не выполняет фактическое назначение роли.
{
"properties": {
"roleName": "DmsCustomRoleDemoForVM",
"description": "",
"assignableScopes": [
"/subscriptions/<storageSubscription>/resourceGroups/<storageAccountRG>",
"/subscriptions/<ManagedInstanceSubscription>/resourceGroups/<virtualMachineRG>",
"/subscriptions/<DMSSubscription>/resourceGroups/<dmsServiceRG>"
],
"permissions": [
{
"actions": [
"Microsoft.Storage/storageAccounts/read",
"Microsoft.Storage/storageAccounts/listkeys/action",
"Microsoft.Storage/storageAccounts/blobServices/read",
"Microsoft.Storage/storageAccounts/blobServices/write",
"Microsoft.Storage/storageAccounts/blobServices/containers/read",
"Microsoft.SqlVirtualMachine/sqlVirtualMachines/read",
"Microsoft.SqlVirtualMachine/sqlVirtualMachines/write",
"Microsoft.DataMigration/locations/operationResults/read",
"Microsoft.DataMigration/locations/operationStatuses/read",
"Microsoft.DataMigration/locations/sqlMigrationServiceOperationResults/read",
"Microsoft.DataMigration/databaseMigrations/write",
"Microsoft.DataMigration/databaseMigrations/read",
"Microsoft.DataMigration/databaseMigrations/delete",
"Microsoft.DataMigration/databaseMigrations/cancel/action",
"Microsoft.DataMigration/databaseMigrations/cutover/action",
"Microsoft.DataMigration/sqlMigrationServices/write",
"Microsoft.DataMigration/sqlMigrationServices/delete",
"Microsoft.DataMigration/sqlMigrationServices/read",
"Microsoft.DataMigration/sqlMigrationServices/listAuthKeys/action",
"Microsoft.DataMigration/sqlMigrationServices/regenerateAuthKeys/action",
"Microsoft.DataMigration/sqlMigrationServices/deleteNode/action",
"Microsoft.DataMigration/sqlMigrationServices/listMonitoringData/action",
"Microsoft.DataMigration/sqlMigrationServices/listMigrations/read",
"Microsoft.DataMigration/sqlMigrationServices/MonitoringData/read"
],
"notActions": [],
"dataActions": [],
"notDataActions": []
}
]
}
}
Для создания ролей можно использовать портал Azure, AZ PowerShell, Azure CLI или Azure REST API.
Дополнительные сведения см. в статьях Создание пользовательских ролей с помощью портал Azure и пользовательских ролей Azure.
Описание разрешений, необходимых для миграции на виртуальную машину
Действие разрешения | Описание |
---|---|
Microsoft.Storage/storageAccounts/read | Возвращает список учетных записей хранения или свойства указанной учетной записи хранения. |
Microsoft.Storage/storageAccounts/listkeys/action | Возвращает ключи доступа для указанной учетной записи хранения. |
Microsoft.Storage/storageAccounts/blobServices/read | Перечисление служб BLOB-объектов. |
Microsoft.Storage/storageAccounts/blobServices/write | Возвращает результат свойств службы BLOB-объектов put. |
Microsoft.Storage/storageAccounts/blobServices/containers/read | Возвращает список контейнеров. |
Microsoft.Sql/managedInstances/read | Возвращение списка управляемых экземпляров или получение свойств указанного управляемого экземпляра. |
Microsoft.Sql/managedInstances/write | Создание управляемого экземпляра с указанными параметрами либо обновление свойств или тегов указанного управляемого экземпляра. |
Microsoft.Sql/managedInstances/databases/read | Возвращает существующую управляемую базу данных. |
Microsoft.Sql/managedInstances/databases/write | Создает новую базу данных или обновляет имеющуюся. |
Microsoft.Sql/managedInstances/databases/delete | Удаляет существующую управляемую базу данных. |
Microsoft.DataMigration/locations/operationResults/read | Получение состояния длительной операции, связанной с ответом 202 Accepted. |
Microsoft.DataMigration/locations/operationStatuses/read | Получение состояния длительной операции, связанной с ответом 202 Accepted. |
Microsoft.DataMigration/locations/sqlMigrationServiceOperationResults/read | Получение результатов операции службы. |
Microsoft.DataMigration/databaseMigrations/write | Создание или обновление ресурса миграции базы данных. |
Microsoft.DataMigration/databaseMigrations/read | Получите ресурс миграции базы данных. |
Microsoft.DataMigration/databaseMigrations/delete | Удаление ресурса миграции базы данных. |
Microsoft.DataMigration/databaseMigrations/cancel/action | Остановите текущую миграцию базы данных. |
Microsoft.DataMigration/databaseMigrations/cutover/action | Прямая миграция в сети для базы данных. |
Microsoft.DataMigration/sqlMigrationServices/write | Создание новой службы или изменение свойств существующей |
Microsoft.DataMigration/sqlMigrationServices/delete | Удалите существующую службу. |
Microsoft.DataMigration/sqlMigrationServices/read | Получение сведений о Службе миграции. |
Microsoft.DataMigration/sqlMigrationServices/listAuthKeys/action | Получение списка ключей проверки подлинности. |
Microsoft.DataMigration/sqlMigrationServices/regenerateAuthKeys/action | Повторно создайте ключи проверки подлинности. |
Microsoft.DataMigration/sqlMigrationServices/deleteNode/action | Отмена регистрации узла IR. |
Microsoft.DataMigration/sqlMigrationServices/listMonitoringData/action | Список данных мониторинга для всех миграций. |
Microsoft.DataMigration/sqlMigrationServices/listMigrations/read | Список миграций для пользователя. |
Microsoft.DataMigration/sqlMigrationServices/MonitoringData/read | Получение данных мониторинга. |
Microsoft.SqlVirtualMachine/sqlVirtualMachines/read | Получение сведений о виртуальной машине SQL. |
Microsoft.SqlVirtualMachine/sqlVirtualMachines/write | Создайте или измените свойства существующей виртуальной машины SQL. |
Назначение роли
Чтобы назначить роль пользователям или идентификаторам приложений, откройте портал Azure и выполните указанные ниже действия.
Перейдите к ресурсу, перейдите к контроль доступа, а затем прокрутите страницу, чтобы найти созданные пользовательские роли.
Выберите соответствующую роль, выберите идентификатор пользователя или приложения, а затем сохраните изменения.
Идентификатор пользователя или приложения теперь отображается на вкладке Назначения ролей .