Log Masuk OAuth
HandyCafe menyokong log masuk sosial/OAuth untuk pelanggan menggunakan Device Authorization Grant (RFC 8628). Aliran ini direka untuk persekitaran kiosk dan awam di mana pelanggan tidak boleh memasukkan kelayakan dengan selamat pada PC berkongsi.
Pembekal yang Disokong
| Pembekal | Titik Akhir |
|---|---|
| oauth2.googleapis.com | |
| graph.facebook.com/v21.0 | |
| Apple | appleid.apple.com |
| X (Twitter) | api.x.com/2/oauth2 |
| Discord | discord.com/api/oauth2 |
Setiap pembekal boleh diaktifkan atau dinyahaktifkan secara individu dalam Tetapan > OAuth.
Aliran Pengesahan
Aliran kebenaran peranti melalui langkah-langkah berikut:
- Pelanggan memilih pembekal -- pada skrin tunggu klien, pelanggan mengetik butang pembekal (cth. Google, Discord).
- Klien menghantar permintaan ke pelayan -- klien memberitahu pelayan HandyCafe bahawa log masuk OAuth telah dimulakan.
- Pelayan meminta kod peranti -- pelayan menghubungi titik akhir kebenaran peranti pembekal yang dipilih dan menerima kod peranti, kod pengguna dan URI pengesahan.
- Klien memaparkan kod -- klien menunjukkan
user_codedanverification_urikepada pelanggan, biasanya dipaparkan sebagai kod QR untuk pengimbasan mudah. - Pelanggan mengesahkan pada telefon mereka -- pelanggan mengimbas kod QR dengan peranti peribadi mereka (telefon atau tablet) dan melengkapkan pengesahan di laman web pembekal.
- Pelayan meninjau untuk token -- pelayan secara berkala meninjau pembekal untuk token. Keadaan tinjauan termasuk:
- Menunggu -- pelanggan belum melengkapkan pengesahan.
- Perlahan -- tinjauan terlalu kerap; pelayan melambatkan.
- Berjaya -- pengesahan selesai; token diterima.
- Luput -- kod peranti telah luput sebelum pengesahan.
- Ralat -- ralat yang tidak dijangka berlaku.
- Pelayan mendapatkan maklumat pengguna -- apabila berjaya, pelayan menggunakan token untuk mengambil profil pelanggan dari pembekal, termasuk
provider_uid,email,namedanavatar_url. - Pentadbir meluluskan atau menolak -- permintaan log masuk muncul di Halaman Permintaan. Pentadbir atau juruwang menyemak dan meluluskan atau menolak permintaan.
- Ahli dicipta atau dipautkan -- jika diluluskan, akaun ahli baharu dicipta atau identiti OAuth dipautkan ke ahli sedia ada.
- Sesi klien bermula -- klien menerima pengesahan dan sesi pelanggan bermula.
Pertimbangan Keselamatan
- Kelayakan tidak pernah menyentuh PC berkongsi. Pelanggan mengesahkan pada peranti peribadi mereka sahaja. Tiada kata laluan atau token dimasukkan pada mesin klien.
- Pintu kelulusan pentadbir. Setiap permintaan log masuk OAuth mesti diluluskan oleh pentadbir atau juruwang sebelum sesi bermula, menghalang akses tanpa kebenaran.
- Keperluan kredit boleh dikonfigurasikan. Pilihan "benarkan log masuk tanpa kredit" boleh diaktifkan atau dinyahaktifkan, mengawal sama ada pelanggan memerlukan baki positif untuk log masuk melalui OAuth.
Konfigurasi
Pembekal OAuth dikonfigurasikan dalam Tetapan > OAuth. Setiap pembekal memerlukan kelayakan kliennya sendiri (ID klien dan rahsia klien) yang diperoleh dari konsol pembangun pembekal. Aktifkan hanya pembekal yang anda ingin tawarkan kepada pelanggan anda.