Para limitar o acesso de usuários em um projeto ou organização, use os papéis do Identity and Access Management (IAM) para o Database Migration Service e o produto de banco de dados de destino relevante. É possível controlar o acesso a recursos relacionados ao Database Migration Service, em vez de conceder aos usuários o papel de "Leitor", "Editor" ou "Proprietário" em todo o Google Cloud projeto.
Esta página detalha todos os papéis que as contas de usuário e de serviço precisam durante uma migração homogênea do Cloud SQL com o Database Migration Service. Para mais informações sobre quando usar essas permissões durante o processo de migração, consulte Migrar bancos de dados do SQL Server para o Cloud SQL para SQL Server.
Contas envolvidas na execução de jobs de migração
Há três contas envolvidas em migrações de dados realizadas com o Database Migration Service:
- Conta de usuário que realiza a migração
- Essa é a Conta do Google que você usa para fazer login e criar os perfis de conexão, fazer upload dos arquivos de backup para o armazenamento do Cloud Storage e criar e executar o job de migração.
- Conta de serviço do Database Migration Service
- Essa é a conta de serviço criada quando você ativa a API Database Migration Service. O endereço de e-mail associado a essa conta é gerado automaticamente e não pode ser alterado. Esse endereço de e-mail usa o seguinte formato:
service-PROJECT_NUMBER@gcp-sa-datamigration.iam.gserviceaccount.com
- Conta de serviço da instância do Cloud SQL
- Esta é uma conta de serviço atribuída especificamente à instância de destino do Cloud SQL para SQL Server. Ela é criada depois que você cria a instância de destino. É possível visualizar o endereço de e-mail associado a essa conta de serviço na página de detalhes da instância do Cloud SQL. Consulte Ver informações da instância na documentação do Cloud SQL para SQL Server.
Cada conta envolvida no processo de migração de dados exige um conjunto diferente de papéis e permissões.
Permissões e papéis
Para receber as permissões necessárias para realizar migrações homogêneas do SQL Server com o Database Migration Service, peça ao administrador para conceder os papéis do IAM necessários no projeto para as seguintes contas:
- Conta de usuário que realiza a migração:
-
Administrador de migração de banco de dados (
roles/datamigration.admin) -
Administrador de armazenamento (
roles/storage.admin) -
Editor do Cloud SQL (
roles/cloudsql.editor)
-
Administrador de migração de banco de dados (
- Conta de serviço do Database Migration Service:
-
Administrador de migração de banco de dados (
roles/datamigration.admin) -
Administrador de armazenamento (
roles/storage.admin) -
Editor do Cloud SQL (
roles/cloudsql.editor) -
Usuário do Cloud SQL Studio (
roles/cloudsql.studioUser)
-
Administrador de migração de banco de dados (
- Conta de serviço da instância do Cloud SQL:
Leitor de objetos de armazenamento (
roles/storage.objectViewer)
Para mais informações sobre como conceder papéis, consulte Gerenciar acesso.
Esses papéis predefinidos contêm as permissões necessárias para realizar migrações homogêneas do SQL Server com o Database Migration Service. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As permissões a seguir são necessárias para realizar migrações homogêneas do SQL Server com o Database Migration Service:
- Conta de usuário que realiza a migração:
datamigration.*resourcemanager.projects.getresourcemanager.projects.listcloudsql.operations.getcloudsql.instances.createcloudsql.instances.getcloudsql.instances.listcloudsql.instances.importcloudsql.databases.getcloudsql.databases.listcloudsql.databases.deletecompute.machineTypes.listcompute.machineTypes.getcompute.projects.getstorage.buckets.createstorage.buckets.list
- Conta de serviço do Database Migration Service:
datamigration.*resourcemanager.projects.getresourcemanager.projects.listcloudsql.instances.createcloudsql.instances.getcloudsql.instances.listcloudsql.instances.executeSqlstorage.objects.createstorage.objects.list
- Conta de serviço da instância do Cloud SQL:
storage.objects.liststorage.objects.get
Essas permissões também podem ser concedidas com papéis personalizados ou outros papéis predefinidos.