Funções personalizadas para SQL Server para Azure SQL Managed Instance migrações com ADS
Este artigo explica como configurar uma função personalizada no Azure para Migrações de Bases de Dados. A função personalizada terá apenas as permissões necessárias para criar e executar um Database Migration Service com SQL Managed Instance como destino.
A secção AssignableScopes da cadeia json de definição de função permite-lhe controlar onde as permissões aparecem na IU Adicionar Atribuição de Funções no portal. É provável que pretenda definir a função no grupo de recursos ou mesmo ao nível dos recursos para evitar a desorganização da IU com funções adicionais. Isto não executa a atribuição de função real.
{
"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"
],
"notActions": [],
"dataActions": [],
"notDataActions": []
}
]
}
}
Pode utilizar o portal do Azure, o AZ PowerShell, a CLI do Azure ou a API REST do Azure para criar as funções.
Para obter mais informações, veja os artigos Criar funções personalizadas com o portal do Azure e as funções personalizadas do Azure.
Descrição das permissões necessárias para migrar para Azure SQL Managed Instance
Ação de Permissão | Description |
---|---|
Microsoft.Storage/storageAccounts/read | Devolve a lista de contas de armazenamento ou obtém as propriedades da conta de armazenamento especificada. |
Microsoft.Storage/storageAccounts/listkeys/action | Devolve as chaves de acesso da conta de armazenamento especificada. |
Microsoft.Storage/storageAccounts/blobServices/read | Listar serviços de blobs. |
Microsoft.Storage/storageAccounts/blobServices/write | Devolve o resultado das propriedades do serviço put blob. |
Microsoft.Storage/storageAccounts/blobServices/containers/read | Devolve a lista de contentores. |
Microsoft.Sql/managedInstances/read | Devolva a lista de instâncias geridas ou obtenha as propriedades da instância gerida especificada. |
Microsoft.Sql/managedInstances/write | Cria uma instância gerida com os parâmetros especificados ou atualiza as propriedades ou etiquetas da instância gerida especificada. |
Microsoft.Sql/managedInstances/databases/read | Obtém a base de dados gerida existente. |
Microsoft.Sql/managedInstances/databases/write | Cria uma nova base de dados ou atualiza uma base de dados existente. |
Microsoft.Sql/managedInstances/databases/delete | Elimina uma base de dados gerida existente. |
Microsoft.DataMigration/locations/operationResults/read | Obtenha o estado de uma operação de execução prolongada relacionada com uma resposta 202 Aceite. |
Microsoft.DataMigration/locations/operationStatuses/read | Obtenha o estado de uma operação de execução prolongada relacionada com uma resposta 202 Aceite. |
Microsoft.DataMigration/locations/sqlMigrationServiceOperationResults/read | Obter Resultados da Operação de Serviço. |
Microsoft.DataMigration/databaseMigrations/write | Criar ou Atualizar recurso de Migração da Base de Dados. |
Microsoft.DataMigration/databaseMigrations/read | Obter o recurso de Migração da Base de Dados. |
Microsoft.DataMigration/databaseMigrations/delete | Eliminar recurso de Migração de Base de Dados. |
Microsoft.DataMigration/databaseMigrations/cancel/action | Pare a migração contínua para a base de dados. |
Microsoft.DataMigration/databaseMigrations/cutover/action | Operação de migração online de transferência para a base de dados. |
Microsoft.DataMigration/sqlMigrationServices/write | Criar uma propriedade nova ou alterar do Serviço existente |
Microsoft.DataMigration/sqlMigrationServices/delete | Elimine o Serviço existente. |
Microsoft.DataMigration/sqlMigrationServices/read | Obtenha detalhes do Serviço de Migração. |
Microsoft.DataMigration/sqlMigrationServices/listAuthKeys/action | Obtenha a Lista de Chaves de Autenticação. |
Microsoft.DataMigration/sqlMigrationServices/regenerateAuthKeys/action | Regenerar as Chaves de Autenticação. |
Microsoft.DataMigration/sqlMigrationServices/deleteNode/action | Anular o registo do nó do IR. |
Microsoft.DataMigration/sqlMigrationServices/listMonitoringData/action | Lista os Dados de Monitorização para todas as migrações. |
Microsoft.DataMigration/sqlMigrationServices/listMigrations/read | Lista as migrações para o utilizador. |
Microsoft.DataMigration/sqlMigrationServices/MonitoringData/read | Obtenha os Dados de Monitorização. |
Microsoft.SqlVirtualMachine/sqlVirtualMachines/read | Obtenha detalhes da máquina virtual SQL. |
Microsoft.SqlVirtualMachine/sqlVirtualMachines/write | Crie uma nova ou altere as propriedades da máquina virtual SQL existente. |
Atribuição de função
Para atribuir uma função aos utilizadores/ID da APLICAÇÃO, abra o portal do Azure, execute os seguintes passos:
Navegue para o recurso, aceda a Controlo de Acesso e, em seguida, desloque-se para encontrar as funções personalizadas que criou.
Selecione a função adequada, selecione o ID de Utilizador ou APLICAÇÃO e, em seguida, guarde as alterações.
O(s) utilizador ou ID(s) da APLICAÇÃO aparece agora listado no separador Atribuições de funções .
Passos seguintes
- Reveja as orientações de migração para o seu cenário no Guia de Migração da Base de Dados da Microsoft.