Requisitos para conectar tu propio proveedor de identidad a las cuentas de los clientes
Antes de conectar tu propio proveedor de identidad a las cuentas de los clientes, asegúrate de que el proveedor cumpla todos los requisitos técnicos. Para ello, revisa la documentación o ponte en contacto con tu proveedor de identidad para obtener ayuda.
En esta página
Requisitos para proveedores de identidad
Para integrarse con tu tienda Shopify, el proveedor de identidad debe cumplir los siguientes requisitos:
- El proveedor de identidad admite el flujo de código de autorización de OAuth 2.0. No se admiten los flujos implícitos ni híbridos.
client_secret_basices el método de autenticación del terminal del token predeterminado. - El proveedor de identidad admite la clave de prueba para el intercambio de código (PKCE) para clientes públicos.
- El proveedor de identidad cumple con el estándar OpenID Connect (OIDC) para la autenticación.
- El proveedor de identidad admite OpenID Connect RP-Initiated Logout 1.0 para cerrar la sesión. No se admite el cierre de sesión de canal de retorno ni de canal frontal.
- El proveedor de identidad admite el correo electrónico como identificador único para los usuarios, y la verificación del correo electrónico forma parte del proceso de registro.
Requisitos de terminal
El proveedor de identidad al que te conectes debe admitir terminales específicos. Revisa la siguiente tabla para obtener más información sobre los terminales requeridos, sus especificaciones y algunos ejemplos.
| Terminal requerido | Dominio y ruta de ejemplo | Especificaciones |
|---|---|---|
| Autorización | https://auth.provider.com/authorize | RFC 6749 Sección 4.1 |
| Token | https://auth.provider.com/token | RFC 6749 Sección 4.1.3 y RFC 6749 Sección 6 |
| JWKS | https://auth.provider.com/.well-known/jwks.json | RFC 7517 Sección 5 |
| Discovery | https://auth.provider.com/.well-known/openid-configuration | OpenID Discovery 1.0 |
Requisitos de tiempo de respuesta de los terminales
Las solicitudes desde Shopify a los terminales de token, discovery y userinfo del proveedor de identidad deben responder en el plazo de 1 segundo. Si un terminal tarda más de 1 segundo en responder, la solicitud agotará el tiempo de espera y el flujo de inicio de sesión fallará. Para evitar que se agote el tiempo de espera, asegúrate de que tu proveedor de identidad esté alojado en un entorno con baja latencia y capacidad suficiente.
Requisitos para dispositivos móviles
Si tu tienda tiene una aplicación móvil, el terminal de autorización del proveedor de identidad debe admitir los siguientes parámetros:
code_challenge: verifica que el cliente que solicita el token sea el mismo que inició la solicitud.code_challenge_method: este terminal debe estar configurado comoS256.
Requisitos del token de identificación
Un token de identificación es una prueba de autenticación que emite tu proveedor de identidad después de que un usuario inicia sesión correctamente. Revisa los siguientes requisitos de declaraciones y firmas para los tokens de identificación.
Declaraciones requeridas
Las declaraciones son afirmaciones que tu proveedor de identidad comparte sobre un usuario, las cuales se utilizan para la autenticación. Al conectar las cuentas de cliente a tu propio proveedor de identidad, se requieren las siguientes declaraciones en la configuración del token de identificación:
sub: un identificador único para el usuario dentro de tu proveedor de identidad.nonce: una cadena única incluida en el token de identificación para evitar ataques de repetición.email: la dirección de correo electrónico única del usuario que se utiliza para aprovisionar la cuenta de cliente. Para las integraciones con Entra ID y Azure AD, se usa la declaraciónupnen lugar deemaily debe apuntar a una dirección de correo electrónico válida que pueda recibir las comunicaciones relacionadas con los pedidos y los clientes.email_verified: un valor booleano que indica si el proveedor de identidad ha verificado el correo electrónico. El valor deemail_verifieddebe sertrue.iss: el identificador de emisor de tu proveedor de identidad.aud: la audiencia a la que está destinado el token de identificación, también conocida como ID de cliente.
Requisitos de la firma del token
Los requisitos de firma ayudan a tu proveedor de identidad a verificar la identidad de un usuario durante el proceso de inicio de sesión. Tu proveedor de identidad debe firmar los tokens de identificación usando uno de los siguientes algoritmos admitidos:
- RSA: RS256, RS384, RS512
- Curva elíptica: ES256, ES384, ES512, ES256K
- RSA-PSS: PS256, PS384, PS512
- EdDSA: ED25519, EdDSA
No se admiten los tokens firmados con HS256 (HMAC con secreto compartido).
Requisitos de la sesión y del token
Shopify utiliza los tokens de actualización para mantener las sesiones de los clientes por un máximo de 90 días. Sin un token de actualización, las sesiones terminarán cuando venza el token de acceso de tu proveedor de identidad, que generalmente es de 1 hora.
Para admitir sesiones de clientes de larga duración, tu proveedor de identidad debe cumplir los siguientes requisitos:
- El proveedor de identidad debe admitir la emisión de tokens de actualización como se define en la Sección 1.5 de RFC 6749.
- El proveedor de identidad debe estar configurado para devolver los tokens de actualización en la respuesta del token.
Recursos adicionales
Para obtener más información sobre los requisitos y los proveedores de identidad que cumplen con OpenID Connect (OIDC), revisa los siguientes recursos externos:
- RFC 6749: El marco de autorización OAuth 2.0
- RFC 7636: Clave de prueba para el intercambio de código (PKCE) para clientes públicos OAuth
- OpenID Connect Core 1.0, con incorporación del conjunto de erratas 2
- Perfiles de conformidad de OpenID Connect v3.0
- Cómo certificar tu implementación: OpenID Foundation