View a markdown version of this page

Connectez votre GameLift Serveurs Amazon serveur de jeu hébergé vers un autre AWS resources - GameLift Serveurs Amazon

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Connectez votre GameLift Serveurs Amazon serveur de jeu hébergé vers un autre AWS resources

Lorsque vous créez une version de serveur de jeu à déployer sur Amazon GameLift Servers des flottes, vous souhaiterez peut-être que les applications de votre version de jeu communiquent directement et en toute sécurité avec les autres AWS ressources que vous possédez. Parce que vous Amazon GameLift Servers gérez vos flottes d'hébergement de jeux, vous devez donner un accès Amazon GameLift Servers limité à ces ressources et services.

Voici quelques exemples de scénarios :

  • Faites appel à un CloudWatch agent Amazon pour collecter des métriques, des journaux et des traces à partir de flottes EC2 gérées et de flottes Anywhere.

  • Envoyez les données du journal de l'instance à Amazon CloudWatch Logs.

  • Procurez-vous des fichiers de jeu stockés dans un compartiment Amazon Simple Storage Service (Amazon S3).

  • Lisez et écrivez des données de jeu (telles que les modes de jeu ou l'inventaire) stockées dans une base de données Amazon DynamoDB ou un autre service de stockage de données.

  • Envoyez des signaux directement à une instance à l'aide d'Amazon Simple Queue Service (Amazon SQS).

  • Accédez à des ressources personnalisées déployées et exécutées sur Amazon Elastic Compute Cloud (Amazon EC2).

Amazon GameLift Serversprend en charge les méthodes suivantes pour établir l'accès :

Accès AWS ressources dotées d'un rôle IAM

Utilisez un rôle IAM pour spécifier qui peut accéder à vos ressources et fixer des limites à cet accès. Les parties de confiance peuvent « assumer » un rôle et obtenir des informations d'identification de sécurité temporaires qui les autorisent à interagir avec les ressources. Lorsque les parties effectuent des demandes d'API liées à la ressource, elles doivent inclure les informations d'identification.

Pour configurer un accès contrôlé par un rôle IAM, effectuez les tâches suivantes :

Création du rôle IAM

Au cours de cette étape, vous allez créer un rôle IAM, doté d'un ensemble d'autorisations pour contrôler l'accès à vos AWS ressources et d'une politique de confiance qui donne le Amazon GameLift Servers droit d'utiliser les autorisations du rôle.

Pour obtenir des instructions sur la configuration du rôle IAM, consultezConfigurer un rôle de service IAM pour Amazon GameLift Servers. Lors de la création de la politique d'autorisations, choisissez les services, les ressources et les actions spécifiques avec lesquels vos applications doivent fonctionner. Il est recommandé de limiter autant que possible la portée des autorisations.

Après avoir créé le rôle, prenez note de son Amazon Resource Name (ARN). Vous avez besoin du rôle ARN lors de la création de la flotte.

Modifier les applications pour obtenir des informations d'identification

Au cours de cette étape, vous configurez vos applications pour acquérir des informations d'identification de sécurité pour le rôle IAM et les utiliser lors de l'interaction avec vos AWS ressources. Consultez le tableau suivant pour déterminer comment modifier vos applications en fonction (1) du type d'application et (2) de la version du SDK du serveur avec Amazon GameLift Servers laquelle votre jeu communique.

Applications pour serveurs de jeux Autres applications

Utilisation de la version 5.x du SDK du serveur

Appelez la méthode du SDK du serveur GetFleetRoleCredentials() à partir du code de votre serveur de jeu.

Ajoutez du code à l'application pour extraire les informations d'identification d'un fichier partagé sur l'instance de flotte.

Utilisation du SDK du serveur version 4 ou antérieure

Appelez AWS Security Token Service (AWS STS) AssumeRole avec le rôle ARN.

Appelez AWS Security Token Service (AWS STS) AssumeRole avec le rôle ARN.

Note

Pour les flottes de conteneurs, les FleetRoleArn informations d'identification sont injectées dans chaque conteneur. Vos applications peuvent utiliser le fournisseur d' AWS informations d'identification par défaut pour accéder à ces informations d'identification. Vous pouvez toujours appelerGetFleetRoleCredentials(), ce qui renvoie les mêmes informations d'identification. Ces informations d'identification des rôles de flotte ne sont accessibles qu'à l'intérieur des conteneurs.

Pour les jeux intégrés au SDK 5.x du serveur, ce schéma montre comment les applications de votre version de jeu déployée peuvent acquérir des informations d'identification pour le rôle IAM.

Les exécutables du jeu appellent. GetFleetRoleCredentials() D'autres fichiers utilisent des informations d'identification partagées stockées localement.

Dans le code de votre serveur de jeu, qui devrait déjà être intégré au SDK 5.x Amazon GameLift Servers du serveur, appelez GetFleetRoleCredentials (C++) (C#) (Unreal) (Go ) pour récupérer un ensemble d'informations d'identification temporaires. Lorsque les informations d'identification expirent, vous pouvez les actualiser en appelant à nouveauGetFleetRoleCredentials.

Pour les applications non serveur déployées avec des versions de serveurs de jeu utilisant le SDK serveur 5.x, ajoutez du code pour obtenir et utiliser les informations d'identification stockées dans un fichier partagé. Amazon GameLift Serversgénère un profil d'informations d'identification pour chaque instance de flotte. Les informations d'identification peuvent être utilisées par toutes les applications de l'instance. Amazon GameLift Serversactualise continuellement les informations d'identification temporaires.

Vous devez configurer une flotte pour générer le fichier d'informations d'identification partagé lors de la création de la flotte.

Dans chaque application qui doit utiliser le fichier d'informations d'identification partagé, spécifiez l'emplacement du fichier et le nom du profil, comme suit :

Windows :

[credentials] shared_credential_profile= "FleetRoleCredentials" shared_credential_file= "C:\\Credentials\\credentials"

Linux :

[credentials] shared_credential_profile= "FleetRoleCredentials" shared_credential_file= "/local/credentials/credentials"

Exemple : configurer un CloudWatch agent pour collecter des métriques pour les instances Amazon GameLift Servers de flotte

Si vous souhaitez utiliser un CloudWatch agent Amazon pour collecter des métriques, des journaux et des traces auprès de vos Amazon GameLift Servers flottes, utilisez cette méthode pour autoriser l'agent à transmettre les données à votre compte. Dans ce scénario, suivez les étapes suivantes :

  1. Récupérez ou écrivez le config.json fichier de CloudWatch l'agent.

  2. Mettez à jour le common-config.toml fichier pour que l'agent identifie le nom du fichier d'informations d'identification et le nom du profil, comme décrit ci-dessus.

  3. Configurez le script d'installation de votre serveur de jeu pour installer et démarrer l' CloudWatch agent.

Ajoutez du code à vos applications pour assumer le rôle IAM et obtenir des informations d'identification pour interagir avec vos AWS ressources. Toute application exécutée sur une instance de Amazon GameLift Servers parc dotée du SDK serveur 4 ou d'une version antérieure peut assumer le rôle IAM.

Dans le code de l'application, avant d'accéder à une AWS ressource, l'application doit appeler l'opération d'AssumeRoleAPI AWS Security Token Service (AWS STS) et spécifier le rôle ARN. Cette opération renvoie un ensemble d'informations d'identification temporaires qui autorisent l'application à accéder à la AWS ressource. Pour plus d'informations, consultez la section Utilisation d'informations d'identification temporaires avec AWS des ressources dans le Guide de l'utilisateur IAM.

Associer une flotte au rôle IAM

Après avoir créé le rôle IAM et mis à jour les applications de la version de votre serveur de jeu pour obtenir et utiliser les informations d'accès, vous pouvez déployer une flotte. Lorsque vous configurez la nouvelle flotte, définissez les paramètres suivants.

Pour les flottes de conteneurs :

  • FleetRoleArn— Définissez ce paramètre sur l'ARN du rôle IAM.

Pour les autres types de flottes :

  • InstanceRoleArn— Définissez ce paramètre sur l'ARN du rôle IAM.

  • InstanceRoleCredentialsProvider— Pour vous demander Amazon GameLift Servers de générer un fichier d'informations d'identification partagé pour chaque instance de flotte, définissez ce paramètre surSHARED_CREDENTIAL_FILE.

Vous devez définir ces valeurs lors de la création de la flotte. Ils ne peuvent pas être mis à jour ultérieurement.

Accès AWS ressources avec peering VPC

Vous pouvez utiliser le peering Amazon Virtual Private Cloud (Amazon VPC) pour communiquer entre les applications exécutées sur une Amazon GameLift Servers instance et une autre AWS ressource. Un VPC est un réseau privé virtuel que vous définissez et qui inclut un ensemble de ressources gérées via votre Compte AWS. Chaque flotte Amazon GameLift Servers est dotée de son propre VPC. Grâce au peering VPC, vous pouvez établir une connexion réseau directe entre le VPC de votre flotte et celui de vos autres ressources. AWS

Amazon GameLift Servers rationalise le processus de configuration des connexions d'appairage de VPC pour vos serveurs de jeu. Il gère les demandes d'appairage, met à jour les tables de routage et configure les connexions requises. Pour obtenir des instructions sur la configuration du peering VPC pour vos serveurs de jeu, consultez. Configurer le peering VPC pour GameLift Serveurs Amazon

Note

Le peering VPC n'est pas pris en charge pour les flottes de conteneurs.