HandyCafe Docs
owner it-admin

Impostazioni OAuth

La categoria Impostazioni OAuth configura l'autenticazione tramite device-flow, permettendo ai membri di accedere ai PC client utilizzando i loro account social esistenti. Questo implementa il Device Authorization Grant (RFC 8628), progettato per scenari di chioschi e ambienti pubblici dove gli utenti si autenticano su un dispositivo separato (il loro telefono) anziché digitare le credenziali su un PC condiviso.

Interruttore Principale

L'interruttore Abilita Login OAuth controlla l'intero sistema OAuth. Quando è disabilitato, nessuna opzione di login OAuth appare sulle schermate di blocco dei client. Quando è abilitato, i provider configurati sono disponibili per il login dei membri.

Nome del Locale

Un nome visualizzato per il tuo locale che viene mostrato durante il contesto di autenticazione OAuth. Questo aiuta i membri a confermare che stanno accedendo al locale corretto quando vedono il prompt di autorizzazione sul loro telefono.

Permetti Login Senza Credito

Quando abilitato, i membri possono accedere tramite OAuth anche se il saldo del loro portafoglio è zero. Questo è utile per i locali che vogliono permettere la navigazione gratuita o dove i membri pagano al banco piuttosto che tramite credito prepagato.

Quando disabilitato, i membri devono avere un saldo positivo nel portafoglio per completare un login OAuth.

Configurazione del Provider

HandyCafe supporta cinque provider OAuth. Ogni provider è configurato indipendentemente:

Google

Campo Descrizione
Interruttore di abilitazione Attiva o disattiva il login con Google
Client ID L'ID Client OAuth 2.0 dal tuo progetto Google Cloud Console
Client Secret Il corrispondente client secret
Importazione JSON Carica un file JSON di credenziali in formato Google per riempire automaticamente i campi Client ID e Client Secret

Facebook

Campo Descrizione
Interruttore di abilitazione Attiva o disattiva il login con Facebook
Client ID L'App ID dalla tua applicazione Facebook Developer
Client Secret L'App Secret dalla tua applicazione Facebook Developer

Apple

Campo Descrizione
Interruttore di abilitazione Attiva o disattiva il login con Apple
Client ID L'ID Servizi dal tuo account Apple Developer
Client Secret Il client secret generato (basato su JWT)

X (Twitter)

Campo Descrizione
Interruttore di abilitazione Attiva o disattiva il login con X
Client ID L'ID Client OAuth 2.0 dal X Developer Portal
Client Secret Il corrispondente client secret

Discord

Campo Descrizione
Interruttore di abilitazione Attiva o disattiva il login con Discord
Client ID L'ID Applicazione dal Discord Developer Portal
Client Secret Il corrispondente client secret

Configurazione di un Provider

  1. Crea un'applicazione developer sulla piattaforma del provider (i link a ciascun console developer del provider sono disponibili accanto ai campi di configurazione).
  2. Configura l'applicazione per il flusso Device Authorization Grant dove applicabile.
  3. Copia il Client ID e il Client Secret nei campi corrispondenti in HandyCafe.
  4. Abilita l'interruttore del provider.
  5. Salva le impostazioni.

Per Google in particolare, puoi esportare le credenziali JSON dalla Google Cloud Console e utilizzare il pulsante Importazione JSON per popolare automaticamente entrambi i campi.

Testare la Configurazione

Dopo aver salvato le impostazioni OAuth:

  1. Vai a un PC client che è connesso al server.
  2. Sulla schermata di blocco del client, cerca l'opzione di login OAuth.
  3. Seleziona un provider configurato e avvia il login.
  4. Un codice dispositivo e un codice QR appariranno sullo schermo del client.
  5. Scansiona il codice QR con il tuo telefono o visita l'URL visualizzato e inserisci il codice.
  6. Completa l'autenticazione sul tuo telefono.
  7. Il server verifica il token e, a seconda della tua configurazione, approva automaticamente il login o invia una richiesta all'amministratore per l'approvazione.
  8. Una volta approvato, l'account membro viene creato o collegato e la sessione del client inizia.

Per il processo completo di login tramite device-flow, consulta la documentazione del Login OAuth.