@weegl/oauth2
v1.0.2
Published
Ce module permet de gérer l'authentification OAuth2 pour plusieurs services (Google, Discord, GitHub) de manière simple et unifiée.
Downloads
81
Readme
🔐 Module OAuth2 Multi-Services
Ce module permet de gérer l'authentification OAuth2 pour plusieurs services (Google, Discord, GitHub) de manière simple et unifiée.
📥 Installation
npm install @weegl/oauth2
✨ Fonctionnalités
- Support de multiples services d'authentification :
- Discord
- GitHub
- Google (Pas tester)
- Génération d'URL d'autorisation
- Conversion du code d'autorisation en informations utilisateur
- Interface unifiée pour tous les services
⚙️ Configuration
Pour utiliser le module, vous devez d'abord importer les classes nécessaires :
const { Oauth2, Services } = require("@weegl/oauth2");
Ensuite, créez une instance pour le service souhaité avec vos identifiants :
const oauth2 = new Oauth2(Services.Github, {
client_id: 'VOTRE_CLIENT_ID',
client_secret: 'VOTRE_CLIENT_SECRET',
});
🚀 Utilisation
1. Générer une URL d'autorisation
const redirectUri = 'http://localhost:3000/callback/github';
const authUrl = oauth2.generateAuthorizeURL(redirectUri);
2. Récupérer les informations utilisateur
oauth2.codeToUser(code, redirectUri)
.then(user => {
console.log(user);
})
.catch(error => {
console.error('Erreur:', error);
});
💻 Exemple complet
const { Oauth2, Services } = require("@weegl/oauth2");
const githubOauth = new Oauth2(Services.Github, {
client_id: 'VOTRE_CLIENT_ID',
client_secret: 'VOTRE_CLIENT_SECRET',
});
const redirectUri = 'http://localhost:3000/callback/github';
const authUrl = githubOauth.generateAuthorizeURL(redirectUri);
// Après redirection et réception du code
githubOauth.codeToUser('CODE_RECU', redirectUri)
.then(user => console.log(user))
.catch(err => console.error(err));
🔒 Sécurité
Pour maintenir la sécurité de votre application :
- Ne partagez jamais vos client_secret
- Utilisez des variables d'environnement pour les identifiants
- Vérifiez toujours que l'URI de redirection est correcte
📄 Licence
Copyright (c) 2024 Weegl