Cara Menyediakan Log Masuk Sosial OAuth
Panduan ini membimbing anda melalui konfigurasi log masuk sosial supaya pelanggan boleh log masuk ke PC klien menggunakan akaun Google, Facebook, Apple, X atau Discord mereka. HandyCafe menggunakan aliran Device Authorization Grant (RFC 8628) yang direka untuk peranti tanpa pelayar penuh. Pelanggan mengimbas kod QR dengan telefon mereka untuk mengesahkan.
Apa yang Anda Perlukan
- Akses pentadbir ke HandyCafe Server.
- Akaun Google Cloud Console (untuk Google OAuth) atau akses portal pembangun yang setaraf untuk pembekal lain.
- HandyCafe Server berjalan dan boleh diakses pada rangkaian anda.
- Sekurang-kurangnya satu PC klien yang disambungkan untuk menguji aliran log masuk.
Cara Aliran Peranti OAuth Berfungsi dalam HandyCafe
Sebelum mula persediaan, berikut ringkasan aliran:
- Pelanggan di PC klien yang melahu mengklik butang log masuk sosial (cth. "Log masuk dengan Google").
- Klien menghantar permintaan mula OAuth ke pelayan.
- Pelayan menghubungi titik akhir kebenaran peranti pembekal dan menerima kod peranti, kod pengguna dan URL pengesahan.
- Klien memaparkan kod QR dan kod pengguna pada skrin tunggu.
- Pelanggan mengimbas kod QR dengan telefon mereka dan mengesahkan dengan pembekal.
- Pelayan meninjau pembekal sehingga pengesahan selesai.
- Pelayan mencipta Permintaan Log Masuk OAuth yang muncul di halaman Permintaan.
- Pentadbir atau juruwang meluluskan permintaan.
- Akaun ahli baharu dicipta (atau akaun sedia ada dipautkan) dan pelanggan log masuk.
Cara Menyediakan Google OAuth
Google ialah pembekal yang paling biasa digunakan. Bahagian ini merangkumi setiap langkah dari penciptaan projek Google Cloud hingga menguji log masuk pertama.
Bahagian A: Cipta Kelayakan Google Cloud
- Buka Google Cloud Console di https://console.cloud.google.com dalam pelayar anda.
- Cipta projek baharu atau pilih yang sedia ada. Namakannya sesuatu yang mudah dikenali seperti "HandyCafe OAuth."
- Navigasi ke APIs & Services > OAuth consent screen.
- Pilih External sebagai jenis pengguna.
- Isikan medan yang diperlukan: Nama aplikasi, e-mel sokongan pengguna dan e-mel hubungan pembangun.
- Klik Save and Continue melalui bahagian Scopes dan Test Users. Anda tidak perlu menambah skop khas.
- Navigasi ke APIs & Services > Credentials.
- Klik Create Credentials > OAuth client ID.
- Untuk jenis Aplikasi, pilih TVs and Limited Input devices. Ini kritikal. HandyCafe menggunakan aliran kebenaran peranti yang memerlukan jenis klien khusus ini.
- Masukkan nama untuk klien (cth. "HandyCafe Device Flow").
- Klik Create.
- Salin Client ID dan Client Secret dari dialog pengesahan. Simpan dengan selamat.
Bahagian B: Konfigurasikan HandyCafe Server
- Buka aplikasi HandyCafe Server.
- Navigasi ke Tetapan menggunakan ikon gear di bar sisi kiri.
- Pilih tab OAuth.
- Aktifkan togol OAuth di bahagian atas halaman. Ini mengaktifkan log masuk sosial secara global merentasi semua PC klien.
- Cari baris pembekal Google dalam senarai pembekal.
- Aktifkan togol Google.
- Tampal Client ID anda ke medan Client ID.
- Tampal Client Secret anda ke medan Client Secret.
- Klik Simpan untuk menerapkan konfigurasi.
Hasil yang dijangka: Tab OAuth menunjukkan Google sebagai diaktifkan dengan kelayakan anda diisi. Tetapan ditolak ke semua klien yang disambungkan.
Bahagian C: Uji Aliran Log Masuk
- Pergi ke PC klien yang disambungkan. Skrin tunggu kini sepatutnya menunjukkan bahagian log masuk sosial dengan butang log masuk Google.
- Klik butang Google pada skrin tunggu klien.
- Klien memaparkan kod QR dan kod pengguna (rentetan alfanumerik pendek).
- Imbas kod QR dengan telefon anda. Ia membuka halaman pengesahan peranti Google.
- Log masuk dengan akaun Google dan masukkan kod pengguna apabila diminta.
- Benarkan aplikasi.
Hasil yang dijangka: Pada pelayan, bunyi pemberitahuan dimainkan dan entri baharu muncul di halaman Permintaan.
Cara Meluluskan Permintaan Log Masuk
Setiap log masuk OAuth menjana permintaan yang mesti diluluskan oleh pentadbir atau juruwang sebelum pelanggan mendapat akses.
- Apabila permintaan log masuk tiba, bunyi pemberitahuan dimainkan pada pelayan dan lencana muncul pada ikon halaman Permintaan di bar sisi.
- Navigasi ke halaman Permintaan.
- Permintaan yang menunggu menunjukkan: nama pembekal, nama paparan, alamat e-mel, PC klien dan cap masa.
- Semak butiran permintaan. Sahkan orang di PC klien sepadan dengan maklumat akaun.
- Klik Luluskan untuk menerima permintaan.
Hasil yang dijangka: Jika tiada akaun ahli sedia ada dipautkan ke identiti OAuth ini, akaun ahli baharu dicipta secara automatik. Pelanggan log masuk dan PC klien beralih dari skrin tunggu ke Halaman Dalam Talian.
Cara Menyediakan Facebook OAuth
- Buka Portal Pembangun Facebook di https://developers.facebook.com .
- Cipta aplikasi baharu. Pilih jenis aplikasi Consumer.
- Navigasi ke halaman Settings > Basic aplikasi. Catat App ID dan App Secret.
- Navigasi ke Add Product dan tambah Facebook Login for Devices.
- Dalam HandyCafe Server, navigasi ke Tetapan > OAuth.
- Aktifkan togol Facebook.
- Tampal App ID ke medan Client ID.
- Tampal App Secret ke medan Client Secret.
- Klik Simpan.
Cara Menyediakan Discord OAuth
- Buka Portal Pembangun Discord di https://discord.com/developers/applications .
- Cipta aplikasi baharu.
- Navigasi ke bahagian OAuth2 di bar sisi kiri.
- Salin Client ID dan jana Client Secret. Simpan rahsia dengan selamat kerana Discord hanya menunjukkannya sekali.
- Dalam HandyCafe Server, navigasi ke Tetapan > OAuth.
- Aktifkan togol Discord.
- Tampal Client ID dan Client Secret.
- Klik Simpan.
Cara Membenarkan Log Masuk Tanpa Kredit
Secara lalai, HandyCafe membenarkan pelanggan yang disahkan OAuth log masuk walaupun mereka tiada baki dompet atau kredit masa.
- Navigasi ke Tetapan > OAuth.
- Cari togol Benarkan Log Masuk Tanpa Kredit.
- Jika diaktifkan (lalai), pelanggan yang mengesahkan melalui OAuth boleh log masuk tanpa mengira baki mereka.
- Jika dinyahaktifkan, pelanggan mesti mempunyai sama ada baki dompet atau kredit masa untuk log masuk.
- Klik Simpan selepas menukar togol.
Kesilapan Biasa yang Perlu Dielakkan
- Menggunakan jenis klien OAuth yang salah dalam Google Cloud Console. Anda mesti memilih "TVs and Limited Input devices" apabila mencipta ID klien OAuth. Jika anda memilih "Web application" atau "Desktop app", aliran kebenaran peranti tidak akan berfungsi.
- Terlupa mengaktifkan togol OAuth global. Mengaktifkan pembekal individu tidak mencukupi. Togol OAuth utama di bahagian atas halaman tetapan OAuth juga mesti dihidupkan.
- Tidak meluluskan permintaan log masuk. Log masuk OAuth memerlukan kelulusan eksplisit dari pelayan. Jika tiada sesiapa memantau halaman Permintaan, pelanggan akan menunggu selama-lamanya di skrin tunggu.
- Membiarkan kod peranti luput. Kod peranti mempunyai jangka hayat terhad (biasanya 5-10 minit). Jika pelanggan mengambil terlalu lama untuk mengimbas kod QR dan mengesahkan, kod luput dan mereka mesti mula semula.
- Menampal kelayakan dengan ruang kosong tambahan. Apabila menyalin Client ID atau Client Secret dari konsol pembekal, pastikan tiada ruang kosong di hadapan atau di belakang disertakan.
- Terlupa menerbitkan aplikasi Google OAuth. Aplikasi Google dalam mod "Testing" hanya membenarkan bilangan pengguna ujian yang terhad. Untuk membenarkan mana-mana pelanggan log masuk, anda mesti menerbitkan aplikasi melalui halaman skrin persetujuan OAuth.
- Tidak mengkonfigurasikan nama kafe. Nama kafe dari tetapan HandyCafe anda dipaparkan pada skrin tunggu klien semasa aliran OAuth. Nama kosong atau lalai kelihatan tidak profesional. Tetapkan nama kafe anda dalam Tetapan > Am sebelum mengaktifkan OAuth.