Persyaratan untuk menghubungkan penyedia identitas Anda sendiri ke akun pelanggan
Sebelum Anda menghubungkan penyedia identitas Anda sendiri ke akun pelanggan, pastikan penyedia Anda memenuhi semua persyaratan teknis dengan meninjau dokumentasi atau menghubungi penyedia identitas Anda untuk mendapatkan dukungan.
Di halaman ini
Persyaratan untuk penyedia identitas
Untuk berintegrasi dengan toko Shopify Anda, penyedia identitas harus memenuhi persyaratan berikut:
- Penyedia identitas mendukung alur kode otorisasi OAuth 2.0. Alur implisit dan hibrida tidak didukung.
client_secret_basicadalah metode autentikasi titik akhir token default. - Penyedia identitas mendukung Proof Key for Code Exchange (PKCE) untuk klien publik.
- Penyedia identitas mematuhi standar OpenID Connect (OIDC) untuk autentikasi.
- Penyedia identitas mendukung OpenID Connect RP-Initiated Logout 1.0 untuk logout. Logout Back-Channel dan Front-Channel tidak didukung.
- Penyedia identitas mendukung email sebagai pengidentifikasi unik untuk pengguna, dan verifikasi email adalah bagian dari proses pendaftaran.
Persyaratan titik akhir
Penyedia identitas yang Anda hubungkan harus mendukung titik akhir tertentu. Tinjau tabel berikut untuk mempelajari selengkapnya tentang titik akhir yang diwajibkan, spesifikasinya, dan contohnya.
| Titik akhir yang diwajibkan | Contoh domain dan jalur | Spesifikasi |
|---|---|---|
| Otorisasi | https://auth.provider.com/authorize | RFC 6749 Bagian 4.1 |
| Token | https://auth.provider.com/token | RFC 6749 Bagian 4.1.3 dan RFC 6749 Bagian 6 |
| JWKS | https://auth.provider.com/.well-known/jwks.json | RFC 7517 Bagian 5 |
| Discovery | https://auth.provider.com/.well-known/openid-configuration | OpenID Discovery 1.0 |
Persyaratan waktu respons titik akhir
Permintaan dari Shopify ke titik akhir token, discovery, dan userinfo penyedia identitas Anda harus merespons dalam waktu 1 detik. Jika titik akhir membutuhkan waktu lebih dari 1 detik untuk merespons, waktu permintaan akan habis dan alur login akan gagal. Untuk menghindari waktu habis, pastikan penyedia identitas Anda di-host di lingkungan dengan latensi rendah dan kapasitas yang memadai.
Persyaratan perangkat seluler
Jika toko Anda memiliki aplikasi seluler, titik akhir Otorisasi penyedia identitas harus mendukung parameter berikut:
code_challenge: Memverifikasi bahwa klien yang meminta token adalah klien yang sama dengan yang memulai permintaan.code_challenge_method: Titik akhir ini harus diatur keS256.
Persyaratan token ID
Token ID adalah bukti autentikasi, yang diterbitkan oleh penyedia identitas Anda setelah pengguna berhasil login. Tinjau persyaratan klaim dan penandatanganan berikut untuk token ID.
Klaim yang diwajibkan
Klaim adalah pernyataan yang dibagikan penyedia identitas Anda tentang seorang pengguna, yang digunakan untuk autentikasi. Saat menghubungkan akun pelanggan ke penyedia identitas Anda, klaim berikut diwajibkan dalam pengaturan token ID:
sub: Pengidentifikasi unik untuk pengguna di dalam penyedia identitas Anda.nonce: String unik yang disertakan dalam token ID untuk mencegah serangan replay.email: Alamat email unik pengguna yang digunakan untuk menyediakan akun pelanggan. Untuk integrasi Entra ID dan Azure AD, klaimupndigunakan sebagai penggantiemail, dan harus mengarah ke alamat email valid yang dapat menerima komunikasi terkait pesanan dan pelanggan.email_verified: Boolean yang menunjukkan apakah email telah diverifikasi oleh penyedia identitas. Nilai untukemail_verifiedharustrue.iss: Pengidentifikasi penerbit untuk penyedia identitas Anda.aud: Audiens yang dituju oleh token ID, juga dikenal sebagai ID klien Anda.
Persyaratan tanda tangan token
Persyaratan penandatanganan membantu penyedia identitas Anda memverifikasi identitas pengguna selama proses login. Penyedia identitas Anda harus menandatangani token ID menggunakan salah satu algoritme yang didukung berikut:
- RSA: RS256, RS384, RS512
- Kurva Eliptik: ES256, ES384, ES512, ES256K
- RSA-PSS: PS256, PS384, PS512
- EdDSA: ED25519, EdDSA
Token yang ditandatangani dengan HS256 (HMAC dengan rahasia bersama) tidak didukung.
Persyaratan sesi dan token
Shopify menggunakan token penyegaran untuk mempertahankan sesi pelanggan hingga 90 hari. Tanpa token penyegaran, sesi akan berakhir saat akses token dari penyedia identitas Anda kedaluwarsa, yang biasanya 1 jam.
Untuk mendukung sesi pelanggan berdurasi panjang, penyedia identitas Anda harus memenuhi persyaratan berikut:
- Penyedia identitas harus mendukung penerbitan token penyegaran seperti yang didefinisikan dalam RFC 6749 Bagian 1.5.
- Penyedia identitas harus dikonfigurasi untuk mengembalikan token penyegaran dalam respons token.
Sumber daya tambahan
Untuk mempelajari selengkapnya tentang penyedia identitas yang mematuhi OpenID Connect (OIDC) beserta persyaratannya, tinjau sumber daya pihak ketiga berikut: