CAS De nos jours, la plupart des SSO adoptent la solution CAS. Vous pouvez la rechercher.
Organigramme SSO SSO est implémenté à l'aide de cookie. Pour faire simple, après la connexion, les informations d'authentification sont stockées dans cookie. Lorsqu'il y a une demande app, vous pouvez d'abord vérifier si vous êtes connecté dans votre propre application. S'il n'est pas connecté, il passera au système d'authentification. À ce moment, le système d'authentification détecte cookie les informations de connexion, il reviendra au système demandeur.
Merci à @kevinz pour les conseils, j'utilise désormais cette méthode :
Chaque application utilise Tomcat JDBCRealm pour l'authentification (Authentification), mais utilise Spring Security pour l'autorisation. Les deux sont basés sur la même base de données d’informations utilisateur.
Activez le SSO dans Tomcat -- c'est très important, sinon lors de l'accès à d'autres applications Web du même domaine, les cookies ne seront pas apportés et l'authentification ne sera pas possible
Dans chaque application Web, configurez Web.xml pour utiliser Tomcat pour l'authentification -- si Spring est utilisé pour l'authentification, le SSO de Tomcat ne fonctionnera pas
Dans chaque webapp, configurez Spring et utilisez J2eePreAuthenticatedProcessingFilter pour le contrôle des autorisations (Autorisation)
CAS De nos jours, la plupart des SSO adoptent la solution CAS. Vous pouvez la rechercher.
Organigramme SSO
SSO est implémenté à l'aide de
cookie
. Pour faire simple, après la connexion, les informations d'authentification sont stockées danscookie
. Lorsqu'il y a une demandeapp
, vous pouvez d'abord vérifier si vous êtes connecté dans votre propre application. S'il n'est pas connecté, il passera au système d'authentification. À ce moment, le système d'authentification détectecookie
les informations de connexion, il reviendra au système demandeur.Merci à @kevinz pour les conseils, j'utilise désormais cette méthode :
Chaque application utilise Tomcat JDBCRealm pour l'authentification (Authentification), mais utilise Spring Security pour l'autorisation. Les deux sont basés sur la même base de données d’informations utilisateur.
Activez le SSO dans Tomcat -- c'est très important, sinon lors de l'accès à d'autres applications Web du même domaine, les cookies ne seront pas apportés et l'authentification ne sera pas possible
Dans chaque application Web, configurez Web.xml pour utiliser Tomcat pour l'authentification -- si Spring est utilisé pour l'authentification, le SSO de Tomcat ne fonctionnera pas
Dans chaque webapp, configurez Spring et utilisez J2eePreAuthenticatedProcessingFilter pour le contrôle des autorisations (Autorisation)
Configuration dans spring.xml