Storage Transfer Service は、Identity and Access Management(IAM)の権限とロールを使用して、Storage Transfer Service リソースへアクセスできるユーザーを制御します。Storage Transfer Service で利用可能な主なリソースは、ジョブ、オペレーション、エージェント プールです。IAM ポリシーの階層では、ジョブはプロジェクトの子リソースであり、オペレーションはジョブの子リソースです。
リソースへのアクセス権を付与するには、1 つ以上の権限またはロールを、ユーザー、グループ、サービス アカウントに割り当てます。
権限
次の Storage Transfer Service の権限を付与できます。
転送プロジェクト権限
| 権限 | 説明 |
|---|---|
storagetransfer.projects.getServiceAccount |
Cloud Storage バケットにアクセスするために、Storage Transfer Service を使用する GoogleServiceAccount を読み取れます。 |
転送ジョブ権限
次の表は、Storage Transfer Service のジョブ権限を示しています。
| 権限 | 説明 |
|---|---|
storagetransfer.jobs.create |
新しい転送ジョブを作成できます。 |
storagetransfer.jobs.delete |
既存の転送ジョブを削除できます。 パッチ機能を呼び出せば、転送ジョブは削除されます。ただし、権限エラーを回避するためには、転送ジョブを削除するときに、ユーザーがこの権限を持っていることが必要です。 |
storagetransfer.jobs.get |
特定のジョブを取得できます。 |
storagetransfer.jobs.list |
すべての転送ジョブを一覧表示できます。 |
storagetransfer.jobs.run |
すべての転送ジョブを実行できます。 |
storagetransfer.jobs.update |
転送ジョブの構成を削除せずに、更新できます。 |
転送オペレーション権限
次の表は、Storage Transfer Service のオペレーション権限を示しています。
| 権限 | 説明 |
|---|---|
storagetransfer.operations.assign |
転送エージェントによるオペレーションの割り当てに使用されます。カスタムロールではサポートされていません。代わりに、事前定義された roles/storagetransfer.transferAgent ロールを付与してください。 |
storagetransfer.operations.cancel |
転送オペレーションをキャンセルできます。 |
storagetransfer.operations.get |
転送オペレーションの詳細を取得できます。 |
storagetransfer.operations.list |
すべての転送ジョブ オペレーションを一覧表示できます。 |
storagetransfer.operations.pause |
転送オペレーションを一時停止できます。 |
storagetransfer.operations.report |
転送エージェントがオペレーションのステータスを報告するために使用します。カスタムロールではサポートされていません。代わりに、事前定義された roles/storagetransfer.transferAgent ロールを付与してください。 |
storagetransfer.operations.resume |
一時停止した転送オペレーションを再開できます。 |
転送エージェント プールの権限
次の表に、転送エージェント プールの権限を示します。
| 権限 | 説明 |
|---|---|
storagetransfer.agentpools.create |
エージェント プールを作成し、帯域幅の上限を構成できます。 |
storagetransfer.agentpools.update |
エージェント プールと帯域幅の上限を更新できます。 |
storagetransfer.agentpools.delete |
エージェント プールを削除できます。 |
storagetransfer.agentpools.get |
特定のエージェント プールの情報と帯域幅の上限を取得できます。 |
storagetransfer.agentpools.list |
プロジェクト内のすべてのエージェント プールの情報と帯域幅の上限を一覧表示できます。 |
storagetransfer.agentpools.report |
ステータスを報告するために転送エージェントによって使用されます。カスタムロールではサポートされていません。代わりに、事前定義された roles/storagetransfer.transferAgent ロールを付与してください。 |
事前定義ロール
このセクションでは、Storage Transfer Service の事前定義ロールについて説明します。IAM 権限を設定する際は、ロールを使用することをおすすめします。
ロールの比較
プリンシパルには、次の Storage Transfer Service の事前定義ロールを割り当てることができます。
| 能力 | Storage Transfer 管理者 ( roles/storagetransfer.admin) |
Storage Transfer ユーザー ( roles/storagetransfer.user) |
Storage Transfer 閲覧者 ( roles/storagetransfer.viewer) |
|---|---|---|---|
| ジョブの一覧表示と取得 | |||
| ジョブを作成して構成する | |||
| ジョブの実行と更新 | |||
| ジョブの削除 | |||
| 転送オペレーションを一覧表示して取得する | |||
| 転送オペレーションの一時停止、再開、キャンセル | |||
| Storage Transfer Service サービス アカウントの詳細を読み取る | |||
| エージェント プールを一覧表示して取得する | |||
| エージェント プールを作成して更新する | |||
| エージェント プールの削除 | |||
| エージェント プールの帯域幅の上限を設定する |
ロールの詳細
次の表は、Storage Transfer Service の事前定義ロールの詳細を示したものです。
| 役割 | 説明 | 含まれる権限 |
|---|---|---|
|
Storage Transfer 管理者 ( roles/storagetransfer.admin)
|
転送ジョブとエージェント プールの作成、更新、実行、削除など、すべての Storage Transfer Service リソースに対する完全な管理者権限を付与します。 |
|
|
Storage Transfer ユーザー ( roles/storagetransfer.user)
|
プロジェクト内で転送ジョブとエージェント プールを作成、取得、更新、実行する権限を付与します。転送ジョブやエージェント プールを削除できないため、過去の転送の完全な監査記録が保持されます。 |
|
| Storage Transfer 閲覧者 ( roles/storagetransfer.viewer) |
プロジェクト内の転送ジョブ、オペレーション、エージェント プールを表示および一覧表示するための読み取り専用権限を付与します。転送を作成、実行、更新、削除できません。 |
|
Storage Transfer エージェント(roles/storagetransfer.transferAgent)
|
転送を完了するために必要な Storage Transfer Service の権限を転送エージェントに付与します。 2024 年 5 月 1 日以降、 エージェントによって使用されるユーザーまたはサービス アカウントにこのロールを付与します。 |
|
Storage Transfer Service エージェント
(roles/storagetransfer.serviceAgent)
|
Google Cloud から転送エージェントに通信する Pub/Sub トピックの作成と変更のために必要な権限を Storage Transfer Service サービス エージェントに付与します。 このロールを Storage Transfer Service サービス エージェントに付与します。 |
|
カスタムロール
カスタム IAM ロールを作成して、組織のアクセス要件を満たすことができます。
カスタムロールを作成する場合は、適切な権限が含まれるように事前定義ロールを組み合わせて使用することをおすすめします。
必要な権限がカスタムロールにないと、 Google Cloud コンソールは正しく機能しません。たとえば、 Google Cloud コンソールの一部では、編集前にアイテムを表示する読み取りアクセス権がロールにあることが想定されています。書き込み権限しかないロールでは、 Google Cloud コンソールの画面は機能しません。