Je suis en train d'utiliser <remember-me/>
authentification Spring Security La ligne dans mon contexte de sécurité ressemble à ceci:simples ressorts <souvenir-moi /> ne fonctionne pas :-(
<security:remember-me key="89dqj219dn910lsAc12" user-service-ref="jpaUserDetailsService"/>
Bien que j'utiliser ma propre mise en œuvre de UserDetailsService
(testé & travail), j'ai également essayé avec la valeur par défaut d'un cours d'exécution dans le même problème, qui est la suivante:
Connexion avec case « se souvenir-moi » est cochée, un cookie est généré comme prévu :
Nom: SPRING_SECURITY_REMEMBER_ME_COOKIE; Valeur: c2FzczoxMjg1NTIxOTI1NzY4OmIxODQ5YTE2ZDY1MDVmZDFhNWRlN2Y2NzFlMzc1MmI0; Hôte: localhost; Chemin:/webapp; Sécurisé: Non; Valable jusqu'au: Sun, 26 septembre 2010 17:25:25 GMT)
Le navigateur redémarré
Le cookie est toujours là
Essayer d'accéder à une page sécurisée se termine par "Accès refusé" erreur:
org.springframework.security.access.AccessDeniedException: L'accès est refusé
objet d'authentification en tant que chaîne: org.springframework.security.authentication.RememberMeAuthenti cationToken @ ffcaab94: Principal: [email protected]: Nom d'utilisateur: nom d'utilisateur; Protégé par mot de passe]; Enabled: true; AccountNonExpired: true; credentialsNonExpired: true; AccountNonLocked: true; Informations personnelles: 32768; ; Diplômes: [PROTÉGÉ]; Authentifié: vrai; Détails: org.sprin[email protected]957e: RemoteIpAddress: 127.0.0.1; SessionId: null; Je ne suis pas autorisé
Je suis confus et je ne sais pas ce qui ne va pas ou par où commencer le débogage. Aidez-moi, s'il vous plaît?
Ahh ... bon conseil! Vous avez raison, j'ai oublié de tester mon implémentation de UserDetailsService.getAuthorities() - voila, c'est en fait * buggé. Merci! –
O ma chérie, je suis désolé. Je me moquais des rôles mais recevais toujours une erreur similaire: "... SessionId: null; Autorisations accordées: ROLE_USER" Pitty. BTW, pourquoi SessionId 'null' de toute façon? –
@erlord: Je ne pense pas que le sessionid soit un problème. Cela ressemble à une 'AccessDeniedException' régulière, peut-être' ROLE_USER' ne suffit pas pour effectuer l'action demandée. – axtavt