HandyCafe Docs
owner it-admin

Налаштування OAuth

Категорія налаштувань OAuth конфігурує аутентифікацію за допомогою device-flow, дозволяючи клієнтам входити на клієнтські ПК, використовуючи свої існуючі соціальні акаунти. Це реалізує Device Authorization Grant (RFC 8628), який призначений для сценаріїв у кіосках та публічних середовищах, де користувачі аутентифікуються на окремому пристрої (своєму телефоні), а не вводять облікові дані на спільному ПК.

Головний перемикач

Перемикач Увімкнути вхід через OAuth контролює всю систему OAuth. Коли вимкнено, опція входу через OAuth не з'являється на екранах блокування клієнтів. Коли увімкнено, налаштовані провайдери доступні для входу клієнтів.

Назва кафе

Назва вашого кафе, яка відображається під час аутентифікації через OAuth. Це допомагає клієнтам підтвердити, що вони входять у правильний заклад, коли бачать запит на авторизацію на своєму телефоні.

Дозволити вхід без кредиту

Коли увімкнено, клієнтам дозволяється входити через OAuth, навіть якщо баланс їхнього гаманця дорівнює нулю. Це корисно для кафе, які хочуть дозволити безкоштовний перегляд або де клієнти платять на касі, а не через передплачений кредит.

Коли вимкнено, клієнти повинні мати позитивний баланс гаманця для завершення входу через OAuth.

Конфігурація провайдера

HandyCafe підтримує п'ять провайдерів OAuth. Кожен провайдер налаштовується окремо:

Google

Поле Опис
Перемикач увімкнення Увімкнути або вимкнути вхід через Google
Client ID OAuth 2.0 Client ID з вашого проекту в Google Cloud Console
Client Secret Відповідний секрет клієнта
Імпорт JSON Завантажте файл облікових даних у форматі Google JSON, щоб автоматично заповнити поля Client ID та Client Secret

Facebook

Поле Опис
Перемикач увімкнення Увімкнути або вимкнути вхід через Facebook
Client ID App ID з вашого додатку Facebook Developer
Client Secret App Secret з вашого додатку Facebook Developer

Apple

Поле Опис
Перемикач увімкнення Увімкнути або вимкнути вхід через Apple
Client ID Services ID з вашого облікового запису Apple Developer
Client Secret Згенерований секрет клієнта (на основі JWT)

X (Twitter)

Поле Опис
Перемикач увімкнення Увімкнути або вимкнути вхід через X
Client ID OAuth 2.0 Client ID з X Developer Portal
Client Secret Відповідний секрет клієнта

Discord

Поле Опис
Перемикач увімкнення Увімкнути або вимкнути вхід через Discord
Client ID Application ID з Discord Developer Portal
Client Secret Відповідний секрет клієнта

Налаштування провайдера

  1. Створіть додаток розробника на платформі провайдера (посилання на кожну консоль розробника доступні поруч з полями конфігурації).
  2. Налаштуйте додаток для Device Authorization Grant, де це можливо.
  3. Скопіюйте Client ID та Client Secret у відповідні поля в HandyCafe.
  4. Увімкніть перемикач провайдера.
  5. Збережіть налаштування.

Для Google ви можете експортувати облікові дані JSON з Google Cloud Console і використовувати кнопку Імпорт JSON, щоб автоматично заповнити обидва поля.

Тестування конфігурації

Після збереження налаштувань OAuth:

  1. Перейдіть до клієнтського ПК, підключеного до сервера.
  2. На екрані блокування клієнта знайдіть опцію входу через OAuth.
  3. Виберіть налаштованого провайдера та ініціюйте вхід.
  4. На екрані клієнта з'являться код пристрою та QR-код.
  5. Скануйте QR-код своїм телефоном або перейдіть за вказаною URL-адресою та введіть код.
  6. Завершіть аутентифікацію на своєму телефоні.
  7. Сервер перевіряє токен і, залежно від вашої конфігурації, або автоматично схвалює вхід, або надсилає запит адміністратору для схвалення.
  8. Після схвалення створюється або зв'язується обліковий запис клієнта, і починається сесія клієнта.

Для повного процесу входу через device-flow дивіться документацію з входу через OAuth.