使用 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 正常运行。