Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
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 é configurada apenas com as permissões necessárias para iniciar e executar migrações usando uma instância do Serviço de Migração de Banco de Dados do Azure, visando a Instância Gerenciada de SQL do Azure. Para provisionar uma nova instância do Serviço de Migração de Banco de Dados do Azure, o usuário deve receber a função Proprietário ou Colaborador no nível da assinatura.
Os usuários também podem usar as seguintes funções internas:
- Função de Migração do SqlVM
- Função de Migração do SqlMI
- Função de Migração do SqlDB
Essas funções internas permitem que os usuários:
- Crie e exclua instâncias do Serviço de Migração de Banco de Dados (DMS).
- Execute migrações de banco de dados usando DMS.
Observação
Para configurar a migração usando o portal do Azure, você também precisa do acesso ao Storage Blob Data Reader no contêiner de blobs.
Para a função Personalizada:
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 é o que efetivamente executa a atribuição de função.
{
"properties": {
"roleName": "DmsCustomRoleDemoForMI",
"description": "",
"assignableScopes": [
"/subscriptions/<storageSubscription>/resourceGroups/<storageAccountRG>",
"/subscriptions/<ManagedInstanceSubscription>/resourceGroups/<managedInstanceRG>",
"/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.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",
"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",
"Microsoft.DataMigration/SqlMigrationServices/tasks/read",
"Microsoft.DataMigration/SqlMigrationServices/tasks/write",
"Microsoft.DataMigration/SqlMigrationServices/tasks/delete",
"Microsoft.DataMigration/sqlMigrationServices/validateIR/action"
],
"notActions": [],
"dataActions": [
"Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read"
],
"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.
Observação
Ao migrar para o Instância Gerenciada de SQL do Azure ou o SQL do Azure Virtual Machine usando o Portal do Azure, certifique-se de que o usuário conectado tenha acesso Storage Blob Data Reader ao contêiner de blob que contém os arquivos de backup. Essa permissão é necessária para listar pastas e arquivos no contêiner de blob durante a instalação da migração apenas por meio do portal do Azure.
Descrição das permissões necessárias para migrar para uma Instância Gerenciada de SQL do Azure
| Ação de permissão | Descrição |
|---|---|
Microsoft.Storage/storageAccounts/read |
Retornar a lista de contas de armazenamento ou obter as propriedades da conta de armazenamento especificada. |
Microsoft.Storage/storageAccounts/listkeys/action |
Retornar as chaves de acesso da conta de armazenamento especificada. |
Microsoft.Storage/storageAccounts/blobServices/read |
Lista os serviços de blob. |
Microsoft.Storage/storageAccounts/blobServices/write |
Retorna o resultado da definição das propriedades do serviço Blob. |
Microsoft.Storage/storageAccounts/blobServices/containers/read |
Retorna a lista de contêineres. |
Microsoft.Sql/managedInstances/read |
Retorna a lista de instâncias gerenciadas ou obtém as propriedades da instância gerenciada especificada. |
Microsoft.Sql/managedInstances/write |
Criar uma instância gerenciada com os parâmetros especificados ou atualizar as propriedades ou marcas para a instância gerenciada especificada. |
Microsoft.Sql/managedInstances/databases/read |
Recupera o banco de dados gerenciado existente. |
Microsoft.Sql/managedInstances/databases/write |
Cria um novo banco de dados ou atualiza um banco de dados existente. |
Microsoft.Sql/managedInstances/databases/delete |
Exclui um banco de dados gerenciado existente. |
Microsoft.DataMigration/locations/operationResults/read |
Obtém o status de uma operação de longa duração relacionada a uma resposta 202 Accepted. |
Microsoft.DataMigration/locations/operationStatuses/read |
Obtenha o status de uma operação de longa duração relacionada a uma resposta 202 Accepted. |
Microsoft.DataMigration/locations/sqlMigrationServiceOperationResults/read |
Recuperar resultados da operação do serviço. |
Microsoft.DataMigration/databaseMigrations/write |
Cria ou atualiza o recurso de Migração de Banco de Dados. |
Microsoft.DataMigration/databaseMigrations/read |
Recupera o recurso de Migração de Banco de Dados. |
Microsoft.DataMigration/databaseMigrations/delete |
Exclui o 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/databaseMigrations/cutover/action |
Operação de transição da migração online do 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 |
Exclui o serviço existente. |
Microsoft.DataMigration/sqlMigrationServices/read |
Recupera detalhes do serviço de migração. |
Microsoft.DataMigration/sqlMigrationServices/listAuthKeys/action |
Recupera a lista de chaves de autenticação. |
Microsoft.DataMigration/sqlMigrationServices/regenerateAuthKeys/action |
Regenera as chaves de autenticação. |
Microsoft.DataMigration/sqlMigrationServices/deleteNode/action |
Cancele o registro do nó de IR. |
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 |
Recupera os dados de monitoramento. |
Microsoft.SqlVirtualMachine/sqlVirtualMachines/read |
Recupera detalhes da máquina virtual do SQL. |
Microsoft.SqlVirtualMachine/sqlVirtualMachines/write |
Criar uma nova máquina virtual SQL ou alterar as propriedades de uma existente. |
Microsoft.DataMigration/SqlMigrationServices/tasks/read |
Obter detalhes da Tarefa do Serviço de Migração |
Microsoft.DataMigration/SqlMigrationServices/tasks/write |
Tarefa Criar ou Atualizar Serviço de Migração |
Microsoft.DataMigration/SqlMigrationServices/tasks/delete |
Excluir Tarefa do Serviço de Migração |
Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read |
Ler contêineres de blobs em uma conta de Armazenamento do Azure |
Microsoft.DataMigration/sqlMigrationServices/validateIR/action |
Valida o tempo de execução da integração. |
Você pode obter um script de exemplo para criar um login e provisioná-lo com as permissões necessárias para servidores VMware, Hyper-V ou físicos, usando autenticação do Windows ou 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.