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.

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 del provider di identità richiesti
Endpoint richiestoDominio e percorso di esempioSpecifiche
Autorizzazionehttps://auth.provider.com/authorizeRFC 6749 Section 4.1
Tokenhttps://auth.provider.com/tokenRFC 6749 Section 4.1.3 e RFC 6749 Section 6
JWKShttps://auth.provider.com/.well-known/jwks.jsonRFC 7517 Section 5
Discoveryhttps://auth.provider.com/.well-known/openid-configurationOpenID 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 su S256.

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 claim upn anziché 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 di email_verified deve essere true.
  • 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: