Autenticación mediante su propio proveedor de OAuth 2.0
Cómo funciona
Puedes añadir la autorización de usuario a través de tu red social utilizando el protocolo OAuth 2.0. Para habilitar un botón para tu red social en el widget de autorización, especifica los detalles del proveedor en la Cuenta del editor.

Flujo de autenticación
%%{init: {'themeVariables': { 'noteBkgColor': 'transparent', 'noteBorderColor': 'transparent' }}}%%
sequenceDiagram
actor User as User
participant TP as 3rd party
participant XL as Xsolla Login
participant OP as Partner OAuth2 Server
User->>TP: Clicks login button
TP->>XL: Calls Auth via social network (Xsolla Login API)
XL->>OP: Calls partner's Authorization URL
alt Success
OP-->>XL: Sends authorization code to https://login.xsolla.com/api/social/callback
else Dependency service unavailable
OP-->>XL: Sends "Dependency service unavailable" error. Error code = "010-035"
end
XL->>OP: Calls partner's Token URL to exchange authorization code to access token
alt Success
OP-->>XL: Sends access token
else Error getting token
OP-->>XL: Sends "Error occurred while getting OAuth 2.0 Access token" error. Error code = "010-015"
end
XL->>OP: Calls partner's Your info URL to get user data
alt Success
OP-->>XL: Sends user data
else Error getting profile
OP-->>XL: Sends "Failed to get social profile" error. Error code = "010-036"
end
XL-->>TP: Returns Xsolla Login token
TP-->>User: User is authenticated
Flujo de inicio de sesión por primera vez
El usuario hace clic en el botón Log in with [Your Platform] en el widget de autorización.
El usuario es redirigido a tu página de inicio de sesión o de consentimiento (la dirección se especifica en el campo Authorization URL en las configuraciones).
El usuario ingresa las credenciales y aprueba el acceso en tu sistema.
Tu sistema redirige al usuario de vuelta a Xsolla con un código de autorización.
Xsolla contacta a tu sistema para intercambiar el código por un token de acceso (la dirección se especifica en el campo Token URL en las configuraciones).
Xsolla recupera los datos del perfil del usuario (ID, correo electrónico, etc.) de tu sistema utilizando el token de acceso (la dirección se especifica en el campo Your info URL en las configuraciones).
El usuario inicia sesión y regresa a la aplicación como un usuario autenticado de Xsolla.
Flujo de usuario recurrente
El usuario hace clic en el botón Log in with [Your Platform] en el widget de autorización.
El usuario es redirigido a tu página de inicio de sesión o de consentimiento (la dirección se especifica en el campo Authorization URL en las configuraciones).
Tu sistema reconoce la sesión activa y omite la pantalla de credenciales. Si tu sistema requiere reautenticación en cada visita, el usuario verá el formulario de inicio de sesión nuevamente.
Tu sistema verifica si el usuario ha otorgado previamente los permisos solicitados. Si el consentimiento ya fue dado y no ha sido revocado, se omite la pantalla de consentimiento.
Tu sistema redirige al usuario de vuelta a Xsolla con un código de autorización.
Xsolla contacta a tu sistema para intercambiar el código por un token de acceso (la dirección se especifica en el campo Token URL en las configuraciones).
Xsolla recupera los datos actuales del perfil del usuario de tu sistema utilizando el token de acceso (la dirección se especifica en el campo Your info URL en las configuraciones).
El usuario inicia sesión y regresa a la aplicación. El flujo completo generalmente se completa en unos pocos segundos sin requerir ninguna interacción visible del usuario.
Autenticación fallida
URL de autorización no disponible (error 010-035)
El usuario hace clic en el botón Log in with [Your Platform] en el widget de autorización.
El usuario es redirigido a tu página de inicio de sesión o de consentimiento (la dirección se especifica en el campo Authorization URL en las configuraciones).
El servidor OAuth2 del socio no está disponible y devuelve un error.
Xsolla Login recibe un error de “Servicio de dependencia no disponible” (010-035) y no procede.
Fallo en el intercambio de token (error 010-015)
El usuario hace clic en el botón Log in with [Your Platform] en el widget de autorización.
El usuario es redirigido a tu página de inicio de sesión o de consentimiento (la dirección se especifica en el campo Authorization URL en las configuraciones).
El usuario ingresa las credenciales y aprueba el acceso en tu sistema.
Tu sistema redirige al usuario de vuelta a Xsolla con un código de autorización.
Xsolla contacta a tu sistema para intercambiar el código por un token de acceso (la dirección se especifica en el campo Token URL en las configuraciones).
El servidor OAuth2 del socio no logra emitir un token y devuelve un error.
Xsolla Login recibe un error de “Error al obtener el token de acceso OAuth 2.0” (010-015) y no procede.
Fallo en la recuperación de datos del usuario (error 010-036)
El usuario hace clic en el botón Log in with [Your Platform] en el widget de autorización.
El usuario es redirigido a tu página de inicio de sesión o de consentimiento (la dirección se especifica en el campo Authorization URL en las configuraciones).
El usuario ingresa las credenciales y aprueba el acceso en tu sistema.
Tu sistema redirige al usuario de vuelta a Xsolla con un código de autorización.
Xsolla contacta a tu sistema para intercambiar el código por un token de acceso (la dirección se especifica en el campo Token URL en las configuraciones).
Xsolla recupera los datos del perfil del usuario (ID, correo electrónico, etc.) de tu sistema utilizando el token de acceso (la dirección se especifica en el campo Your info URL en las configuraciones).
El servidor OAuth2 del socio no logra devolver los datos del usuario.
Xsolla Login recibe un error de “No se pudo obtener el perfil social” (010-036) y no procede.
Cómo obtenerlo
Para habilitar la autorización a través de OAuth 2.0:
Añade
https://login.xsolla.com/api/social/oauth2/callbackcomo la URI de redirección permitida en las configuraciones de tu propio proveedor OAuth 2.0 para evitar fallos de autorización.Abre tu proyecto en Publisher Account y ve a la sección Players > Login.
Haz clic en Configure en el panel de una opción de inicio de sesión clásico.
Ve al bloque de Authentication y selecciona la conexión de inicio de sesión OAuth 2.0.
Rellena los siguientes campos:
Authorization name — nombre de la integración. Se utiliza para la identificación en la Cuenta del editor. Puede contener dígitos, letras latinas, guiones y guiones bajos sin espacios, con una longitud máxima de 100 caracteres.
Authorization URL — URL del método utilizado para la autenticación del usuario.
Token URL — URL del método utilizado para obtener un token de acceso.
Your info URL — URL del método utilizado para obtener los datos del perfil del usuario (como ID y correo electrónico) utilizando el token de acceso.
Client ID — identificador único del cliente en el servidor de autorización. Puede contener dígitos, letras latinas, guiones y guiones bajos sin espacios, con una longitud máxima de 255 caracteres.
Client secret key — un ID único generado por tu sistema de autorización. Puede contener dígitos, letras latinas, guiones y guiones bajos sin espacios, con una longitud de 8-255.
Permission scope — la lista de derechos de acceso que tu sistema solicita al usuario durante la autorización (por ejemplo,
openid,profile,email).
Configura el Key name map:
Proporciona el nombre de la clave para la dirección de correo electrónico en tu sistema (opcional).
Proporciona el nombre de la clave para el identificador del usuario en tu sistema.
En la sección de Settings, especifica configuraciones adicionales de autenticación. (opcional):
auth_content_type— el valor del encabezadoContent-Type.auth_header— el encabezado que pasa el token de autorización al solicitar datos del usuario (autorización en el encabezado).auth_param— el nombre del parámetro de consulta que pasa el token de autorización al solicitar datos del usuario (autorización en el parámetro).token_type— tipo de token. Valores posibles:Bearer,OAuth.use_pkce— un indicador que señala el uso de la tecnología PKCE (Proof Key for Code Exchange) durante la autorización. Se recomienda encarecidamente activar esto para garantizar el más alto estándar de seguridad.
NotaLos nombres de las claves deben comenzar con$., por ejemplo,$.response[0].emaily$.response[0].id.

Si utilizas la integración a través del widget de autorización, configura la personalización:
Especifica el Authorization button name. Longitud máxima — 30 caracteres.
Sube tu logotipo. Tamaño recomendado: 24 × 24px. Formatos soportados: JPG, PNG y SVG.
Establece el color del botón de autorización.
Haz clic en Save changes.
Si estás utilizando la integración a través de los métodos de Login API, configura la transmisión de tu ID de proveedor en el
provider_nameen el siguiente formato:"<authorization_name>-<publisher_id>", donde<authorization_name>— es el nombre de la integración que especificaste en las configuraciones del proveedor, y<publisher_id>— es el ID de tu proyecto en la Cuenta del editor. Dependiendo del protocolo de autorización elegido, utiliza los siguientes métodos para pasar el parámetroprovider_name:
¿Has encontrado una errata u otro error de texto? Selecciona el texto y pulsa Ctrl+Intro.