Controle de acesso com o IAM

Visão geral

O Game Servers usa o gerenciamento de identidade e acesso (IAM) para controlar o acesso.

No Game Servers, o controle de acesso pode ser configurado no nível do projeto, do realm, do cluster, da implantação ou da configuração. Por exemplo, é possível conceder acesso a todos os clusters de um projeto para um grupo de desenvolvedores.

Para uma descrição detalhada do IAM e dos recursos dele, consulte a documentação do IAM. Especificamente, consulte a seção sobre como gerenciar as políticas do IAM.

Todos os métodos da API Game Services exigem que o autor da chamada tenha as permissões necessárias. Para mais informações, consulte Permissões e Papéis.

Permissões

Nesta seção, resumimos as permissões do Game Servers compatíveis com o IAM.

Permissões necessárias

As tabelas a seguir listam as permissões do IAM associadas ao Game Servers.

Método de realms Permissões necessárias
realms.create gameservices.realms.create no projeto pai do Google Cloud.
realms.delete gameservices.realms.delete no realms solicitado.
realms.get gameservices.realms.get no realms pai.
realms.list gameservices.realms.list no projeto pai do Google Cloud.
realms.patch gameservices.realms.update no realms solicitado.
realms.previewUpdate gameservices.realms.get no realms solicitado.
Método de clusters Permissões necessárias
realms.gameServerClusters.create gameservices.gameServerClusters.create no realms pai.
realms.gameServerClusters.delete gameservices.gameServerClusters.delete no cluster solicitado.
realms.gameServerClusters.list gameservices.gameServerClusters.list no realms pai.
realms.gameServerClusters.get gameservices.gameServerClusters.get no cluster solicitado.
realms.gameServerClusters.patch gameservices.gameServerClusters.update no cluster solicitado.
realms.gameServerClusters.previewCreate gameservices.gameServerClusters.get no cluster solicitado.
realms.gameServerClusters.previewDelete gameservices.gameServerClusters.get no cluster solicitado.
realms.gameServerClusters.previewUpdate gameservices.gameServerClusters.get no cluster solicitado.
Método de implantação Permissões necessárias
gameServerDeployments.create gameservices.gameServerDeployments.create no projeto pai do Google Cloud.
gameServerDeployments.delete gameservices.gameServerDeployments.delete na implantação solicitada.
gameServerDeployments.fetchDeploymentState gameservices.gameServerDeployments.get na implantação solicitada.
gameServerDeployments.get gameservices.gameServerDeployments.get na implantação solicitada.
gameServerDeployments.getRollout gameservices.gameServerDeployments.get na implantação solicitada.
gameServerDeployments.list gameservices.gameServerDeployments.list no projeto pai do Google Cloud.
gameServerDeployments.patch gameservices.gameServerDeployments.update na implantação solicitada.
gameServerDeployments.previewRollout gameservices.gameServerDeployments.get na implantação solicitada.
gameServerDeployments.updateRollout gameservices.gameServerDeployments.rollout na implantação solicitada.
Método de configuração Permissões necessárias
gameServerDeployments.configs.create gameservices.gameServerConfigs.create na implantação pai.
gameServerDeployments.configs.delete gameservices.gameServerConfigs.delete na configuração solicitada.
gameServerDeployments.configs.get gameservices.gameServerConfigs.get na configuração solicitada.
gameServerDeployments.configs.list gameservices.gameServerConfigs.list na implantação pai.

Papéis

Na tabela abaixo, veja os papéis do IAM do Game Servers, incluindo as permissões associadas a cada papel:

Papel do Game Servers Permissões
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 Todas as permissões roles/gameservices.viewer e:
  • 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

Os papéis roles/owner, roles/editor e roles/viewer também incluem permissões para outros serviços do Google Cloud. Para mais informações sobre papéis, consulte Noções básicas sobre papéis.

Papéis personalizados

Se os papéis predefinidos do IAM não atenderem às suas necessidades, defina papéis personalizados com permissões especificadas por você. Para isso, o IAM oferece papéis personalizados. Ao criar papéis personalizados para o Game Servers, certifique-se de incluir resourcemanager.projects.get e resourcemanager.projects.list para que o papel tenha permissão para consultar recursos do projeto. Caso contrário, o Console do Google Cloud não funcionará corretamente para o Game Servers.