Requisiti per la connessione del proprio provider di identità agli account cliente
Prima di connettere il tuo provider di identità agli account cliente, assicurati che soddisfi tutti i requisiti tecnici controllando la documentazione o contattando l’assistenza del provider.
In questa pagina
Requisiti dei provider di identità
Per integrarsi con il tuo negozio Shopify, il provider di identità deve soddisfare i seguenti requisiti:
- Il provider di identità supporta il flusso con codice di autorizzazione di OAuth 2.0. I flussi impliciti e ibridi non sono supportati.
client_secret_basicè il metodo di autenticazione dell’endpoint del token predefinito. - Il provider di identità supporta la Proof Key for Code Exchange (PKCE) per i client pubblici.
- Il provider di identità è conforme allo standard OpenID Connect (OIDC) per l’autenticazione.
- Il provider di identità supporta OpenID Connect RP-Initiated Logout 1.0 per il logout. I logout Back-Channel e Front-Channel non sono supportati.
- Il provider di identità supporta l’email come identificatore univoco per gli utenti e la verifica dell’email fa parte del processo di registrazione.
Requisiti degli endpoint
Il provider di identità a cui ti colleghi deve supportare endpoint specifici. Consulta la tabella seguente per avere maggiori informazioni sugli endpoint richiesti, sulle relative specifiche ed esempi.
| Endpoint richiesto | Esempio di dominio e percorso | Specifiche |
|---|---|---|
| Autorizzazione | https://auth.provider.com/authorize | RFC 6749 Sezione 4.1 |
| Token | https://auth.provider.com/token | RFC 6749 Sezione 4.1.3 e RFC 6749 Sezione 6 |
| JWKS | https://auth.provider.com/.well-known/jwks.json | RFC 7517 Sezione 5 |
| Discovery | https://auth.provider.com/.well-known/openid-configuration | OpenID Discovery 1.0 |
Requisiti relativi al tempo di risposta dell’endpoint
Le richieste da parte di Shopify agli endpoint token, discovery e userinfo del tuo provider di identità devono ottenere una risposta entro 1 secondo. Se un endpoint impiega più di 1 secondo per rispondere, la richiesta scadrà e il flusso di accesso non andrà a buon fine. Per evitare timeout, assicurati che il tuo provider di identità sia ospitato in un ambiente a bassa latenza e con capacità sufficiente.
Requisiti per dispositivi mobili
Se il tuo negozio ha un’app mobile, l’endpoint Authorization del provider di identità deve supportare i seguenti parametri:
code_challenge: verifica che il client che richiede il token sia lo stesso client che ha avviato la richiesta.code_challenge_method: questo endpoint deve essere impostato suS256.
Requisiti per i token ID
Un token ID è una prova di autenticazione, emessa dal tuo provider di identità dopo che un utente ha effettuato l’accesso correttamente. Consulta i seguenti requisiti per claim e firme dei token ID.
Claim richiesti
I claim sono dichiarazioni che il tuo provider di identità condivide su un utente, utilizzate per l’autenticazione. Quando colleghi gli account cliente al tuo provider di identità, sono richiesti i seguenti claim nella configurazione del token ID:
sub: un identificatore univoco per l’utente all’interno del tuo provider di identità.nonce: una stringa univoca inclusa nel token ID per prevenire gli attacchi di tipo replay.email: l’indirizzo email univoco dell’utente utilizzato per eseguire il provisioning dell’account cliente. Per le integrazioni di Entra ID e Azure AD, viene utilizzato il claimupnal posto diemail, che deve puntare a un indirizzo email valido in grado di ricevere comunicazioni relative all’ordine e al cliente.email_verified: un valore booleano che indica se l’email è stata verificata dal provider di identità. Il valore diemail_verifieddeve esseretrue.iss: l’identificatore dell’emittente per il tuo provider di identità.aud: i destinatari a cui è destinato il token ID, noto anche come ID client.
Requisiti per la firma del token
I requisiti di firma aiutano il tuo provider di identità a verificare l’identità di un utente durante il processo di accesso. Il provider di identità deve firmare i token ID utilizzando uno dei seguenti algoritmi supportati:
- RSA: RS256, RS384, RS512
- Curva ellittica: ES256, ES384, ES512, ES256K
- RSA-PSS: PS256, PS384, PS512
- EdDSA: ED25519, EdDSA
I token firmati con HS256 (HMAC con segreto condiviso) non sono supportati.
Requisiti per sessioni e token
Shopify utilizza i token di aggiornamento per mantenere attive le sessioni dei clienti per un massimo di 90 giorni. In assenza di un token di aggiornamento, le sessioni terminano in seguito alla scadenza del token di accesso del tuo provider di identità, in genere dopo 1 ora.
Per supportare sessioni dei clienti prolungate, il provider di identità deve soddisfare i seguenti requisiti:
- Il provider di identità deve supportare l’emissione di token di aggiornamento come definito in RFC 6749 Sezione 1.5.
- Il provider di identità deve essere configurato in modo da restituire token di aggiornamento nella risposta del token.
Risorse aggiuntive
Per saperne di più sui provider di identità compatibili con OpenID Connect (OIDC) e sui requisiti, consulta le seguenti risorse di terze parti: