2013-06-24 19 views
5

Ich habe Rest Unterstützung auf meiner Spring MVC-Anwendung aktiviert mit AuthenticationEntryPoint auf meinem sicherheits context.xml alsSpring Security Authentication Einspeisepunkt

<http auto-config="false" use-expressions="true" 
      disable-url-rewriting="true" entry-point-ref="restAuthenticationEntryPoint"> 

Die RestAuthenticationEntryPoint.java up Einstellung

@Component 
public final class RestAuthenticationEntryPoint implements AuthenticationEntryPoint { 

    @Override 
    public void commence(final HttpServletRequest request, final HttpServletResponse response, final AuthenticationException authException) throws IOException { 
     response.sendError(HttpServletResponse.SC_UNAUTHORIZED, "Unauthorized"); 
    } 

} 

Wann immer ein Benutzer versucht, auf Ressourcen zuzugreifen, ohne es zu authentifizieren, wird den folgenden Fehler geben:

HTTP Status 401 - Unauthorized 

Das obige Verhalten ist nur für Rest-Dienste korrekt. Allerdings möchte ich das Standardverhalten haben, das den Benutzer zur Anmeldeseite für normale Web-Anfragen umleitet, wenn der Benutzer nicht authentifiziert wurde. Wie erreiche ich das?

+0

ich denke, das Link helfen kann [Handle nicht autorisierte Fehlermeldung für Standardauthentifizierung in Spring Security] (http://stackoverflow.com/questions/4397062/handle-unauthorized- Fehlermeldung-für-Basis-Authentifizierung-im-Frühling-Sicherheit) –

+0

Siehe auch: http://StackOverflow.com/Questions/23739746/Howto-configure-Spring-Security-To-Reurn-403-for-Rest- URLs-und-Redirect-zu-Logi – yankee

Antwort

Verwandte Themen