Vaatimukset oman tunnistautumispalvelun yhdistämiselle asiakastileihin

Ennen kuin yhdistät oman tunnistautumispalvelusi asiakastileihin, varmista, että palveluntarjoajasi täyttää kaikki tekniset vaatimukset tarkistamalla dokumentaation tai ottamalla yhteyttä tunnistautumispalveluusi saadaksesi tukea.

Tunnistautumispalveluja koskevat vaatimukset

Jotta tunnistautumispalvelu voidaan integroida Shopify-kauppaasi, sen on täytettävä seuraavat vaatimukset:

  • Tunnistautumispalvelun on tuettava OAuth 2.0 -valtuutuskoodityönkulkua. Implisiittisiä ja hybridityönkulkuja ei tueta. Tunnuspäätepisteen oletustodennustapa on client_secret_basic.
  • Tunnistautumispalvelun on tuettava Proof Key for Code Exchange (PKCE) -protokollaa julkisille asiakasohjelmille.
  • Tunnistautumispalvelun on noudatettava todennuksessa OpenID Connect (OIDC) -standardia.
  • Tunnistautumispalvelun on tuettava uloskirjautumisessa OpenID Connect RP-Initiated Logout 1.0 -protokollaa. Back-Channel- ja Front-Channel-uloskirjautumista ei tueta.
  • Tunnistautumispalvelun on tuettava sähköpostia käyttäjien yksilöllisenä tunnisteena, ja sähköpostin vahvistamisen on oltava osa rekisteröitymisprosessia.

Päätepisteitä koskevat vaatimukset

Yhdistämäsi tunnistautumispalvelun on tuettava tiettyjä päätepisteitä. Katso seuraavasta taulukosta lisätietoja vaadituista päätepisteistä, niiden määrityksistä ja esimerkeistä.

Vaaditut tunnistautumispalvelun päätepisteet
Vaadittu päätepisteEsimerkki verkkotunnuksesta ja polustaMääritykset
Valtuutushttps://auth.provider.com/authorizeRFC 6749, kohta 4.1
Tunnushttps://auth.provider.com/tokenRFC 6749, kohta 4.1.3 ja RFC 6749, kohta 6
JWKShttps://auth.provider.com/.well-known/jwks.jsonRFC 7517, kohta 5
Discoveryhttps://auth.provider.com/.well-known/openid-configurationOpenID Discovery 1.0

Päätepisteen vasteaikavaatimukset

Tunnistautumispalvelusi tunnus-, discovery- ja userinfo-päätepisteiden on vastattava Shopifyn pyyntöihin 1 sekunnin kuluessa. Jos päätepisteen vastaaminen kestää yli 1 sekunnin, pyyntö aikakatkaistaan ja kirjautuminen epäonnistuu. Vältä aikakatkaisut varmistamalla, että tunnistautumispalvelusi sijaitsee ympäristössä, jossa on pieni viive ja riittävä kapasiteetti.

Mobiilivaatimukset

Jos kaupallasi on mobiilisovellus, tunnistautumispalvelun valtuutuspäätepisteen on tuettava seuraavia parametreja:

  • code_challenge: Varmistaa, että tunnusta pyytävä asiakasohjelma on sama, joka käynnisti pyynnön.
  • code_challenge_method: Tämän päätepisteen arvoksi on asetettava S256.

Identiteettitunnuksia koskevat vaatimukset

Identiteettitunnus on todennuksen todiste, jonka tunnistautumispalvelusi myöntää käyttäjän onnistuneen sisäänkirjautumisen jälkeen. Tarkista seuraavat identiteettitunnuksia koskevat vaade- ja allekirjoitusvaatimukset.

Vaaditut vaateet

Vaateet ovat tunnistautumispalvelusi käyttäjästä jakamia lausuntoja, joita käytetään todennukseen. Kun yhdistät asiakastilejä omaan tunnistautumispalveluusi, seuraavat vaateet vaaditaan identiteettitunnuksen määrityksissä:

  • sub: Käyttäjän yksilöllinen tunniste tunnistautumispalvelussasi.
  • nonce: Identiteettitunnukseen sisältyvä yksilöllinen merkkijono toistohyökkäysten estämiseksi.
  • email: Käyttäjän yksilöllinen sähköpostiosoite, jota käytetään asiakastilin valmisteluun. Entra ID- ja Azure AD -integraatioissa käytetään email-vaateen sijasta upn-vaadetta, ja sen on osoitettava kelvolliseen sähköpostiosoitteeseen, joka voi vastaanottaa tilauksiin ja asiakkaisiin liittyviä viestejä.
  • email_verified: Boolen arvo, joka ilmaisee, onko tunnistautumispalvelu vahvistanut sähköpostiosoitteen. email_verified-arvon on oltava true.
  • iss: Tunnistautumispalvelusi myöntäjän tunniste.
  • aud: Yleisö, jolle identiteettitunnus on tarkoitettu, eli asiakastunnuksesi.

Tunnuksen allekirjoitusvaatimukset

Allekirjoitusvaatimukset auttavat tunnistautumispalveluasi vahvistamaan käyttäjän henkilöllisyyden sisäänkirjautumisprosessin aikana. Tunnistautumispalvelusi on allekirjoitettava identiteettitunnukset käyttämällä jotakin seuraavista tuetuista algoritmeista:

  • RSA: RS256, RS384, RS512
  • Elliptic Curve: ES256, ES384, ES512, ES256K
  • RSA-PSS: PS256, PS384, PS512
  • EdDSA: ED25519, EdDSA

HS256-algoritmilla (HMAC jaetulla salaisuudella) allekirjoitettuja tunnuksia ei tueta.

Istunto- ja tunnusvaatimukset

Shopify käyttää päivitystunnuksia asiakasistuntojen ylläpitämiseen jopa 90 päivän ajan. Ilman päivitystunnusta istunnot päättyvät, kun tunnistautumispalvelusi käyttöoikeustunnus vanhenee, mikä tapahtuu tyypillisesti 1 tunnissa.

Tukeakseen pitkäkestoisia asiakasistuntoja tunnistautumispalvelusi on täytettävä seuraavat vaatimukset:

  • Tunnistautumispalvelun on tuettava päivitystunnusten myöntämistä, kuten kohdassa RFC 6749 Section 1.5 on määritetty.
  • Tunnistautumispalvelu on määritettävä palauttamaan päivitystunnukset tunnusvastauksessa.

Lisäresurssit

Saat lisätietoja OpenID Connect (OIDC) -yhteensopivista tunnistautumispalveluista ja vaatimuksista tutustumalla seuraaviin kolmannen osapuolen resursseihin: