Passer au contenu principal

🔐 Comprendre la connexion SSO dans les Webviews et les MicroApps

Lucas Minarro-Rey avatar
Écrit par Lucas Minarro-Rey
Mis à jour il y a plus de 2 semaines

🎯 Objectif

Cet article vise Ă  expliquer le fonctionnement de la connexion Single Sign-On (SSO) dans les Webviews et les MicroApps, en mettant en lumiĂšre les diffĂ©rences en termes de persistance de session et de mĂ©canismes d'authentification.​


🧭 DĂ©finitions clĂ©s

Webview

Une Webview est un composant intĂ©grĂ© dans une application mobile qui permet d'afficher du contenu web. Elle agit comme un navigateur embarquĂ©, offrant une expĂ©rience utilisateur fluide sans quitter l'application.​

MicroApp

Une MicroApp est une fonctionnalitĂ© autonome intĂ©grĂ©e dans une application principale. Elle interagit gĂ©nĂ©ralement avec des services backend via des API, sans nĂ©cessiter d'interface web.​


🔐 Fonctionnement du SSO dans les Webviews

🔄 Partage de session

Dans une application mobile, une seule instance de Webview est gĂ©nĂ©ralement utilisĂ©e. Cela signifie que :​

  • Les cookies de session sont partagĂ©s entre les diffĂ©rentes Webviews.

  • Une fois l'utilisateur authentifiĂ© via SSO dans une Webview, la session reste active pour les autres services accessibles via Webview, tant que la session n'a pas expirĂ©.​

Par exemple, si un Ă©tudiant se connecte Ă  un service de logement via SSO dans une Webview, il n'aura pas besoin de se reconnecter pour accĂ©der Ă  un autre service utilisant la mĂȘme instance de Webview.​

⚠ Limitations

Il est important de noter que :​

  • La persistance de la session dĂ©pend de la validitĂ© des cookies. Si les cookies expirent ou sont supprimĂ©s, une nouvelle authentification sera nĂ©cessaire.

  • Les Webviews ne partagent pas les cookies avec les navigateurs externes. Ainsi, une session active dans une Webview n'est pas reconnue dans le navigateur natif de l'appareil, et vice versa.​


đŸ€– Fonctionnement du SSO dans les MicroApps

Les MicroApps ne reposent pas sur des Webviews pour l'authentification. À la place, elles utilisent des mĂ©canismes de Machine-to-Machine (M2M) pour interagir avec les services backend.​

🔐 Authentification M2M

Dans ce contexte :​

  • L'application mobile agit en tant que client de confiance, s'authentifiant auprĂšs du service backend via des tokens d'accĂšs obtenus grĂące au flux de Client Credentials d'OAuth 2.0.

  • Aucune interaction utilisateur n'est requise pour l'authentification, car les identifiants sont Ă©changĂ©s directement entre machines.​

Ce mĂ©canisme est particuliĂšrement adaptĂ© pour des services nĂ©cessitant une communication sĂ©curisĂ©e entre applications, sans intervention humaine.​


📊 Comparaison entre Webviews et MicroApps

Caractéristique

Webview

MicroApp

Type d'authentification

SSO via navigateur intégré

Authentification M2M via API

Persistance de session

Dépend des cookies de session

Gérée par des tokens d'accÚs avec expiration

Interaction utilisateur

Requiert une action de connexion initiale

Aucune, tout est géré en arriÚre-plan

Partage de session

Possible entre Webviews de la mĂȘme instance

Non applicable


✅ Bonnes pratiques

  • Webviews :

    • Assurez-vous que les cookies de session sont correctement gĂ©rĂ©s et persistants pour maintenir la connexion SSO.

    • Informez les utilisateurs que la session peut expirer et qu'une reconnexion pourrait ĂȘtre nĂ©cessaire.​

  • MicroApps :

    • Utilisez des tokens d'accĂšs avec des durĂ©es de vie appropriĂ©es pour Ă©quilibrer sĂ©curitĂ© et performance.

    • ImplĂ©mentez des mĂ©canismes de rafraĂźchissement des tokens si nĂ©cessaire.​


En comprenant les différences entre les Webviews et les MicroApps en matiÚre de SSO, vous pouvez choisir la solution la plus adaptée à vos besoins, tout en garantissant une expérience utilisateur fluide et sécurisée.


Ressources utiles :

Avez-vous trouvé la réponse à votre question ?