Avvii rapidi
Ogni avvio rapido porta un framework da un progetto vuoto a un'API che accetta solo access token KeenAuth validi oppure a un'app web che permette agli utenti di accedere. Ogni avvio rapido deriva da un esempio eseguibile i cui test girano offline con il kit di test dell'SDK, quindi il codice in queste pagine è quello che i test verificano.
Proteggi la tua API
| Framework | Avvio rapido |
|---|---|
Go net/http |
Proteggi un'API Go |
| Node.js Express | Proteggi un'API Express |
| Python FastAPI | Proteggi un'API FastAPI |
| Python Django | Proteggi un'API Django |
I quattro avvii rapidi per API costruiscono la stessa API: un endpoint pubblico, un endpoint che richiede un access token valido e un endpoint che richiede anche l'autorizzazione messages:read. Leggono la configurazione solo da variabili d'ambiente:
| Variabile | Significato |
|---|---|
KEENAUTH_ISSUER |
L'issuer del tuo ambiente, per esempio https://your-environment.eu.keenauth.app |
KEENAUTH_AUDIENCE |
L'identificatore della tua API, l'audience dei suoi access token |
PUBLIC_BASE_URL |
L'URL che i client chiamano; obbligatorio, https (http solo per localhost) |
Fai accedere gli utenti
| Framework | Avvio rapido |
|---|---|
| Next.js (App Router) | Aggiungi l'accesso a un'app Next.js |
| React single-page app (Vite) | Aggiungi l'accesso a una single-page app React |
| React Router (modalità framework) | Aggiungi l'accesso a un'app React Router |
| Laravel | Aggiungi l'accesso a un'app Laravel |
| Spring Boot | Aggiungi l'accesso a un'app Spring Boot |
| ASP.NET Core | Aggiungi l'accesso a un'app ASP.NET Core |
L'app Next.js è l'OAuth client e mantiene ogni token sul server; lo fa anche l'app React Router, con il client OpenID Connect standard openid-client. La single-page app React è un client pubblico: i suoi token restano nella memoria del browser, legati a una chiave DPoP. Le altre app web usano una libreria client OpenID Connect standard del loro framework e mantengono ogni token nella sessione lato server. Tutte leggono la configurazione da variabili d'ambiente (vedi ogni pagina) e chiamano un'API protetta con l'access token dell'utente.
Fastify e Flask usano lo stesso middleware; vedi Proteggere la tua API con il middleware.