IAM によるアクセス制御

概要

Game Servers は、アクセス制御に Identity and Access Management(IAM)を使用します。

Game Servers では、プロジェクト、レルム、クラスタ、デプロイメント、構成ファイルのいずれかのレベルでアクセス制御を構成できます。たとえば、プロジェクト内のすべてのクラスタへのアクセス権を、デベロッパーのグループに付与できます。

IAM とその機能の詳細については、IAM のドキュメントをご覧ください。特に、IAM ポリシーの管理のセクションをご覧ください。

どの Game Services API メソッドも、呼び出し元に必要な権限がなければ実行できません。詳細については、権限ロールをご覧ください。

権限

このセクションでは、IAM でサポートされている Game Servers の権限を簡単に説明します。

必要な権限

次の表は、Game Servers に関連付けられた IAM の権限を示したものです。

レルム メソッド 必要な権限
realms.create 親 Google Cloud プロジェクトに対する gameservices.realms.create
realms.delete リクエストされたレルムに対する gameservices.realms.delete
realms.get 親レルムに対する gameservices.realms.get
realms.list 親 Google Cloud プロジェクトに対する gameservices.realms.list
realms.patch リクエストされたレルムに対する gameservices.realms.update
realms.previewUpdate リクエストされたレルムに対する gameservices.realms.get
クラスタ メソッド 必要な権限
realms.gameServerClusters.create 親レルムに対する gameservices.gameServerClusters.create
realms.gameServerClusters.delete リクエストされたクラスタに対する gameservices.gameServerClusters.delete
realms.gameServerClusters.list 親レルムに対する gameservices.gameServerClusters.list
realms.gameServerClusters.get リクエストされたクラスタに対する gameservices.gameServerClusters.get
realms.gameServerClusters.patch リクエストされたクラスタに対する gameservices.gameServerClusters.update
realms.gameServerClusters.previewCreate リクエストされたクラスタに対する gameservices.gameServerClusters.get
realms.gameServerClusters.previewDelete リクエストされたクラスタに対する gameservices.gameServerClusters.get
realms.gameServerClusters.previewUpdate リクエストされたクラスタに対する gameservices.gameServerClusters.get
デプロイメント メソッド 必要な権限
gameServerDeployments.create 親 Google Cloud プロジェクトに対する gameservices.gameServerDeployments.create
gameServerDeployments.delete リクエストされたデプロイメントに対する gameservices.gameServerDeployments.delete
gameServerDeployments.fetchDeploymentState リクエストされたデプロイメントに対する gameservices.gameServerDeployments.get
gameServerDeployments.get リクエストされたデプロイメントに対する gameservices.gameServerDeployments.get
gameServerDeployments.getRollout リクエストされたデプロイメントに対する gameservices.gameServerDeployments.get
gameServerDeployments.list 親 Google Cloud プロジェクトに対する gameservices.gameServerDeployments.list
gameServerDeployments.patch リクエストされたデプロイメントに対する gameservices.gameServerDeployments.update
gameServerDeployments.previewRollout リクエストされたデプロイメントに対する gameservices.gameServerDeployments.get
gameServerDeployments.updateRollout リクエストされたデプロイメントに対する gameservices.gameServerDeployments.rollout
構成ファイル メソッド 必要な権限
gameServerDeployments.configs.create 親デプロイメントに対する gameservices.gameServerConfigs.create
gameServerDeployments.configs.delete リクエストされた構成ファイルに対する gameservices.gameServerConfigs.delete
gameServerDeployments.configs.get リクエストされた構成ファイルに対する gameservices.gameServerConfigs.get
gameServerDeployments.configs.list 親デプロイメントに対する gameservices.gameServerConfigs.list

役割

次の表は、Game Servers IAM のロールと、各ロールに関連付けられた権限を示したものです。

Game Servers のロール 権限
roles/gameservices.viewer
  • gameservices.realms.list
  • gameservices.realms.get
  • gameservices.realms.get
  • gameservices.gameServerClusters.list
  • gameservices.gameServerClusters.get
  • gameservices.gameServerClusters.get
  • gameservices.gameServerClusters.get
  • gameservices.gameServerClusters.get
  • gameservices.gameServerDeployments.list
  • gameservices.gameServerDeployments.get
  • gameservices.gameServerDeployments.get
  • gameservices.gameServerDeployments.get
  • gameservices.gameServerDeployments.get
  • gameservices.gameServerConfigs.list
  • gameservices.gameServerConfigs.get
roles/gameservices.admin すべての roles/gameservices.viewer 権限、および
  • gameservices.realms.create
  • gameservices.realms.delete
  • gameservices.realms.update
  • gameservices.gameServerClusters.create
  • gameservices.gameServerClusters.delete
  • gameservices.gameServerClusters.update
  • gameservices.gameServerDeployments.create
  • gameservices.gameServerDeployments.delete
  • gameservices.gameServerDeployments.update
  • gameservices.gameServerDeployments.rollout
  • gameservices.gameServerConfigs.create
  • gameservices.gameServerConfigs.delete

ロール roles/ownerroles/editorroles/viewer には、他の Google Cloud サービスに対する権限も含まれます。ロールの詳細については、ロールについてをご覧ください。

カスタムの役割

事前定義された IAM のロールがニーズに合わない場合は、指定した権限を含むカスタムのロールを定義できます。これをサポートするため、IAM にはカスタムのロールが用意されています。 Game Servers のカスタムのロールを作成する際は、ロールにプロジェクト リソースをクエリする権限が含まれるように、resourcemanager.projects.getresourcemanager.projects.list の両方を含めてください。このように設定しないと、Google Cloud Console は Game Servers に対して正しく機能しません。