Magic link email delegati
Architettura passwordless, controlli e responsabilità delle applicazioni di terze parti.
Magic link email delegati
Sentinel può inviare a un utente registrato un link di accesso monouso diretto a un callback esatto della tua applicazione. Donutwork verifica la prova email; il tuo backend resta responsabile della decisione di accesso e della creazione della sessione applicativa.
Modello di fiducia
Il flusso combina due valori indipendenti:
- L'email contiene un token casuale monouso e l'identificativo della transazione.
- Il tuo backend conserva un
code_verifierPKCE privato; al momento della richiesta viene inviata solo la challenge S256.
Il solo possesso dell'URL ricevuto via email non è quindi sufficiente a verificare la transazione tramite un altro client. La prova è inoltre vincolata alla company e alla API key che l'ha richiesta.
Utente → Applicazione Y → API richiesta Donutwork
↓ email
Browser utente → callback esatto Y → backend Y → API verifica Donutwork
↓
identità + consiglio SentinelResponsabilità dell'applicazione
La tua applicazione deve:
- Generare e conservare lato server il verifier PKCE e lo state anti-CSRF.
- Richiedere esclusivamente un callback registrato nelle impostazioni Sentinel.
- Confrontare lo state e rimuovere subito i parametri del token dalla cronologia del browser.
- Chiamare la verifica dal backend con la stessa API key bearer.
- Applicare il consiglio restituito da Sentinel secondo la propria policy e creare la propria sessione.
Decisione di rischio advisory
Sentinel restituisce un consiglio allow, challenge_mfa o deny. Non crea né revoca automaticamente la sessione dell'applicazione terza.
Ciclo di vita e controlli antiabuso
- Gli utenti sconosciuti ricevono la stessa risposta accepted degli utenti noti, riducendo l'enumerazione degli account.
- Esiste una sola transazione attiva per utente e API key richiedente; un nuovo invio invalida il link precedente.
- La transazione viene consumata atomicamente dopo una verifica valida e scade al termine configurato.
- Cooldown, finestra richieste, richieste massime e tentativi di verifica sono configurabili.
- L'utente deve essere attivo e avere un account email esterno abilitato, ancora coerente con l'impronta salvata alla richiesta.
Per payload, risposte, errori e dettagli di integrazione consulta la documentazione API dei magic link email.