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à.
GAMESEC03-BP02 Autentica le richieste inviate al tuo servizio di backend di gioco
L'autenticazione delle richieste inviate al servizio di backend di gioco può impedire che le richieste indesiderate abbiano successo.
Livello di rischio associato se questa best practice non fosse adottata: elevato
Guida all’implementazione
È necessario fornire un servizio di autenticazione per consentire ai giocatori di accedere, che restituisca token sicuri di breve durata, come un JSON Web Token (JWT), al client di gioco quando un giocatore si autentica con successo.
Questi token possono includere asserzioni relative alle rivendicazioni che contengono gli attributi del giocatore e altri metadati pertinenti. Questi metadati pertinenti possono essere utilizzati nelle richieste successive inviate dal client di gioco al backend di gioco per autenticare le richieste e autorizzarle nel contesto del giocatore autenticato.
I pool di utenti di Amazon Cognito includono una directory di utenti per l'autenticazione e l'autorizzazione. Un pool di utenti APIs ti consente di integrarlo nel gioco per i flussi di lavoro di registrazione, accesso e reimpostazione della password, che possono essere integrati con provider di identità di terze parti. Application Load Balancers e Amazon API Gateway forniscono entrambi integrazioni con Cognito per integrare l'autenticazione degli utenti per le richieste inviate ai backend di gioco personalizzati ospitati con questi servizi.
Se il tuo gioco supporta l'accesso anonimo e non riesci ad autenticare un giocatore, puoi utilizzare un approccio di autenticazione client per fornire un'esperienza più sicura durante l'integrazione con il backend di gioco. Se il client di gioco utilizza direttamente i AWS servizi, le richieste a tali servizi devono essere firmate utilizzando le credenziali. Per fornire credenziali al tuo client di gioco per utenti non autenticati, puoi utilizzare l' AWS SDK per recuperare credenziali di breve durata dai pool di identità di Amazon Cognito che possono essere utilizzate per firmare le tue richieste ai servizi. AWS Queste credenziali possono essere aggiornate dal tuo client di gioco.
Oltre all'integrazione diretta con l' AWS SDK dal client di gioco, puoi anche creare il tuo backend di gioco, utilizzando un servizio come Amazon API Gateway
Per ulteriori informazioni sulla creazione di un servizio di backend per i giochi ospitati tramite Amazon GameLift, consulta Progetta il tuo servizio client di gioco.
Esempio del cliente
AnyCompany Games ha migliorato la sicurezza del prossimo titolo adottando un approccio di autenticazione e autorizzazione gestite. Invece di mantenere un sistema di nome utente e password personalizzato, hanno utilizzato i pool di utenti di Amazon Cognito per gestire la registrazione e l'accesso dei giocatori e i pool di identità per supportare l'accesso anonimo ai giocatori che provavano la modalità allenamento prima di creare un account. Hanno inoltre implementato una logica di autorizzazione personalizzata all'interno del gioco per riconoscere i ruoli di amministratore definiti in Cognito, garantendo a tali utenti l'accesso a speciali funzionalità di gestione del gioco.
Passaggi dell’implementazione
-
Usa i pool di utenti di Amazon Cognito per gestire l'autenticazione con token sicuri come l'abilitazione di funzionalità come registrazione JWTs, accesso e reimpostazione delle password.
-
Recupera credenziali di breve durata dai pool di identità di Amazon Cognito per consentire agli utenti anonimi di interagire in modo sicuro con i servizi. AWS
-
Implementa backend di gioco personalizzati utilizzando Amazon API Gateway per una logica di autenticazione lato server personalizzata.