Contrôle des accès avec IAM

Présentation

Game Servers utilise la gestion de l'authentification et des accès (IAM) pour le contrôle des accès.

Dans Game Servers, le contrôle des accès peut être configuré au niveau du projet, du domaine, du cluster, du déploiement ou de la configuration. Par exemple, vous pouvez accorder à un groupe de développeurs l'accès à tous les clusters d'un projet.

Pour une description détaillée d'IAM et de ses fonctionnalités, consultez la documentation IAM. en particulier la section expliquant comment gérer les stratégies Cloud IAM.

Pour appeler une méthode de l'API des services de jeux, l'appelant doit disposer des autorisations nécessaires. Consultez les sections Autorisations et Rôles pour plus d'informations.

Autorisations

Cette section récapitule les autorisations de Game Servers compatibles avec IAM.

Autorisations requises

Les tableaux suivants répertorient les autorisations IAM associées à Game Servers.

Méthode des domaines Autorisations requises
realms.create gameservices.realms.create sur le projet Google Cloud parent.
realms.delete gameservices.realms.delete sur le domaine demandé.
realms.get gameservices.realms.get sur le domaine parent.
realms.list gameservices.realms.list sur le projet Google Cloud parent.
realms.patch gameservices.realms.update sur le domaine demandé.
realms.previewUpdate gameservices.realms.get sur le domaine demandé.
Méthode des clusters Autorisations requises
realms.gameServerClusters.create gameservices.gameServerClusters.create sur le domaine parent.
realms.gameServerClusters.delete gameservices.gameServerClusters.delete sur le cluster demandé.
realms.gameServerClusters.list gameservices.gameServerClusters.list sur le domaine parent.
realms.gameServerClusters.get gameservices.gameServerClusters.get sur le cluster demandé.
realms.gameServerClusters.patch gameservices.gameServerClusters.update sur le cluster demandé.
realms.gameServerClusters.previewCreate gameservices.gameServerClusters.get sur le cluster demandé.
realms.gameServerClusters.previewDelete gameservices.gameServerClusters.get sur le cluster demandé.
realms.gameServerClusters.previewUpdate gameservices.gameServerClusters.get sur le cluster demandé.
Méthode de déploiement. Autorisations requises
gameServerDeployments.create gameservices.gameServerDeployments.create sur le projet Google Cloud parent.
gameServerDeployments.delete gameservices.gameServerDeployments.delete sur le déploiement demandé.
gameServerDeployments.fetchDeploymentState gameservices.gameServerDeployments.get sur le déploiement demandé.
gameServerDeployments.get gameservices.gameServerDeployments.get sur le déploiement demandé.
gameServerDeployments.getRollout gameservices.gameServerDeployments.get sur le déploiement demandé.
gameServerDeployments.list gameservices.gameServerDeployments.list sur le projet Google Cloud parent.
gameServerDeployments.patch gameservices.gameServerDeployments.update sur le déploiement demandé.
gameServerDeployments.previewRollout gameservices.gameServerDeployments.get sur le déploiement demandé.
gameServerDeployments.updateRollout gameservices.gameServerDeployments.rollout sur le déploiement demandé.
Méthode de configuration Autorisations requises
gameServerDeployments.configs.create gameservices.gameServerConfigs.create sur le déploiement parent.
gameServerDeployments.configs.delete gameservices.gameServerConfigs.delete sur la configuration demandée.
gameServerDeployments.configs.get gameservices.gameServerConfigs.get sur la configuration demandée.
gameServerDeployments.configs.list gameservices.gameServerConfigs.list sur le déploiement parent.

Rôles

Le tableau suivant répertorie les rôles IAM pour Game Servers, y compris les autorisations associées à chaque rôle :

Rôle Game Servers Autorisations
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 Toutes les autorisations roles/gameservices.viewer et :
  • 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

Les rôles roles/owner, roles/editor et roles/viewer incluent également des autorisations pour d'autres services Google Cloud. Pour en savoir plus sur les rôles, consultez la page Comprendre les rôles.

Rôles personnalisés

Si les rôles IAM prédéfinis ne répondent pas à vos besoins, vous pouvez définir des rôles personnalisés avec des autorisations que vous spécifiez. Pour ce faire, utilisez les rôles personnalisés dans IAM. Lorsque vous créez des rôles personnalisés pour Game Servers, veillez à inclure à la fois resourcemanager.projects.get et resourcemanager.projects.list pour que le rôle soit autorisé à interroger les ressources du projet. Si vous ne le faites pas, la console Google Cloud ne fonctionnera pas correctement pour Game Servers.