适用于 AlloyDB for PostgreSQL 的 Database Migration Service IAM 角色和权限

Database Migration Service 使用 IAM 角色和权限来管理对迁移资源的访问权限。

数据迁移涉及的账号

使用 Database Migration Service 执行从 PostgreSQL 到 AlloyDB for PostgreSQL 的同构迁移时,迁移过程会涉及以下账号:

执行迁移的用户账号
这是您登录时使用的 Google 账号,用于创建连接配置文件、创建和运行迁移作业,以及管理目标 AlloyDB for PostgreSQL 资源。
Database Migration Service 服务账号
这是在您启用 Database Migration Service API 时系统为您创建的服务账号。与此账号关联的电子邮件地址是自动生成的,无法更改。此电子邮件地址采用以下格式:
service-PROJECT_NUMBER@gcp-sa-datamigration.iam.gserviceaccount.com

数据迁移过程中涉及的每个账号都需要一组特定的角色和权限。

权限和角色

如需获得使用 Database Migration Service 执行到 AlloyDB for PostgreSQL 的持续迁移所需的权限,请让管理员为以下账号授予项目的所需 IAM 角色:

如需详细了解如何授予角色,请参阅管理访问权限。

这些预定义角色包含使用 Database Migration Service 执行从 PostgreSQL 到 AlloyDB for PostgreSQL 的同构迁移所需的权限。如需查看所需的确切权限,请展开所需权限部分:

所需权限

如需使用 Database Migration Service 执行从 PostgreSQL 到 AlloyDB for PostgreSQL 的同构迁移,需要以下权限:

  • 执行迁移的用户账号:
    • datamigration.*
    • resourcemanager.projects.get
    • resourcemanager.projects.list
    • alloydb.operations.get
    • alloydb.clusters.create
    • alloydb.clusters.get
    • alloydb.clusters.list
    • alloydb.clusters.update
    • alloydb.clusters.delete
    • alloydb.instances.create
    • alloydb.instances.get
    • alloydb.instances.list
    • alloydb.instances.update
    • alloydb.instances.delete
    • alloydb.users.list
    • alloydb.users.get
    • alloydb.users.create
    • alloydb.users.update
    • alloydb.users.delete
    • compute.networks.get
    • compute.networks.list
    • compute.subnetworks.get
    • compute.subnetworks.list
  • Database Migration Service 服务账号:
    • datamigration.*
    • resourcemanager.projects.get
    • resourcemanager.projects.list
    • alloydb.clusters.create
    • alloydb.clusters.get
    • alloydb.clusters.list
    • alloydb.clusters.update
    • alloydb.instances.create
    • alloydb.instances.get
    • alloydb.instances.list
    • alloydb.instances.update
    • alloydb.instances.executeSql
    • alloydb.operations.get

您也可以使用自定义角色或其他预定义角色来获取这些权限。