Keperluan untuk menyambungkan penyedia identiti anda sendiri kepada akaun pelanggan

Sebelum anda menyambungkan penyedia identiti anda sendiri kepada akaun pelanggan, pastikan penyedia anda memenuhi semua keperluan teknikal dengan menyemak dokumentasi atau menghubungi penyedia identiti anda untuk mendapatkan sokongan.

Keperluan untuk penyedia identiti

Untuk menyepadukan dengan kedai Shopify anda, penyedia identiti mesti memenuhi keperluan yang berikut:

  • Penyedia identiti menyokong aliran kod kebenaran OAuth 2.0. Aliran tersirat dan hibrid tidak disokong. client_secret_basic ialah kaedah pengesahan titik akhir token lalai.
  • Penyedia identiti menyokong Proof Key for Code Exchange (PKCE) untuk klien awam.
  • Penyedia identiti mematuhi standard OpenID Connect (OIDC) untuk pengesahan.
  • Penyedia identiti menyokong OpenID Connect RP-Initiated Logout 1.0 untuk log keluar. Log keluar Back-Channel dan Front-Channel tidak disokong.
  • Penyedia identiti menyokong e-mel sebagai pengenal pasti unik untuk pengguna dan pengesahan e-mel ialah sebahagian daripada proses pendaftaran.

Keperluan titik akhir

Penyedia identiti yang anda sambungkan mesti menyokong titik akhir tertentu. Semak jadual berikut untuk mengetahui lebih lanjut tentang titik akhir yang diperlukan, spesifikasinya dan contohnya.

Titik akhir penyedia identiti yang diperlukan
Titik akhir yang diperlukanContoh domain dan laluanSpesifikasi
Kebenaranhttps://auth.provider.com/authorizeRFC 6749 Seksyen 4.1
Tokenhttps://auth.provider.com/tokenRFC 6749 Seksyen 4.1.3 dan RFC 6749 Seksyen 6
JWKShttps://auth.provider.com/.well-known/jwks.jsonRFC 7517 Seksyen 5
Penemuanhttps://auth.provider.com/.well-known/openid-configurationOpenID Discovery 1.0

Keperluan masa respons titik akhir

Permintaan daripada Shopify kepada titik akhir token, penemuan dan userinfo penyedia identiti anda mesti memberikan respons dalam masa 1 saat. Jika titik akhir mengambil masa lebih daripada 1 saat untuk memberikan respons, permintaan akan tamat masa dan aliran log masuk akan gagal. Untuk mengelakkan tamat masa, pastikan penyedia identiti anda dihoskan dalam persekitaran yang mempunyai kependaman rendah serta kapasiti yang mencukupi.

Keperluan mudah alih

Jika kedai anda mempunyai aplikasi mudah alih, maka titik akhir Kebenaran penyedia identiti mesti menyokong parameter yang berikut:

  • code_challenge: Mengesahkan bahawa klien yang meminta token ialah klien sama yang memulakan permintaan tersebut.
  • code_challenge_method: Titik akhir ini mesti ditetapkan kepada S256.

Keperluan token ID

Token ID ialah bukti pengesahan yang dikeluarkan oleh penyedia identiti anda selepas pengguna berjaya log masuk. Semak keperluan tuntutan dan penandatangan berikut untuk token ID.

Tuntutan yang diperlukan

Tuntutan ialah pernyataan yang dikongsi oleh penyedia identiti anda tentang pengguna, yang digunakan untuk pengesahan. Apabila menyambungkan akaun pelanggan kepada penyedia identiti anda sendiri, tuntutan yang berikut diperlukan dalam persediaan token ID:

  • sub: Pengenal pasti unik untuk pengguna dalam penyedia identiti anda.
  • nonce: Rentetan unik yang disertakan dalam token ID untuk menghalang serangan ulang tayang.
  • email: Alamat e-mel unik pengguna yang digunakan untuk memperuntukkan akaun pelanggan. Untuk penyepaduan Entra ID dan Azure AD, tuntutan upn digunakan sebagai ganti kepada email dan mesti menghala ke alamat e-mel sah yang boleh menerima komunikasi berkaitan pesanan dan pelanggan.
  • email_verified: Boolean yang menunjukkan sama ada e-mel telah disahkan oleh penyedia identiti. Nilai untuk email_verified mesti true.
  • iss: Pengenal pasti pengeluar untuk penyedia identiti anda.
  • aud: Khalayak yang menjadi sasaran token ID, juga dikenali sebagai ID klien anda.

Keperluan tandatangan token

Keperluan penandatangan membantu penyedia identiti anda untuk mengesahkan identiti pengguna semasa proses log masuk. Penyedia identiti anda mesti menandatangani token ID menggunakan salah satu algoritma yang disokong berikut:

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

Token yang ditandatangani dengan HS256 (HMAC dengan rahsia dikongsi) tidak disokong.

Keperluan sesi dan token

Shopify menggunakan token segar semula untuk mengekalkan sesi pelanggan hingga 90 hari. Tanpa token segar semula, sesi akan berakhir apabila token akses daripada penyedia identiti anda tamat tempoh, yang lazimnya selama 1 jam.

Untuk menyokong sesi pelanggan yang bertahan lama, penyedia identiti anda mesti memenuhi keperluan yang berikut:

  • Penyedia identiti mesti menyokong pengeluaran token segar semula seperti yang ditakrifkan dalam RFC 6749 Seksyen 1.5.
  • Penyedia identiti mesti dikonfigurasikan untuk mengembalikan token segar semula dalam respons token.

Sumber tambahan

Untuk mengetahui lebih lanjut tentang penyedia identiti dan keperluan yang mematuhi OpenID Connect (OIDC), semak sumber pihak ketiga yang berikut: