Aller au contenu

SuperTokens

FonctionnalitéSupport
Gestion utilisateurs✅ Complète
Organisations✅ Via la multi-location (chaque tenant = une organisation)
Journaux d’audit❌ Non supporté
  1. Lancer le core SuperTokens

    Hébergez vous-même le core SuperTokens ou utilisez le cloud géré SuperTokens.

    Pour le développement local avec Docker :

    Terminal window
    docker run -d \
    -p 3567:3567 \
    registry.supertokens.io/supertokens/supertokens-postgresql

    Notez l’URI de connexion (ex. http://localhost:3567) et, si vous en avez configuré une, la clé API dans votre config.yaml.

  2. Configurer votre SDK backend SuperTokens

    AUMS se connecte directement au core SuperTokens via la CDI (Core Driver Interface). Votre SDK backend applicatif (Node.js, Python, etc.) doit déjà être initialisé avec les recettes EmailPassword et, optionnellement, EmailVerification, UserMetadata et Multitenancy activées.

    AUMS s’appuie sur ces recettes pour la gestion complète des utilisateurs :

    RecetteUsage dans AUMS
    EmailPasswordCréer et mettre à jour les utilisateurs (requis)
    EmailVerificationMarquer les emails comme vérifiés / non vérifiés
    UserMetadataStocker le nom d’affichage (prénom / nom)
    MultitenancyGérer les organisations comme des tenants SuperTokens
  3. Définir les variables d’environnement

    Terminal window
    PROVIDER=supertokens
    SUPERTOKENS_CONNECTION_URI=http://localhost:3567
    # Requis pour le cloud géré SuperTokens, optionnel pour l'auto-hébergement
    # SUPERTOKENS_API_KEY=your-api-key
    # Tenant utilisé pour les opérations utilisateurs (défaut : public)
    # SUPERTOKENS_TENANT_ID=public

La multi-location SuperTokens s’associe directement aux organisations AUMS : chaque tenant SuperTokens (autre que le tenant par défaut configuré par SUPERTOKENS_TENANT_ID) est traité comme une organisation.

Opération AUMSAppel CDI SuperTokens
Lister les orgsGET /recipe/multitenancy/tenant/list/v2
Créer une orgPUT /recipe/multitenancy/tenant (tenantId = slug du nom)
Supprimer une orgPOST /recipe/multitenancy/tenant/remove
Lister les membresGET /{tenantId}/users
Ajouter un membrePOST /recipe/multitenancy/tenant/user
Retirer un membreDELETE /recipe/multitenancy/tenant/user
  • Mot de passe requis — AUMS crée les utilisateurs via la recette EmailPassword. Un mot de passe doit être fourni lors de la création d’un utilisateur.
  • Nom d’affichage — Le prénom et le nom sont stockés dans la recette UserMetadata sous les clés first_name et last_name.
  • Utilisateurs bloqués — SuperTokens n’a pas de concept natif de blocage/suspension. Le champ blocked retourne toujours false ; les opérations de blocage sont ignorées silencieusement.
  • Vérification email — Requiert que la recette EmailVerification soit activée dans votre SDK backend SuperTokens.

Pour protéger le tableau de bord AUMS avec le SSO SuperTokens, configurez un fournisseur OIDC qui encapsule votre déploiement SuperTokens (ex. via la recette OAuth2 provider) :

Terminal window
AUTH_CLIENT_OPENID_CONFIGURATION_URL=https://your-supertokens-app/.well-known/openid-configuration
AUTH_CLIENT_ID=your-oidc-client-id
AUTH_CLIENT_SECRET=your-oidc-client-secret