Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parWaltier Leclercq Modifié depuis plus de 10 années
1
Université Nancy 2 - CRI Propositions de mécanisme de SSO dans un environnement d’applications web
2
Préalable Pas une solution, mais une réflexion
Simpliste, démarche générale Pas mis en oeuvre Inspiré de mécanismes existants 04/12/ Proposition d'un mécanisme de SSO
3
Plan Etat des lieux Pré-requis Propositions (3 scénarios)
Existant Besoins Pré-requis Propositions (3 scénarios) Extensions souhaitables Démo 04/12/ Proposition d'un mécanisme de SSO
4
Etat des lieux Situation actuelle
Existant : Un compte unique pour un utilisateur Ré-authentifications successives Limites Sécurité du mot de passe -> https? Traçabilité Evolutions difficiles (certificats de personnes, …) 04/12/ Proposition d'un mécanisme de SSO
5
Eviter les ré-authentifications
Etat des lieux Besoins Eviter les ré-authentifications Indépendance des applis par rapport aux mécanismes d’authentification Délégation d’authentification 04/12/ Proposition d'un mécanisme de SSO
6
Contraintes Compatibilité avec navigateurs standards
Sécurisation des échanges de mot de passe Indépendance pas rapport aux mécanismes internes d’authentification Extension à un mécanisme inter-établissement 04/12/ Proposition d'un mécanisme de SSO
7
Propositions Points communs aux 3 scénarios proposés
Scénario 1 : communication directe appli – serveur d’authentification Scénario 2 : le navigateur web sert de transport à la communication Scénario 3 : amélioration du scénario 2 Passage du mot de passe aux applications 04/12/ Proposition d'un mécanisme de SSO
8
Points communs aux propositions
Un serveur Web dédié à l’authentification : SAW (Service d’Authentification Web) Un ticket d’authentification : JAA (Jeton d’Authentification Applicatif) Une session SAW portée par le JAG (Jeton d’Authentification Global) Le JAG est porté par un cookie Sessions applicatives 04/12/ Proposition d'un mécanisme de SSO
9
SAW : Service d’Authentif. Web
Un serveur web dédié, accessible en https Lui seul fait appel au(x) mécanisme(s) d’authentification de l’Université (proxy) Génère le JAA pour les applis Gère des sessions pour éviter ré-authentifications Dispose d’un couple clé privée/clé publique 04/12/ Proposition d'un mécanisme de SSO
10
JAA (Jeton d’Authent. Applis)
Authentifie une personne Spécifique à une appli, et limité en temps (quelques secondes) Contient différentes informations : l’uid, l’ID d’appli, un timestamp (validité du JAA), l’IP du client, le type d’authentif, la base utilisée, .. Le JAA est signé avec la clé privée du SAW 04/12/ Proposition d'un mécanisme de SSO
11
JAG : ID de session SAW SAW doit gérer une session (mémoriser infos sur users préalablement authentifiés) Infos à conserver : l’uid, l’IP du client, un timestamp (validité de la session SAW), le type d’authentif, l’ID d’appli, la base utilisée, .. Durée de session et reconduction Id de session SAW (JAG) porté par cookie 04/12/ Proposition d'un mécanisme de SSO
12
Problèmes à résoudre Communication applis – SAW
Protection du mot de passe Comment transporter le JAG Sécurité, et vol possible du JAA ou JAG 04/12/ Proposition d'un mécanisme de SSO
13
Scénario 1 Communication directe appli – SAW
Utilisation de ‘services web’? Le client Web n’a pas de communication directe avec le SAW JAG signé avec clé privée du SAW 04/12/ Proposition d'un mécanisme de SSO
14
Scénario 1: dialogue appli - SAW
Jeton d’Authentif. D’Appli (JAA) et Jeton Global (JAG) passés en service web Envoi Login / mot de passe authentification Service d’Authentification Web Saisie Login / mot de passe Premier accès Pas de JAG Page Web en retour Et JAG en cookie Contrôle JAG Jeton d’Authentif. D’Appli (JAA) retourné en service web Base d’authentification Appli 1 Intérêts : Authentification externalisée Pas de rebonds du client Web SAW ne communique qu’avec des applis et non des clients Web Inconvénients : Piratage du JAG Cookie nécessaire Login/password géré par les applis Password pas nécessairement protégé en https Navigateur Web Page Web en retour Accès vers autre appli JAG présent Appli 2
15
Impossibilité du scénario 1
JAG peut être volé très facilement Saisie login/mot de passe à charge de l’appli 04/12/ Proposition d'un mécanisme de SSO
16
Scénario 2 : redirections http
Pas de communication directe appli – SAW Rebonds http (GET - POST ?) Interactions avec le client Web et SAW JAG est un cookie privé de SAW en https 04/12/ Proposition d'un mécanisme de SSO
17
Scénario 2 : redirections http
authentification Service d’Authentification Web Premier accès : Pas de session interne Redirection vers l’appli Avec le JAA Page web En retour Base d’authentification Appli 1 Jeton d’Authentif. D’appli (JAA) Passé en formulaire Redirection Post ou GET Passage de paramètres Pas de JAG Jeton d’Authentif. D’appli (JAA) Passé en champ de formulaire Jeton D’Authentif Global (JAG) Passé en cookie privé Redirection Post ou Get Passage de paramètres JAG présent Saisie Login/mot de passe Intérêts : Authentification externalisée Simple Password protégé en https Login/password non géré par appli Protection du JAG Inconvénients : Multiples redirections Cookies / javascript nécessaire Navigateur Web Redirection vers l’appli Avec le JAA Accès vers autre appli Page web En retour Appli 2
18
Scénario 3 : JAA non renouvelable
Proche du scénario 2 JAA non rejouable Communication directe Appli -> SAW après réception du JAA Permet la récupération d’infos annexes Apporte de la sécurité 04/12/ Proposition d'un mécanisme de SSO
19
Scénario 3 : JAA non renouvelable
Service Web d’Authentification Base d’authentification Intérêts : Mêmes que précédemment JAA ne porte pas d’info Meilleure sécurité Protocole de transport d’infos Inconvénients : Plus complexe Appli 1 Passage du JAA Redirection Post ou Get Passage de paramètres JAG présent Demande de paramètres et de validation du JAA (SAML?) JAA validé Et paramètres transmis (SAML?) Navigateur Web Accès vers autre appli Redirection vers l’appli Avec le JAA Page Web en retour Appli 2
20
Extensions possibles A-t-on besoin du mot de passe?
Traiter l’Autorisation (droits des applis) Quelles infos nécessaires pour l’Autorisation ? Autres infos utiles aux applis Restrictions d’accès par le serveur http Aspects inter-établissement Groupe de travail à venir 04/12/ Proposition d'un mécanisme de SSO
21
Conclusion Demo : http://cridev.univ-nancy2.fr:7999/PORTAIL/
Voir les implémentations existantes Faire quelque chose de souple, évolutif Proposer un mécanisme général et des modules clients 04/12/ Proposition d'un mécanisme de SSO
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.