image de chargement
Retour au glossaire

SSO (Single Sign-On)

Système d'authentification centralisé permettant aux utilisateurs d'accéder à plusieurs applications avec un seul jeu d'identifiants.

Mis à jour le 13 janvier 2026

Le Single Sign-On (SSO) est une méthode d'authentification qui permet à un utilisateur de se connecter une seule fois pour accéder à plusieurs applications ou services interconnectés. Cette technologie élimine la nécessité de gérer des identifiants séparés pour chaque système, améliorant ainsi l'expérience utilisateur tout en renforçant la sécurité et la gouvernance des accès.

Fondements du SSO

  • Architecture basée sur un fournisseur d'identité centralisé (Identity Provider - IdP) qui authentifie l'utilisateur
  • Utilisation de protocoles standardisés comme SAML 2.0, OAuth 2.0, OpenID Connect (OIDC) ou Kerberos
  • Émission de jetons d'authentification (tokens) qui sont validés par les applications consommatrices (Service Providers - SP)
  • Gestion centralisée des sessions utilisateur avec mécanismes de timeout et de révocation

Avantages du SSO

  • Réduction drastique de la fatigue des mots de passe et des demandes de réinitialisation (jusqu'à 70% de tickets helpdesk en moins)
  • Amélioration de la sécurité par centralisation du contrôle d'accès et application uniforme des politiques d'authentification forte (MFA)
  • Expérience utilisateur fluide favorisant l'adoption et la productivité des équipes
  • Simplification de la gestion des identités avec provisioning/deprovisioning automatisé lors des mouvements de personnel
  • Conformité facilitée avec les réglementations (RGPD, SOC 2) grâce à la traçabilité centralisée des accès

Exemple concret avec OpenID Connect

auth-config.ts
import { AuthOptions } from 'next-auth';
import GoogleProvider from 'next-auth/providers/google';
import AzureADProvider from 'next-auth/providers/azure-ad';

export const authOptions: AuthOptions = {
  providers: [
    GoogleProvider({
      clientId: process.env.GOOGLE_CLIENT_ID!,
      clientSecret: process.env.GOOGLE_CLIENT_SECRET!,
    }),
    AzureADProvider({
      clientId: process.env.AZURE_AD_CLIENT_ID!,
      clientSecret: process.env.AZURE_AD_CLIENT_SECRET!,
      tenantId: process.env.AZURE_AD_TENANT_ID!,
    }),
  ],
  session: {
    strategy: 'jwt',
    maxAge: 8 * 60 * 60, // 8 heures
  },
  callbacks: {
    async jwt({ token, account, profile }) {
      // Enrichir le token avec des claims personnalisés
      if (account) {
        token.accessToken = account.access_token;
        token.idToken = account.id_token;
        token.roles = profile?.roles || [];
      }
      return token;
    },
    async session({ session, token }) {
      // Transférer les informations du token à la session
      session.accessToken = token.accessToken;
      session.user.roles = token.roles;
      return session;
    },
  },
  pages: {
    signIn: '/auth/signin',
    error: '/auth/error',
  },
};

Mise en œuvre d'une solution SSO

  1. Auditer l'écosystème applicatif pour identifier les applications à intégrer et leurs capacités d'authentification
  2. Choisir un Identity Provider adapté (Okta, Auth0, Azure AD, Google Workspace, Keycloak en open-source)
  3. Définir la stratégie d'authentification : protocole(s) à utiliser, politiques MFA, gestion des rôles (RBAC/ABAC)
  4. Configurer les applications en tant que Service Providers avec échange de métadonnées (SAML) ou enregistrement OAuth
  5. Implémenter la synchronisation des annuaires (SCIM) pour le provisioning automatique des comptes
  6. Tester les flux d'authentification, la gestion des sessions et les scénarios de déconnexion (single logout)
  7. Déployer progressivement avec des groupes pilotes avant généralisation
  8. Monitorer les authentifications et configurer des alertes sur les comportements anormaux

Conseil Pro

Implémentez toujours un mécanisme de fallback pour l'accès administrateur (break-glass account) en cas de défaillance du SSO. Documentez cette procédure d'urgence et testez-la régulièrement. Pour les applications critiques, envisagez une architecture multi-IdP (failover) pour garantir la disponibilité même en cas de panne du fournisseur principal.

Outils et solutions SSO

  • Solutions cloud : Okta, Auth0 (Okta), Azure AD/Entra ID, Google Workspace, OneLogin, Ping Identity
  • Solutions open-source : Keycloak, Authelia, Authentik, Gluu Server
  • Bibliothèques d'intégration : Passport.js, NextAuth.js, spring-security-saml, python-saml
  • Protocoles : SAML 2.0 (entreprise), OpenID Connect/OAuth 2.0 (moderne), Kerberos (réseau Windows), LDAP/Active Directory

L'adoption du SSO représente un investissement stratégique qui réduit les coûts opérationnels (support, gestion des mots de passe), améliore la posture de sécurité de l'organisation et accélère l'onboarding des nouveaux collaborateurs. Dans un contexte d'applications SaaS multiples et de travail hybride, le SSO devient un pilier incontournable de l'infrastructure d'identité moderne, facilitant l'application du principe du moindre privilège et la mise en conformité réglementaire.

L'argentestdéjàsurlatable.

En 1 heure, découvrez exactement combien vous perdez et comment le récupérer.