J'utilise Spring Security 3.0.4. J'ai un tas de service Web qui sont protégés par Spring Security. Lorsque je les accède en tant qu'utilisateur non authentifié, Spring Security redirige vers la page de connexion. Au lieu de cela, je veux retourner l'erreur HTTP 403. Comment puis-je y parvenir?Sécurité de printemps - besoin d'erreur 403, pas de redirection
Voici ma config de sécurité:
<http auto-config="false" use-expressions="true" >
<intercept-url pattern="/authorization.jsp" access="permitAll"/>
<intercept-url pattern="/registration.jsp" access="permitAll"/>
<intercept-url pattern="/api/authorization/auth" access="permitAll"/>
<intercept-url pattern="/api/authorization/new" access="permitAll"/>
<intercept-url pattern="/api/accounts/new" access="permitAll"/>
<intercept-url pattern="/app/**" access="permitAll"/>
<intercept-url pattern="/extjs/**" access="permitAll"/>
<intercept-url pattern="/**" access="hasRole('ROLE_USER')" />
<form-login login-page="/authorization.jsp"
default-target-url="/index.jsp"
authentication-failure-url="/registration.jsp?login_error=1"
always-use-default-target="true"
/>
<logout logout-success-url="/authorization.jsp"
logout-url="/j_spring_security_logout"
invalidate-session="true"/>
</http>
Avez-vous essayé de supprimer le paramètre "authentication-failure-url" de votre formulaire de connexion? – Gandalf
Avez-vous trouvé une solution de travail? J'ai entendu dire que le moyen d'y parvenir est de remplacer "certains filtres de Spring", mais sans exemple, et je pense qu'il devrait être possible de configurer, par exemple. Application AJAX aime faire la journalisation personnalisée sur le canal JSON et les canaux JSON pour les données sont censés réagir avec 403 sur aucun droit de service. –
Connexes: http://stackoverflow.com/questions/3339431/how-to-handle-expired-session-using-spring-security-and-jquery – usethe4ce