Auth
Le concept d'"auth" regroupe à la fois l'authentification (autthentication en anglais) et l'autorisation (authorization en anglais), qui sont des besoins classiques lorsque l'on construit une application web. L'authentification signifie vérifier que l'utilisateur ou l'utilisatrice est bien la personne qu'elle prétend être grâce aux identifiants fournis. L'autorisation signifie déterminer quelles actions une personne est autorisée à faire.
Sessions vs tokens
Après que la personne a fourni ses identifiants comme un nom et un mot de passe, nous souhaitons les l'autoriser à utiliser l'application sans qu'elle ait de nouveau besoin de fournir ses identifiants pour les requêtes futures. Les utilisateurs et utilisatrices sont en généralement authentifiées pour les requêtes suivantes avec soit un identifiant de session, soit avec un token signé tel qu'un JSON Web Token (JWT).
Les IDs de sessions sont en général stockés dans une base de données. Ils peuvent être immédiatement révoqués, mais nécessitent d'interroger la base de données à chaque requête.
À l'inverse, les JWT ne sont généralement pas vérifiés en rapport à une base de données, ce qui implique qu'ils ne peuvent pas être immédiatement révoqués. L'avantage de cette méthode est une meilleure latence et une charge réduite sur votre base de données.
Points d'intégrations
Les cookies peuvent être vérifiés dans des hooks de
serveur. Si les identifiants d'utilisateur ou utilisatrice correspondent à une
entrée dans la base de données, les informations d'utilisateur peuvent être stockées dans le champ
locals.
Libraries
Le CLI de Svelte vous permet de mettre en place Better Auth sur un nouveau projet ou de l'ajouter à un projet existant.
Guides
Si vous souhaitez implémenter votre propre système d'authentification, le guide d'authentification de Lucia, fournit une référence pour mettre en place une authentification d'application web basée sur des tokens de session, avec des exemples SvelteKit.
Modifier cette page sur Github llms.txt