Comunica con altre AWS risorse delle tue flotte - Amazon GameLift

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Comunica con altre AWS risorse delle tue flotte

Quando crei un server di gioco da distribuire su GameLift flotte Amazon, potresti volere che le applicazioni della build di gioco comunichino direttamente e in modo sicuro con altre AWS risorse di tua proprietà. Poiché Amazon GameLift gestisce le tue flotte di hosting di giochi, devi concedere ad Amazon un accesso GameLift limitato a queste risorse e servizi.

Alcuni scenari di esempio includono:

  • Utilizza un CloudWatch agente Amazon per raccogliere metriche, log e tracce da flotte e flotte EC2 gestite Anywhere

  • Invia i dati di log delle istanze ad Amazon Logs. CloudWatch

  • Ottieni file di gioco archiviati in un bucket Amazon Simple Storage Service (Amazon S3).

  • Leggi e scrivi dati di gioco (come modalità di gioco o inventario) archiviati in un database Amazon DynamoDB o in un altro servizio di archiviazione dati.

  • Invia segnali direttamente a un'istanza utilizzando Amazon Simple Queue Service (Amazon SQS).

  • Accedi a risorse personalizzate distribuite e in esecuzione su Amazon Elastic Compute Cloud (Amazon EC2).

Amazon GameLift supporta questi metodi per stabilire l'accesso:

Accedi alle AWS risorse con un ruolo IAM

Utilizza un ruolo IAM per specificare chi può accedere alle tue risorse e impostare limiti a tale accesso. Le parti fidate possono «assumere» un ruolo e ottenere credenziali di sicurezza temporanee che le autorizzano a interagire con le risorse. Quando le parti effettuano richieste API relative alla risorsa, devono includere le credenziali.

Per configurare l'accesso controllato da un ruolo IAM, esegui le seguenti attività:

Crea il ruolo IAM

In questa fase, crei un ruolo IAM, con una serie di autorizzazioni per controllare l'accesso alle tue AWS risorse e una politica di fiducia che concede ad Amazon GameLift i diritti di utilizzo delle autorizzazioni del ruolo.

Per istruzioni su come configurare il ruolo IAM, consulta. Configura un ruolo di servizio IAM per Amazon GameLift Quando crei la politica delle autorizzazioni, scegli i servizi, le risorse e le azioni specifici con cui le tue applicazioni devono lavorare. Come procedura ottimale, limita il più possibile l'ambito delle autorizzazioni.

Dopo aver creato il ruolo, prendi nota dell'Amazon Resource Name (ARN) del ruolo. È necessario il ruolo ARN durante la creazione della flotta.

Modifica le applicazioni per acquisire credenziali

In questo passaggio, configuri le tue applicazioni per acquisire credenziali di sicurezza per il ruolo IAM e utilizzarle quando interagisci con le tue risorse. AWS Consulta la tabella seguente per determinare come modificare le applicazioni in base (1) al tipo di applicazione e (2) alla versione SDK del server utilizzata dal gioco per comunicare con Amazon. GameLift

Applicazioni per server di gioco Altre applicazioni

Utilizzo della versione 5.x dell'SDK del server

Richiama il metodo SDK del server GetFleetRoleCredentials() dal codice del server di gioco.

Aggiungi codice all'applicazione per estrarre le credenziali da un file condiviso sull'istanza fleet.

Utilizzando la versione 4 o precedente dell'SDK del server

Chiama AWS Security Token Service (AWS STS) AssumeRole con il ruolo ARN.

Chiama AWS Security Token Service (AWS STS) AssumeRole con il ruolo ARN.

Per i giochi integrati con il server SDK 5.x, questo diagramma illustra come le applicazioni della build di gioco distribuita possono acquisire le credenziali per il ruolo IAM.

Su un' GameLift istanza Amazon, le applicazioni dei server di gioco chiamano. GetFleetRoleCredentials() Altre applicazioni utilizzano un file di credenziali condiviso che può essere archiviato sull'istanza.

Nel codice del server di gioco, che dovrebbe già essere integrato con Amazon GameLift Server SDK 5.x, chiama GetFleetRoleCredentials (C++) (C#) (Unreal) per recuperare un set di credenziali temporanee. Quando le credenziali scadono, puoi aggiornarle con un'altra chiamata a. GetFleetRoleCredentials

Per le applicazioni non server distribuite con build di server di gioco utilizzando server SDK 5.x, aggiungi codice per ottenere e utilizzare le credenziali archiviate in un file condiviso. Amazon GameLift genera un profilo di credenziali per ogni istanza del parco istanze. Le credenziali sono disponibili per l'uso da parte di tutte le applicazioni sull'istanza. Amazon aggiorna GameLift continuamente le credenziali temporanee.

È necessario configurare una flotta per generare il file di credenziali condivise al momento della creazione della flotta.

In ogni applicazione che deve utilizzare il file di credenziali condivise, specifica la posizione del file e il nome del profilo, come segue:

Windows:

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

Linux:

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

Esempio: configura un CloudWatch agente per raccogliere i parametri per le istanze della flotta Amazon GameLift

Se desideri utilizzare un CloudWatch agente Amazon per raccogliere metriche, log e tracce dalle tue GameLift flotte Amazon, utilizza questo metodo per autorizzare l'agente a inviare i dati al tuo account. In questo scenario, procedi nel seguente modo:

  1. Recuperate o scrivete il config.json file CloudWatch dell'agente.

  2. Aggiornate il common-config.toml file per consentire all'agente di identificare il nome del file delle credenziali e il nome del profilo, come descritto sopra.

  3. Configura lo script di installazione della build del server di gioco per installare e avviare l' CloudWatch agente.

Aggiungi codice alle tue applicazioni per assumere il ruolo IAM e ottenere le credenziali per interagire con le tue AWS risorse. Qualsiasi applicazione eseguita su un'istanza GameLift della flotta Amazon con server SDK 4 o versioni precedenti può assumere il ruolo IAM.

Nel codice dell'applicazione, prima di accedere a una AWS risorsa, l'applicazione deve chiamare l'operazione AssumeRole API AWS Security Token Service (AWS STS) e specificare il ruolo ARN. Questa operazione restituisce un set di credenziali temporanee che autorizzano l'applicazione ad accedere alla risorsa. AWS Per ulteriori informazioni, consulta Utilizzo di credenziali temporanee con le risorse AWS nella Guida per l'utente IAM.

Associa una flotta al ruolo IAM

Dopo aver creato il ruolo IAM e aggiornato le applicazioni nella build del server di gioco per ottenere e utilizzare le credenziali di accesso, puoi implementare una flotta. Quando configuri la nuova flotta, imposta i seguenti parametri:

  • InstanceRoleArn— Imposta questo parametro sull'ARN del ruolo IAM.

  • InstanceRoleCredentialsProvider— Per richiedere ad Amazon di GameLift generare un file di credenziali condiviso per ogni istanza della flotta, imposta questo parametro su. SHARED_CREDENTIAL_FILE

È necessario impostare questi valori quando si crea la flotta. Non possono essere aggiornati in seguito.

Accedi alle AWS risorse con il peering VPC

Puoi utilizzare il peering di Amazon Virtual Private Cloud (Amazon VPC) per comunicare tra applicazioni in esecuzione su un' GameLift istanza Amazon e un'altra risorsa. AWS Un VPC è una rete privata virtuale definita dall'utente che include un insieme di risorse gestite tramite. Account AWS Ogni GameLift flotta Amazon ha il proprio VPC. Con il peering VPC, puoi stabilire una connessione di rete diretta tra il VPC per la tua flotta e per le altre risorse. AWS

Amazon GameLift semplifica il processo di configurazione delle connessioni peering VPC per i tuoi server di gioco. Gestisce le richieste di peering, aggiorna le tabelle di routing e configura le connessioni in base alle esigenze. Per istruzioni su come configurare il peering VPC per i tuoi server di gioco, consulta. Peering VPC per Amazon GameLift