@delord/omniauth
v1.0.3
Published
SDK d'authentification centralisée pour OmniAuth
Readme
🚀 OmniAuth
OmniAuth est un Identity Provider (IdP) centralisé. Ce SDK permet aux développeurs d'intégrer l'authentification multi-projets en quelques secondes, en gérant la communication sécurisée avec l'API OmniAuth.
✨ Points forts
- Initialisation simplifiée : Configurez votre
appIdune seule fois. - Léger & Natif : Aucune dépendance externe (utilise
fetch). - Sécurité : Gestion robuste des erreurs et validation des types de contenu.
- Moderne : Support complet des ES Modules (
import/export).
🛠️ Avant de commencer (Prérequis)
Avant d'installer le SDK, vous devez configurer votre environnement sur la console OmniAuth :
- Créer un compte : Rendez-vous sur omniauth pour vous inscrire.
- Configurer votre Application : Dans le menu Applications, créez un nouveau projet pour générer votre
appidunique. - Définir les Accès : Allez dans Niveaux d'accès d'application pour créer les rôles (Admin, User, etc.) propres à votre application.
- Ajouter des Utilisateurs : Dans le menu Utilisateurs d'application, liez vos comptes à l'application et attribuez-leur leurs niveaux d'accès.
📦 Installation
Installez le SDK via votre gestionnaire de paquets préféré :
npm install @delord/omniauth
# ou
yarn add @delord/omniauth🚀 Utilisation Rapide
Login
import omniauth from '@delord/omniauth';
// 1. Initialisation avec votre ID d'application
const auth = omniauth("votre_appid_unique");
// 2. Authentification directe
const handleLogin = async (email, password) => {
try {
const result = await auth.login(email, password);
return result;
} catch (error) {
console.error("Erreur OmniAuth :", error.message);
}
};
RefreshToken
import omniauth from '@delord/omniauth';
// 1. Initialisation avec votre ID d'application
const auth = omniauth("votre_appid_unique");
// 2. RefreShToken directe
const handleRefresh = async (email, password) => {
try {
const result = await omniauthApp.refreshTokens(req.body.refreshToken);
return result;
} catch (error) {
console.error("Erreur OmniAuth :", error.message);
}
};
🛠️ Référence de l'API
omniauth(appId)
Initialise le service.
- appId (String) : L'identifiant unique généré dans le menu "Applications" de votre console OmniAuth. Obligatoire.
auth.login(login, password)
Authentifie un utilisateur pour l'application configurée.
- login (String) : Email ou identifiant de l'utilisateur.
- password (String) : Mot de passe de l'utilisateur.
- Retourne : Une
Promisecontenant l'objet de réponse (Token, User Info, etc.).
🌐 Architecture
OmniAuth repose sur une structure en trois couches pour garantir l'étanchéité de vos données :
- Applications : Identifiées par un
appidunique servant d'audience pour les jetons. - Niveaux d'accès : Définition des rôles (Admin, Éditeur, etc.) spécifiques à chaque application.
- Utilisateurs : Base centrale reliée dynamiquement aux applications via leurs niveaux d'accès.
