プロジェクト内または組織内のユーザーのアクセスを制限するには、Database Migration Service と関連する宛先データベース プロダクトの Identity and Access Management(IAM)ロールを使用します。 Google Cloud プロジェクト全体に対する閲覧者、編集者、オーナーのロールを付与するのではなく、Database Migration Service 関連リソースへのアクセスのみを制御できます。
このページでは、Database Migration Service を使用した異種 Cloud SQL 移行中にユーザー アカウントとサービス アカウントに必要なすべてのロールについて詳しく説明します。移行プロセスでこれらの権限を使用するタイミングの詳細については、
Oracle データベースを Cloud SQL for PostgreSQL に移行するをご覧ください。
移行ジョブの実行に関与するアカウント
Database Migration Service で実行されるデータ移行には、次の 2 つのアカウントが関与します。
移行を実行するユーザー アカウント
これは、接続プロファイルの作成、Cloud Storage へのバックアップ ファイルのアップロード、移行ジョブの作成と実行に使用する
Google アカウントです。
Database Migration Service サービス アカウント
これは、Database Migration Service API を有効にしたときに自動的に作成されるサービス アカウントです。このアカウントに関連付けられたメールアドレスは自動的に生成され、変更できません。このメールアドレスの形式は次のとおりです。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["わかりにくい","hardToUnderstand","thumb-down"],["情報またはサンプルコードが不正確","incorrectInformationOrSampleCode","thumb-down"],["必要な情報 / サンプルがない","missingTheInformationSamplesINeed","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-09-01 UTC。"],[],[],null,["# Access control with IAM\n\nTo limit access for users within a project or organization, you can use\nIdentity and Access Management (IAM) roles for Database Migration Service and your relevant\ndestination database product. You can control\naccess to Database Migration Service-related resources, as opposed to granting users\nthe Viewer, Editor, or Owner role to the entire Google Cloud project.\n\nThis page focuses details all of the roles that user and service accounts need\nduring a heterogeneous Cloud SQL migration with Database Migration Service.\nFor more information about when you use these permissions during the migration process, see\n[Migrate your Oracle databases to Cloud SQL for PostgreSQL](/database-migration/docs/oracle-to-postgresql/guide).\n\nAccounts involved in performing migration jobs\n----------------------------------------------\n\nThere are two accounts involved in data migrations performed with\nDatabase Migration Service:\n\nUser account that performs the migration\n: This is the\n [Google Account](/iam/docs/overview#google_account) that you sign in with to create the connection profiles,\n upload the backup files to Cloud Storage, create and run the migration\n job.\n\nDatabase Migration Service service account\n: This is the service account that is created for you when you enable the\n Database Migration Service API. The email address associated with this account is generated\n automatically and can't be changed. This email address uses the following\n format: \n\n ```\n service-PROJECT_NUMBER@gcp-sa-datamigration.iam.gserviceaccount.com\n ```\n\nEach account involved in the data migration process requires a different\nset of roles and permissions.\n\nPermissions and roles\n---------------------\n\nTo get the permissions that you need to perform heterogeneous Oracle\nmigrations with Database Migration Service, ask your administrator to grant you the\nrequired IAM roles on your project:\n\n- [Database Migration Admin](/iam/docs/roles-permissions/datamigration#datamigration.admin) (`roles/datamigration.admin`)\n- [Cloud SQL Admin](/iam/docs/roles-permissions/cloudsql#cloudsql.admin) (`roles/cloudsql.admin`)\n\nFor more information about granting roles, see\n[Manage access](/iam/docs/granting-changing-revoking-access) in the Identity and Access Management documentation.\n\nThese predefined roles contain the permissions required to perform\nheterogeneous Oracle migrations with Database Migration Service. To see the exact\npermissions that are required, expand the\n**Required permissions** section: \n\n#### Required permissions\n\nThe following permissions are required to perform heterogeneous Oracle\nmigrations with Database Migration Service:\n\n- `datamigration.*`\n- `cloudaicompanion.entitlements.get`\n\n This permission is included in the `roles/datamigration.admin`\n role. It is required for the\n [Gemini-enhanced conversion features](/database-migration/docs/oracle-to-postgresql/code-conversion-with-gemini).\n- `cloudsql.instances.create`\n- `cloudsql.instances.get`\n- `cloudsql.instances.list`\n- `cloudsql.instances.update`\n- `cloudsql.instances.delete`\n- `cloudsql.operations.get`\n- `cloudsql.users.list`\n- `cloudsql.users.get`\n- `cloudsql.users.create`\n- `cloudsql.users.update`\n- `cloudsql.users.delete`\n\nYou might also be able to get these permissions with\n[custom roles](/iam/docs/creating-custom-roles) or other\n[predefined roles](/iam/docs/roles-permissions)."]]