Cerințe pentru conectarea propriului furnizor de identitate la conturile de clienți
Înainte de a vă conecta propriul furnizor de identitate la conturile de clienți, asigurați-vă că acesta îndeplinește toate cerințele tehnice, consultând documentația sau contactând furnizorul dvs. de identitate pentru asistență.
Pe această pagină
Cerințe pentru furnizorii de identitate
Pentru a se integra cu magazinul dvs. Shopify, furnizorul de identitate trebuie să îndeplinească următoarele cerințe:
- Furnizorul de identitate acceptă fluxul codului de autorizare OAuth 2.0. Fluxurile implicite și hibride nu sunt acceptate.
client_secret_basiceste metoda implicită de autentificare pentru punctul final al tokenului. - Furnizorul de identitate acceptă Proof Key for Code Exchange (PKCE) pentru clienții publici.
- Furnizorul de identitate este conform cu standardul OpenID Connect (OIDC) pentru autentificare.
- Furnizorul de identitate acceptă OpenID Connect RP-Initiated Logout 1.0 pentru deconectare. Deconectarea Back-Channel și Front-Channel nu este acceptată.
- Furnizorul de identitate acceptă adresa de e-mail ca identificator unic pentru utilizatori, iar verificarea e-mailului face parte din procesul de înregistrare.
Cerințe privind punctele finale
Furnizorul de identitate la care vă conectați trebuie să accepte anumite puncte finale. Consultați tabelul următor pentru a afla mai multe despre punctele finale necesare, specificațiile și exemplele acestora.
| Punctul final necesar | Exemplu de domeniu și cale | Specificații |
|---|---|---|
| Autorizare | https://auth.provider.com/authorize | RFC 6749 Secțiunea 4.1 |
| Token | https://auth.provider.com/token | RFC 6749 Secțiunea 4.1.3 și RFC 6749 Secțiunea 6 |
| JWKS | https://auth.provider.com/.well-known/jwks.json | RFC 7517 Secțiunea 5 |
| Descoperire | https://auth.provider.com/.well-known/openid-configuration | OpenID Discovery 1.0 |
Cerințe privind timpul de răspuns al punctelor finale
Solicitările de la Shopify către punctele finale token, descoperire și userinfo ale furnizorului dvs. de identitate trebuie să răspundă în 1 secundă. Dacă un punct final are nevoie de mai mult de 1 secundă pentru a răspunde, solicitarea va expira, iar fluxul de conectare va eșua. Pentru a evita expirările de timp, asigurați-vă că furnizorul dvs. de identitate este găzduit într-un mediu cu latență scăzută și capacitate suficientă.
Cerințe pentru mobil
Dacă magazinul dvs. are o aplicație mobilă, atunci punctul final de Autorizare al furnizorului de identitate trebuie să accepte următorii parametri:
code_challenge: Verifică dacă clientul care solicită tokenul este același client care a inițiat solicitarea.code_challenge_method: Acest punct final trebuie setat laS256.
Cerințe pentru tokenul ID
Un token ID este o dovadă a autentificării, emisă de furnizorul dvs. de identitate după ce un utilizator se conectează cu succes. Consultați următoarele cerințe privind revendicările și semnatarul pentru tokenurile ID.
Revendicări necesare
Revendicările sunt declarații pe care furnizorul dvs. de identitate le partajează despre un utilizator, fiind folosite pentru autentificare. Atunci când conectați conturile de client la propriul furnizor de identitate, în configurarea tokenului ID sunt necesare următoarele revendicări:
sub: Un identificator unic pentru utilizator în cadrul furnizorului dvs. de identitate.nonce: Un șir unic inclus în tokenul ID pentru a preveni atacurile de tip „replay”.email: Adresa unică de e-mail a utilizatorului folosită pentru crearea contului de client. Pentru integrările Entra ID și Azure AD, revendicareaupneste utilizată în loc deemailși trebuie să indice spre o adresă de e-mail validă care poate primi comunicări legate de comenzi și clienți.email_verified: O valoare booleană care indică dacă e-mailul a fost verificat de furnizorul de identitate. Valoarea pentruemail_verifiedtrebuie să fietrue.iss: Identificatorul emitentului pentru furnizorul dvs. de identitate.aud: Audiența căreia îi este destinat tokenul ID, cunoscută și sub numele de ID-ul dvs. de client.
Cerințe privind semnătura tokenului
Cerințele privind semnatarul ajută furnizorul dvs. de identitate să verifice identitatea unui utilizator în timpul procesului de conectare. Furnizorul dvs. de identitate trebuie să semneze tokenurile ID folosind unul dintre următorii algoritmi acceptați:
- RSA: RS256, RS384, RS512
- Curba eliptică: ES256, ES384, ES512, ES256K
- RSA-PSS: PS256, PS384, PS512
- EdDSA: ED25519, EdDSA
Tokenurile semnate cu HS256 (HMAC cu secret partajat) nu sunt acceptate.
Cerințe privind sesiunea și tokenul
Shopify folosește tokenuri de reîmprospătare pentru a menține sesiunile clienților timp de până la 90 de zile. Fără un token de reîmprospătare, sesiunile se vor încheia la expirarea tokenului de acces de la furnizorul dvs. de identitate, care este, de obicei, de 1 oră.
Pentru a accepta sesiuni de client de lungă durată, furnizorul dvs. de identitate trebuie să îndeplinească următoarele cerințe:
- Furnizorul de identitate trebuie să accepte emiterea de tokenuri de reîmprospătare, așa cum este definit în RFC 6749 Secțiunea 1.5.
- Furnizorul de identitate trebuie să fie configurat pentru a returna tokenuri de reîmprospătare în răspunsul pentru token.
Resurse suplimentare
Pentru a afla mai multe despre cerințele și furnizorii de identitate conformi cu OpenID Connect (OIDC), consultați următoarele resurse externe: