Requisiti per connettere il tuo provider di identità agli account cliente
Prima di connettere il tuo provider di identità agli account cliente, assicurati che il provider soddisfi tutti i requisiti tecnici consultando la documentazione o contattandolo per ricevere assistenza.
In questa pagina
Requisiti per i provider di identità
Per l'integrazione con il tuo negozio Shopify, il provider di identità deve soddisfare i seguenti requisiti:
- Il provider di identità supporta il flusso del codice di autorizzazione OAuth 2.0. I flussi impliciti e ibridi non sono supportati.
client_secret_basicè il metodo di autenticazione predefinito per l’endpoint del token. - Il provider di identità supporta lo standard 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. Il logout Back-Channel e Front-Channel non è supportato.
- 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à che connetti deve supportare endpoint specifici. Consulta la tabella seguente per maggiori informazioni sugli endpoint richiesti, sulle loro specifiche e per visualizzare alcuni esempi.
| Endpoint richiesto | Dominio e percorso di esempio | Specifiche |
|---|---|---|
| Autorizzazione | https://auth.provider.com/authorize | RFC 6749 Section 4.1 |
| Token | https://auth.provider.com/token | RFC 6749 Section 4.1.3 e RFC 6749 Section 6 |
| JWKS | https://auth.provider.com/.well-known/jwks.json | RFC 7517 Section 5 |
| Discovery | https://auth.provider.com/.well-known/openid-configuration | OpenID Discovery 1.0 |
Requisiti del tempo di risposta degli endpoint
Le richieste da Shopify agli endpoint token, discovery e userinfo del provider di identità devono ricevere risposta entro 1 secondo. Se un endpoint impiega più di 1 secondo a rispondere, la richiesta andrà in timeout e il flusso di accesso non riuscirà. Per evitare timeout, assicurati che il 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 di autorizzazione del provider di identità deve supportare i seguenti parametri:
code_challenge: verifica che il client che richiede il token sia lo stesso che ha avviato la richiesta.code_challenge_method: questo endpoint deve essere impostato suS256.
Requisiti del token ID
Un token ID è una prova di autenticazione emessa dal tuo provider di identità dopo che un utente ha effettuato correttamente l'accesso. Esamina i seguenti requisiti relativi a claim e firma per i token ID.
Claim richiesti
I claim sono dichiarazioni che il tuo provider di identità condivide su un utente e che vengono utilizzate per l'autenticazione. Quando si connettono gli account cliente al proprio provider di identità, sono necessari 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 attacchi di tipo replay.email: l'indirizzo email univoco dell'utente utilizzato per effettuare il provisioning dell'account cliente. Per le integrazioni di Entra ID e Azure AD, viene utilizzato il claimupnanzichéemail, che deve puntare a un indirizzo email valido in grado di ricevere comunicazioni relative a ordini e clienti.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: il destinatario 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 di sessione e token
Shopify utilizza i token di aggiornamento per mantenere le sessioni cliente per un massimo di 90 giorni. Senza un token di aggiornamento, le sessioni termineranno alla scadenza del token di accesso del provider di identità, che è in genere di 1 ora.
Per supportare sessioni cliente di lunga durata, il provider di identità deve soddisfare i seguenti requisiti:
- Il provider di identità deve supportare l’emissione di token di aggiornamento come definito nella sezione 1.5 della RFC 6749.
- Il provider di identità deve essere configurato per restituire i token di aggiornamento nella risposta del token.
Risorse aggiuntive
Per maggiori informazioni sui provider di identità e sui requisiti conformi a OpenID Connect (OIDC), consulta le seguenti risorse di terze parti: