Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
GAMESEC03-BP02 Autentica las solicitudes que se envían a tu servicio de backend de juegos
La autenticación de las solicitudes que se envían al servicio de backend de tu juego puede impedir que las solicitudes no deseadas se ejecuten correctamente.
Nivel de riesgo expuesto si no se establece esta práctica recomendada: alto
Guía para la implementación
Debes proporcionar un servicio de autenticación para que los jugadores inicien sesión, que devuelva al cliente del juego fichas seguras de corta duración, como un JSON Web Token (JWT), cuando un jugador se autentica correctamente.
Estos símbolos pueden incluir afirmaciones sobre las reclamaciones que contengan los atributos del jugador y otros metadatos relevantes. Estos metadatos relevantes se pueden usar en solicitudes posteriores que se envíen desde el cliente del juego al backend del juego para autenticar las solicitudes y autorizarlas en el contexto del jugador autenticado.
Los grupos de usuarios de Amazon Cognito incluyen un directorio de usuarios para la autenticación y la autorización. Un grupo de usuarios permite APIs integrarlos en el juego para los flujos de trabajo de registro, inicio de sesión y restablecimiento de contraseñas, que se pueden integrar con proveedores de identidad de terceros. Tanto Application Load Balancers como Amazon API Gateway ofrecen integraciones con Cognito para integrar la autenticación de usuario en las solicitudes enviadas a sus backends de juegos personalizados alojados con estos servicios.
Si su juego admite el acceso anónimo y no puede autenticar a un jugador, puede utilizar un enfoque de autenticación de cliente para ofrecer una experiencia más segura al integrarlo con el backend del juego. Si el cliente de tu juego usa AWS los servicios directamente, las solicitudes a estos servicios deben firmarse con credenciales. Para proporcionar credenciales al cliente del juego a los usuarios no autenticados, puede usar el AWS SDK para recuperar credenciales efímeras de los grupos de identidades de Amazon Cognito que se pueden usar para firmar sus solicitudes de servicios. AWS Estas credenciales se pueden actualizar desde el cliente del juego.
Además de integrarte directamente con el AWS SDK desde el cliente del juego, también puedes crear tu propio backend del juego mediante un servicio como Amazon API Gateway
Para obtener más información sobre cómo crear un servicio de back-end para juegos alojados en Amazon GameLift, consulta Diseña tu servicio de cliente de juegos.
Ejemplo de cliente
AnyCompany Los juegos mejoraron la seguridad de su próximo título al adoptar un enfoque de autenticación y autorización gestionadas. En lugar de mantener un sistema personalizado de nombre de usuario y contraseña, utilizaron grupos de usuarios de Amazon Cognito para gestionar el registro e inicio de sesión de los jugadores, y grupos de identidades para permitir el acceso anónimo a los jugadores que probaban el modo de entrenamiento antes de crear una cuenta. También implementaron una lógica de autorización personalizada en el juego para reconocer las funciones de administrador definidas en Cognito, lo que permitió a los usuarios acceder a funciones de administración especiales del juego.
Pasos para la implementación
-
Utilice los grupos de usuarios de Amazon Cognito para gestionar la autenticación con tokens seguros, por ejemplo JWTs, habilitando funciones como el registro, el inicio de sesión y el restablecimiento de contraseñas.
-
Recupere credenciales efímeras de los grupos de identidades de Amazon Cognito para que los usuarios anónimos puedan interactuar de forma segura con AWS los servicios.
-
Implemente backends de juegos personalizados mediante Amazon API Gateway para lograr una lógica de autenticación personalizada del lado del servidor.