Funções personalizadas no SQL Server para migrações do 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 tem apenas as permissões necessárias para criar e executar um 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 o local em que as permissões serão exibidas na interface do usuário de Adicionar atribuição de função no portal do Azure. Para evitar a desorganização da interface do usuário com funções extras, é necessário 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 de fato.
{
"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"
],
"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, confira 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 |
Devolver a lista de recursos do banco de dados SQL ou obter as propriedades do banco de dados SQL especificado. |
Microsoft.Sql/servers/write |
Criar um banco de dados SQL com os parâmetros especificados ou atualizar as propriedades ou marcas para o banco de dados SQL especificado. |
Microsoft.Sql/servers/databases/read |
Obter um banco de dados SQL existente. |
Microsoft.Sql/servers/databases/write |
Criar um novo banco de dados ou atualizar um existente. |
Microsoft.Sql/servers/databases/delete |
Excluir um banco de dados SQL. |
Microsoft.DataMigration/locations/operationResults/read |
Obter os resultados de uma operação de execução prolongada relacionada a uma resposta 202 Aceito. |
Microsoft.DataMigration/locations/operationStatuses/read |
Obtém o status de uma operação de execução longa relacionada a uma resposta 202 – Aceito. |
Microsoft.DataMigration/locations/sqlMigrationServiceOperationResults/read |
Recuperar resultados da operação de serviço. |
Microsoft.DataMigration/databaseMigrations/write |
Criar ou atualizar recurso de migração de banco de dados. |
Microsoft.DataMigration/databaseMigrations/read |
Recuperar um recurso de migração de banco de dados. |
Microsoft.DataMigration/databaseMigrations/delete |
Excluir um recurso de migração de banco de dados. |
Microsoft.DataMigration/databaseMigrations/cancel/action |
Interrompe a migração contínua para o banco de dados. |
Microsoft.DataMigration/sqlMigrationServices/write |
Criar um novo serviço ou alterar as propriedades de um serviço existente. |
Microsoft.DataMigration/sqlMigrationServices/delete |
Excluir um serviço existente. |
Microsoft.DataMigration/sqlMigrationServices/read |
Recuperar os detalhes do serviço de migração. |
Microsoft.DataMigration/sqlMigrationServices/listAuthKeys/action |
Recuperar a lista de chaves de autenticação. |
Microsoft.DataMigration/sqlMigrationServices/regenerateAuthKeys/action |
Gerar novamente a chaves de autenticação. |
Microsoft.DataMigration/sqlMigrationServices/deleteNode/action |
Retirar registro de nó de runtime de integração. |
Microsoft.DataMigration/sqlMigrationServices/listMonitoringData/action |
Lista 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 |
Recuperar os dados de monitoramento. |
Obtenha um script de exemplo para criar um logon e provisioná-lo com as permissões necessárias, para VMware, Hyper-V ou servidores físicos, usando a autenticação do Windows ou a autenticação do SQL Server.
Atribuição de função
Para atribuir uma função a um usuário ou a uma ID do aplicativo:
No portal do Azure, vá para o recurso.
No menu à esquerda, selecione Controle de acesso (IAM) e faça a rolagem para encontrar as funções personalizadas que você criou.
Selecione a função para atribuir, selecione o usuário ou a ID do aplicativo e salve as alterações.
Agora. os usuários ou as IDs de aplicativo são exibidas na guia Atribuições de função.