Krav för att ansluta en egen identitetsleverantör till kundkonton
Innan du ansluter din egen identitetsleverantör till kundkonton måste du se till att din leverantör uppfyller alla tekniska krav genom att granska dokumentationen eller kontakta din identitetsleverantör för support.
På den här sidan
Krav på identitetsleverantörer
För att kunna integreras med din Shopify-butik måste identitetsleverantören uppfylla följande krav:
- Identitetsleverantören stöder OAuth 2.0-auktoriseringskodsflödet. Implicita och hybrida flöden stöds inte.
client_secret_basicär den förvalda autentiseringsmetoden för tokenslutpunkt. - Identitetsleverantören stöder Proof Key for Code Exchange (PKCE) för offentliga klienter.
- Identitetsleverantören är kompatibel med OpenID Connect (OIDC)-standarden för autentisering.
- Identitetsleverantören stöder OpenID Connect RP-Initiated Logout 1.0 för utloggning. Back-Channel- och Front-Channel-utloggning stöds inte.
- Identitetsleverantören stöder e-post som unik identifierare för användare och e-postverifiering ingår i registreringsprocessen.
Krav på slutpunkter
Den identitetsleverantör som du ansluter till måste stödja specifika slutpunkter. Granska följande tabell för mer information om de slutpunkter som krävs, deras specifikationer och exempel.
| Obligatorisk slutpunkt | Exempel på domän och sökväg | Specifikationer |
|---|---|---|
| Auktorisering | https://auth.provider.com/authorize | RFC 6749 avsnitt 4.1 |
| Token | https://auth.provider.com/token | RFC 6749 avsnitt 4.1.3 och RFC 6749 avsnitt 6 |
| JWKS | https://auth.provider.com/.well-known/jwks.json | RFC 7517 avsnitt 5 |
| Discovery | https://auth.provider.com/.well-known/openid-configuration | OpenID Discovery 1.0 |
Krav på slutpunkters svarstid
Förfrågningar från Shopify till din identitetsleverantörs slutpunkter för token, discovery och userinfo måste besvaras inom 1 sekund. Om det tar mer än 1 sekund för en slutpunkt att svara överskrids tidsgränsen för förfrågan och inloggningsflödet misslyckas. Se till att din identitetsleverantör finns i en miljö med låg latens och tillräcklig kapacitet för att undvika att tidsgränsen överskrids.
Krav för mobila enheter
Om din butik har en mobilapp måste identitetsleverantörens auktoriseringsslutpunkt stödja följande parametrar:
code_challenge: Bekräftar att klienten som begär denna token är samma klient som initierade förfrågan.code_challenge_method: Den här slutpunkten måste ställas in påS256.
Krav på ID-token
En ID-token är ett bevis på autentisering som utfärdas av din identitetsleverantör efter att en användare har loggat in framgångsrikt. Granska följande krav på anspråk och undertecknande för ID-tokens.
Obligatoriska anspråk
Anspråk är uppgifter som din identitetsleverantör delar om en användare och som används för autentisering. När kundkonton ansluts till din egen identitetsleverantör krävs följande anspråk i ID-token-konfigurationen:
sub: En unik identifierare för användaren inom din identitetsleverantör.nonce: En unik sträng som inkluderas i ID-token för att förhindra upprepningsattacker.email: Användarens unika e-postadress som används för att tillhandahålla kundkontot. För integrationer med Entra ID och Azure AD användsupn-anspråket istället föremail, och det måste hänvisa till en giltig e-postadress som kan ta emot beställnings- och kundrelaterad kommunikation.email_verified: Ett booleskt värde som anger om e-postadressen har verifierats av identitetsleverantören. Värdet föremail_verifiedmåste varatrue.iss: Utfärdarens identifierare för din identitetsleverantör.aud: Den målgrupp som denna ID-token är avsedd för, även känt som ditt klient-ID.
Krav på token-signaturer
Krav på undertecknande hjälper din identitetsleverantör att verifiera en användares identitet under inloggningsprocessen. Din identitetsleverantör måste signera ID-tokens med en av följande algoritmer som stöds:
- RSA: RS256, RS384, RS512
- Elliptisk kurva: ES256, ES384, ES512, ES256K
- RSA-PSS: PS256, PS384, PS512
- EdDSA: ED25519, EdDSA
Tokens som är signerade med HS256 (HMAC med delad hemlighet) stöds inte.
Krav på sessioner och tokens
Shopify använder uppdateringstokens för att upprätthålla kundsessioner i upp till 90 dagar. Utan en uppdateringstoken avslutas sessioner när åtkomsttoken från din identitetsleverantör löper ut, vilket i normala fall är efter 1 timme.
För att stödja långlivade kundsessioner måste din identitetsleverantör uppfylla följande krav:
- Identitetsleverantören måste stödja utfärdande av uppdateringstokens enligt definitionen i RFC 6749 avsnitt 1.5.
- Identitetsleverantören måste konfigureras så att den returnerar uppdateringstokens i token-svaret.
Ytterligare resurser
Läs mer om OpenID Connect (OIDC)-kompatibla identitetsleverantörer och krav i följande tredjepartsresurser: