Funções personalizadas para migrações do SQL Server para o Banco de Dados SQL do Azure no Azure Data Studio
Este artigo explica como configurar uma função personalizada no Azure para migrações de banco de dados do SQL Server. A função personalizada só tem as permissões necessárias para criar e executar uma instância do Serviço de Migração de Banco de Dados do Azure com o Banco de Dados SQL do Azure como destino.
Use a seção AssignableScopes
da cadeia de caracteres JSON de definição de função para controlar onde as permissões aparecem na Adicionar atribuição de função interface do usuário no portal do Azure. Para evitar sobrecarregar a interface do usuário com funções extras, convém definir a função no nível do grupo de recursos ou até mesmo no nível do recurso. O recurso ao qual a função personalizada se aplica não executa a atribuição de função real.
{
"properties": {
"roleName": "DmsCustomRoleDemoForSqlDB",
"description": "",
"assignableScopes": [
"/subscriptions/<SQLDatabaseSubscription>/resourceGroups/<SQLDatabaseResourceGroup>",
"/subscriptions/<DatabaseMigrationServiceSubscription>/resourceGroups/<DatabaseMigrationServiceResourceGroup>"
],
"permissions": [
{
"actions": [
"Microsoft.Sql/servers/read",
"Microsoft.Sql/servers/write",
"Microsoft.Sql/servers/databases/read",
"Microsoft.Sql/servers/databases/write",
"Microsoft.Sql/servers/databases/delete",
"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/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",
"Microsoft.DataMigration/SqlMigrationServices/tasks/read",
"Microsoft.DataMigration/SqlMigrationServices/tasks/write",
"Microsoft.DataMigration/SqlMigrationServices/tasks/delete"
],
"notActions": [],
"dataActions": [],
"notDataActions": []
}
]
}
}
Você pode usar o portal do Azure, o Azure PowerShell, a CLI do Azure ou a API REST do Azure para criar as funções.
Para obter mais informações, consulte Criar ou atualizar funções personalizadas do Azure usando o portal do Azure e funções personalizadas do Azure.
Permissões necessárias para migrar para o Banco de Dados SQL do Azure
Ação de permissão | Descrição |
---|---|
Microsoft.Sql/servers/read |
Retornar a lista de recursos do banco de dados SQL ou obter as propriedades do banco de dados SQL especificado. |
Microsoft.Sql/servers/write |
Crie um banco de dados SQL com os parâmetros especificados ou atualize as propriedades ou marcas do banco de dados SQL especificado. |
Microsoft.Sql/servers/databases/read |
Obtenha um banco de dados SQL existente. |
Microsoft.Sql/servers/databases/write |
Crie um novo banco de dados ou atualize um banco de dados existente. |
Microsoft.Sql/servers/databases/delete |
Exclua um banco de dados SQL existente. |
Microsoft.DataMigration/locations/operationResults/read |
Obtenha os resultados de uma operação de longa duração relacionada a uma resposta 202 Aceita. |
Microsoft.DataMigration/locations/operationStatuses/read |
Obtenha o status de uma operação de longa duração relacionada a uma resposta 202 Aceita. |
Microsoft.DataMigration/locations/sqlMigrationServiceOperationResults/read |
Recuperar resultados da operação de serviço. |
Microsoft.DataMigration/databaseMigrations/write |
Crie ou atualize um recurso de migração de banco de dados. |
Microsoft.DataMigration/databaseMigrations/read |
Recupere um recurso de migração de banco de dados. |
Microsoft.DataMigration/databaseMigrations/delete |
Exclua um recurso de migração de banco de dados. |
Microsoft.DataMigration/databaseMigrations/cancel/action |
Pare a migração contínua para o banco de dados. |
Microsoft.DataMigration/sqlMigrationServices/write |
Crie um novo serviço ou altere as propriedades de um serviço existente. |
Microsoft.DataMigration/sqlMigrationServices/delete |
Excluir um serviço existente. |
Microsoft.DataMigration/sqlMigrationServices/read |
Recupere os detalhes do serviço de migração. |
Microsoft.DataMigration/sqlMigrationServices/listAuthKeys/action |
Recupere a lista de chaves de autenticação. |
Microsoft.DataMigration/sqlMigrationServices/regenerateAuthKeys/action |
Regenere as chaves de autenticação. |
Microsoft.DataMigration/sqlMigrationServices/deleteNode/action |
Desregiste o nó de runtime da integração. |
Microsoft.DataMigration/sqlMigrationServices/listMonitoringData/action |
Liste os dados de monitoramento para todas as migrações. |
Microsoft.DataMigration/sqlMigrationServices/listMigrations/read |
Lista as migrações para o usuário. |
Microsoft.DataMigration/sqlMigrationServices/MonitoringData/read |
Recupere os dados de monitoramento. |
Microsoft.DataMigration/SqlMigrationServices/tasks/read |
Obter detalhes da tarefa do Serviço de Migração |
Microsoft.DataMigration/SqlMigrationServices/tasks/write |
Criar ou atualizar tarefa do Serviço de Migração |
Microsoft.DataMigration/SqlMigrationServices/tasks/delete |
Excluir tarefa do Serviço de Migração |
Você pode obter um script de exemplo para criar um logon e provisioná-lo com as permissões necessárias, para VMware, Hyper-Vou servidores físicos, usando a autenticação do Windows ou a autenticação do SQL Server.
Atribuição de funções
Para atribuir uma função a um usuário ou a uma ID de aplicativo:
No portal do Azure, vá para o recurso.
No menu à esquerda, selecione controlo de acesso (IAM)e, em seguida, desça para encontrar as funções personalizadas que você criou.
Selecione as funções a atribuir, selecione o ID do utilizador ou da aplicação e, em seguida, guarde as alterações.
O ID do utilizador ou do aplicativo agora aparece no separador Atribuições de função.