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.