IAM を使用したアクセス制御

AI Platform Training は、Identity and Access Management(IAM)を使用してリソースへのアクセスを管理します。リソースへのアクセス権を付与するには、ユーザー、グループ、またはサービス アカウントに 1 つ以上のロールを割り当てます。

AI Platform Training で使用できる IAM ロールは次の 3 種類です。

  • 基本ロール(オーナー、閲覧者、編集者)。すべての Google Cloud サービスに共通のロールです。

  • 事前定義の AI Platform Training のロール。AI Platform Training のリソースに対するアクセス権をプロジェクト レベルまたはモデルレベルできめ細かく設定できます。

  • カスタムロールを使用すると、特定の権限セットを選択し、それらの権限を持つ独自のロールを作成して、組織内のユーザーに付与できます。

このガイドでは、事前定義の AI Platform Training のロールを中心に説明します。ロールの一般的な使い方や関連する権限について解説します。

このガイドでは、AI Platform Training のリソースにアクセスするために必要なロールと権限について説明します。これらのリソース自体で他の Google Cloud リソースにアクセスするために必要な権限の詳細については、AI Platform の サービス エージェントとカスタム サービス アカウントをご覧ください。

基本ロール

従来の AI Platform Training の IAM ロールは、すべての GCP サービスに共通の基本ロール(オーナー、閲覧者、編集者)に基づいています。

従来のプロジェクト編集者ロールは、AI Platform Training 管理者ロールと同等です。

従来のプロジェクト閲覧者ロールには、AI Platform Training 閲覧者ロールと同じ権限だけでなく、オンライン予測リクエストの送信権限も割り当てられています。AI Platform Training 閲覧者ロールを使用すると、AI Platform Training のリソースに対する読み取り専用権限をユーザーに付与できます。

事前定義ロール

事前定義ロールには、関連する権限セットが割り当てられています。AI Platform Training の事前定義ロールを使用すると、プロジェクト、個々のモデル、ジョブ、オペレーションに対する権限を付与できます。

各ロールのすべての権限の一覧を表示するには、ロールの名前をクリックします。

プロジェクトのロール

AI Platform Training の管理者、デベロッパー、閲覧者のロールを使用すると、リソースに対するさまざまな権限をプロジェクト レベルで付与できます。

AI Platform Training のプロジェクトで、これらのロールを追加、更新または削除する方法については、アクセス権の付与、変更、取り消しに関するドキュメントをご覧ください。

ロールのタイトル 役割名 機能
AI Platform Training 管理者

roles/ml.admin

AI Platform Training のプロジェクト、ジョブ、オペレーション、モデル バージョンに対して完全アクセス権が付与されます。

注: 基本のプロジェクト編集者のロールは roles/ml.admin と同等です。

AI Platform Training デベロッパー

roles/ml.developer

トレーニング ジョブと予測ジョブ、モデルとバージョンを作成し、オンライン予測リクエストを送信します。

AI Platform Training 閲覧者

roles/ml.viewer

AI Platform Training リソースに対する読み取り専用権限。

ジョブとオペレーションのロール

モデルオーナーのロールと同様に、ジョブまたはオペレーションを作成するユーザーに自動的に割り当てられるジョブおよびオペレーション リソースレベルのオーナーのロールがあります。これらのロールにより、ユーザーは自分が作成したジョブやオペレーションのすべてを管理できます。詳細については、ジョブとオペレーションのロールの権限をご覧ください。

権限とロール

このセクションでは、AI Platform Training に事前定義されているロールで付与される権限について説明します。これらの事前定義ロールがニーズを満たしていない場合は、このセクションの情報を参考にして、独自のカスタムロールを作成してください。

管理者のロール

ロール名 説明 権限
roles/ml.admin AI Platform Training 管理者

AI Platform Training のプロジェクト、ジョブ、オペレーション、モデル、バージョンに対する完全アクセス権が付与されます。

注: 基本のプロジェクト編集者のロールからこのロールへの移行は非常に簡単です。以前にプロジェクト レベルで割り当てられた基本の編集者ロールを使用していた場合は、この roles/ml.admin ロールを使用して、まったく同じ権限セットをユーザーに付与できます。

  • resourcemanager.projects.get
  • ml.projects.getConfig
  • ml.jobs.create
  • ml.jobs.list
  • ml.jobs.get
  • ml.jobs.getIamPolicy
  • ml.jobs.setIamPolicy
  • ml.jobs.cancel
  • ml.operations.list
  • ml.operations.get
  • ml.operations.cancel
  • ml.models.create
  • ml.models.list
  • ml.models.get
  • ml.models.setIamPolicy
  • ml.models.getIamPolicy
  • ml.models.predict
  • ml.models.delete
  • ml.models.update
  • ml.versions.create
  • ml.versions.list
  • ml.versions.get
  • ml.versions.predict
  • ml.versions.delete

デベロッパーのロール

ロール名 説明 権限
roles/ml.developer

トレーニング ジョブと予測ジョブ、モデルとバージョンを作成し、オンライン予測リクエストを送信できます。

注: ジョブを作成すると、作成したデベロッパーに AI Platform Training ジョブオーナーのロールが自動的に付与されます。このため、デベロッパーには自分が作成したすべてのジョブに対する ml.jobs.cancel 権限と ml.jobs.update 権限が付与されます。

推奨事項: トラブルシューティング用に、AI Platform Training ログに対する読み取り専用権限をデベロッパーに付与します。

  • resourcemanager.projects.get
  • ml.projects.getConfig
  • ml.jobs.create
  • ml.jobs.list
  • ml.jobs.get
  • ml.jobs.getIamPolicy
  • ml.operations.list
  • ml.operations.get
  • ml.models.create
  • ml.models.list
  • ml.models.get
  • ml.models.getIamPolicy
  • ml.models.predict
  • ml.versions.list
  • ml.versions.get
  • ml.versions.predict

閲覧者のロール

ロール名 説明 権限
roles/ml.viewer

特定のプロジェクトの AI Platform Training のリソースに対する読み取り専用アクセス権。

注: 従来のプロジェクト閲覧者のロールを使用すると、roles/ml.viewer のロールと同じ権限に加えて、オンライン予測リクエストを送信する権限をユーザーに付与できます。

  • resourcemanager.projects.get
  • ml.projects.getConfig
  • ml.jobs.list
  • ml.jobs.get
  • ml.operations.list
  • ml.operations.get
  • ml.models.list
  • ml.models.get
  • ml.versions.list
  • ml.versions.get

ジョブオーナーのロール

ロール名 説明 権限
roles/ml.jobOwner

特定のジョブリソースに対するすべての権限への完全アクセス権。ジョブオーナーのロールはそのジョブを作成したユーザーに自動的に付与されます。

たとえば、プロジェクトに対して AI Platform Training のデベロッパーのロールを持っているユーザーは、ジョブの作成、一覧表示、特定のプロジェクトのジョブの一覧表示を行うことができます。デベロッパーは、自分が作成したジョブのみをキャンセルできます。

  • ml.jobs.get
  • ml.jobs.getIamPolicy
  • ml.jobs.cancel

オペレーション オーナーのロール

ロール名 説明 権限
roles/ml.operationOwner

特定のオペレーション リソースに対するすべての権限への完全アクセス権。オペレーション オーナーのロールは、バージョンまたはモデルの作成時にユーザーが間接的に作成するすべてのオペレーションに対して、ユーザーに自動的に付与されるため、ユーザーはいつでも自分のオペレーションを取得してキャンセルできます。

  • ml.operations.get
  • ml.operations.cancel

メソッドに必要な権限

このセクションでは、AI Platform Training でメソッド呼び出しに必要な権限について説明します。

メソッド 必要な権限
projects.getConfig ml.projects.getConfig
projects.jobs.cancel ml.jobs.cancel
projects.jobs.create ml.jobs.create
projects.jobs.get ml.jobs.get
projects.jobs.list ml.jobs.list
projects.operations.cancel ml.operations.cancel
projects.operations.get ml.operations.get
projects.operations.list ml.operations.list

次のステップ