การตั้งค่า OAuth
หมวดการตั้งค่า OAuth ใช้สำหรับกำหนดการยืนยันตัวตนแบบ device-flow ทำให้สมาชิกสามารถล็อกอินเข้าสู่เครื่องลูกข่ายโดยใช้บัญชีโซเชียลที่มีอยู่แล้ว ซึ่งเป็นการใช้ Device Authorization Grant (RFC 8628) ที่ออกแบบมาสำหรับสถานการณ์ที่เป็นคีออสก์หรือสภาพแวดล้อมสาธารณะที่ผู้ใช้ยืนยันตัวตนบนอุปกรณ์อื่น (โทรศัพท์มือถือ) แทนการพิมพ์ข้อมูลบนเครื่อง PC ที่ใช้ร่วมกัน
สวิตช์หลัก
สวิตช์ เปิดใช้งานการล็อกอิน OAuth ควบคุมระบบ OAuth ทั้งหมด เมื่อปิดใช้งาน จะไม่มีตัวเลือกการล็อกอิน OAuth ปรากฏบนหน้าจอล็อกของเครื่องลูกข่าย เมื่อเปิดใช้งาน ผู้ให้บริการที่กำหนดไว้จะพร้อมสำหรับการล็อกอินของสมาชิก
ชื่อร้าน
ชื่อที่แสดงของร้านคุณที่จะแสดงในบริบทการยืนยันตัวตน OAuth ช่วยให้สมาชิกยืนยันว่ากำลังล็อกอินเข้าสู่สถานที่ที่ถูกต้องเมื่อเห็นการแจ้งเตือนการอนุญาตบนโทรศัพท์มือถือ
อนุญาตให้ล็อกอินโดยไม่ต้องมีเครดิต
เมื่อเปิดใช้งาน สมาชิกจะสามารถล็อกอินผ่าน OAuth ได้แม้ยอดเงินในกระเป๋าจะเป็นศูนย์ ซึ่งมีประโยชน์สำหรับร้านที่ต้องการให้บริการท่องเว็บฟรีหรือที่สมาชิกจ่ายเงินที่เคาน์เตอร์แทนการใช้เครดิตล่วงหน้า
เมื่อปิดใช้งาน สมาชิกต้องมียอดเงินในกระเป๋าเป็นบวกเพื่อทำการล็อกอิน OAuth ให้เสร็จสมบูรณ์
การกำหนดค่าผู้ให้บริการ
HandyCafe รองรับผู้ให้บริการ OAuth ห้าราย แต่ละรายสามารถกำหนดค่าได้อย่างอิสระ:
| ฟิลด์ | คำอธิบาย |
|---|---|
| สวิตช์เปิดใช้งาน | เปิดหรือปิดการล็อกอิน Google |
| Client ID | OAuth 2.0 Client ID จากโครงการ Google Cloud Console ของคุณ |
| Client Secret | Client secret ที่สอดคล้องกัน |
| การนำเข้า JSON | อัปโหลดไฟล์ JSON ที่เป็นรูปแบบของ Google เพื่อเติมฟิลด์ Client ID และ Client Secret อัตโนมัติ |
| ฟิลด์ | คำอธิบาย |
|---|---|
| สวิตช์เปิดใช้งาน | เปิดหรือปิดการล็อกอิน Facebook |
| Client ID | App ID จากแอปพลิเคชัน Facebook Developer ของคุณ |
| Client Secret | App Secret จากแอปพลิเคชัน Facebook Developer ของคุณ |
Apple
| ฟิลด์ | คำอธิบาย |
|---|---|
| สวิตช์เปิดใช้งาน | เปิดหรือปิดการล็อกอิน Apple |
| Client ID | Services ID จากบัญชี Apple Developer ของคุณ |
| Client Secret | Client secret ที่สร้างขึ้น (ใช้ JWT) |
X (Twitter)
| ฟิลด์ | คำอธิบาย |
|---|---|
| สวิตช์เปิดใช้งาน | เปิดหรือปิดการล็อกอิน X |
| Client ID | OAuth 2.0 Client ID จาก X Developer Portal |
| Client Secret | Client secret ที่สอดคล้องกัน |
Discord
| ฟิลด์ | คำอธิบาย |
|---|---|
| สวิตช์เปิดใช้งาน | เปิดหรือปิดการล็อกอิน Discord |
| Client ID | Application ID จาก Discord Developer Portal |
| Client Secret | Client secret ที่สอดคล้องกัน |
การตั้งค่าผู้ให้บริการ
- สร้างแอปพลิเคชันนักพัฒนาบนแพลตฟอร์มของผู้ให้บริการ (ลิงก์ไปยังคอนโซลนักพัฒนาของผู้ให้บริการแต่ละรายมีอยู่ถัดจากฟิลด์การกำหนดค่า)
- กำหนดค่าแอปพลิเคชันสำหรับการใช้ Device Authorization Grant flow หากมี
- คัดลอก Client ID และ Client Secret ลงในฟิลด์ที่สอดคล้องกันใน HandyCafe
- เปิดสวิตช์ผู้ให้บริการ
- บันทึกการตั้งค่า
สำหรับ Google โดยเฉพาะ คุณสามารถส่งออกไฟล์ JSON ของข้อมูลรับรองจาก Google Cloud Console และใช้ปุ่ม การนำเข้า JSON เพื่อเติมฟิลด์ทั้งสองอัตโนมัติ
การทดสอบการกำหนดค่า
หลังจากบันทึกการตั้งค่า OAuth ของคุณ:
- ไปที่เครื่องลูกข่ายที่เชื่อมต่อกับเซิร์ฟเวอร์
- บนหน้าจอล็อกของเครื่องลูกข่าย มองหาตัวเลือกการล็อกอิน OAuth
- เลือกผู้ให้บริการที่กำหนดค่าไว้และเริ่มการล็อกอิน
- โค้ดอุปกรณ์และ QR code จะปรากฏบนหน้าจอของเครื่องลูกข่าย
- สแกน QR code ด้วยโทรศัพท์ของคุณหรือไปที่ URL ที่แสดงและป้อนโค้ด
- ทำการยืนยันตัวตนบนโทรศัพท์ของคุณให้เสร็จสมบูรณ์
- เซิร์ฟเวอร์จะตรวจสอบโทเค็นและขึ้นอยู่กับการกำหนดค่าของคุณ อาจอนุมัติการล็อกอินอัตโนมัติหรือส่งคำขอไปยังผู้ดูแลระบบเพื่ออนุมัติ
- เมื่อได้รับการอนุมัติ บัญชีสมาชิกจะถูกสร้างหรือเชื่อมโยงและเซสชันของเครื่องลูกข่ายจะเริ่มต้น
สำหรับกระบวนการล็อกอินแบบ device-flow ทั้งหมด ดูเอกสารการล็อกอิน OAuth