HandyCafe Docs
owner it-admin

Đăng nhập OAuth

HandyCafe hỗ trợ đăng nhập mạng xã hội/OAuth cho khách hàng sử dụng Device Authorization Grant (RFC 8628). Luồng này được thiết kế cho môi trường kiosk và công cộng nơi khách hàng không thể nhập thông tin đăng nhập an toàn trên PC dùng chung.

Nhà cung cấp Hỗ trợ

Nhà cung cấp Điểm cuối
Google oauth2.googleapis.com
Facebook graph.facebook.com/v21.0
Apple appleid.apple.com
X (Twitter) api.x.com/2/oauth2
Discord discord.com/api/oauth2

Mỗi nhà cung cấp có thể được bật hoặc tắt riêng lẻ trong Cài đặt > OAuth.

Luồng Xác thực

  1. Khách hàng chọn nhà cung cấp -- trên màn hình chờ máy khách, khách hàng nhấn nút nhà cung cấp (ví dụ: Google, Discord).
  2. Máy khách gửi yêu cầu đến máy chủ -- máy khách thông báo máy chủ HandyCafe rằng đăng nhập OAuth đã được khởi tạo.
  3. Máy chủ yêu cầu mã thiết bị -- máy chủ liên hệ điểm cuối ủy quyền thiết bị của nhà cung cấp và nhận mã thiết bị, mã người dùng và URI xác minh.
  4. Máy khách hiển thị mã -- máy khách hiển thị user_codeverification_uri cho khách hàng, thường dạng mã QR để dễ quét.
  5. Khách hàng xác thực trên điện thoại -- khách hàng quét mã QR bằng thiết bị cá nhân và hoàn tất xác thực trên trang web nhà cung cấp.
  6. Máy chủ kiểm tra token -- máy chủ định kỳ kiểm tra token từ nhà cung cấp.
  7. Máy chủ lấy thông tin người dùng -- khi thành công, máy chủ dùng token để lấy hồ sơ khách hàng từ nhà cung cấp.
  8. Quản trị viên phê duyệt hoặc từ chối -- yêu cầu đăng nhập xuất hiện trên trang Yêu cầu. Quản trị viên hoặc thu ngân xem xét và phê duyệt hoặc từ chối.
  9. Tạo hoặc liên kết hội viên -- nếu được phê duyệt, tài khoản hội viên mới được tạo hoặc danh tính OAuth được liên kết với hội viên hiện có.
  10. Phiên máy khách bắt đầu -- máy khách nhận xác nhận và phiên khách hàng bắt đầu.

Cân nhắc Bảo mật

  • Thông tin đăng nhập không bao giờ chạm PC dùng chung. Khách hàng xác thực chỉ trên thiết bị cá nhân.
  • Cổng phê duyệt quản trị. Mọi yêu cầu đăng nhập OAuth phải được phê duyệt trước khi phiên bắt đầu.
  • Yêu cầu tín dụng cấu hình được. Tùy chọn "cho phép đăng nhập không cần tín dụng" có thể bật/tắt.

Cấu hình

Nhà cung cấp OAuth được cấu hình trong Cài đặt > OAuth. Mỗi nhà cung cấp yêu cầu thông tin xác thực riêng (client ID và client secret) từ bảng điều khiển nhà phát triển của nhà cung cấp.