Package io.hawt.web.auth
Class ClientRouteRedirectFilter
java.lang.Object
io.hawt.web.auth.ClientRouteRedirectFilter
- All Implemented Interfaces:
jakarta.servlet.Filter
A filter that handles client-side routing URLs and redirects to login page depending on authentication state. There are two kinds of URLs handled:
- URLs that correspond to Hawtio resources and servlets
- URLs that correspond to Hawtio-React client routes (which would give HTTP/404 when handled)
Special client route is /login, which should be handled carefuly and in some cases user may get
redirected to this URL for smoother client experience (no React app blinking).
This filter should be called after AuthenticationFilter, but for requests not handled by that
filter, we may perform pre-emptive authentication.
This filter used to be called LoginRedirectFilter, but it's doing a bit more now to provide unified
experience between WAR, Spring Boot and Quarkus deployments.
Even in Spring Boot, this filter is called before DispatcherServlet, so it's invoked before
any @RequestMapping methods.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoiddoFilter(jakarta.servlet.ServletRequest request, jakarta.servlet.ServletResponse response, jakarta.servlet.FilterChain chain) voidinit(jakarta.servlet.FilterConfig filterConfig) voidsetRedirector(Redirector redirector) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface jakarta.servlet.Filter
destroy
-
Field Details
-
ATTRIBUTE_UNSECURED_PATHS
- See Also:
-
-
Constructor Details
-
ClientRouteRedirectFilter
public ClientRouteRedirectFilter() -
ClientRouteRedirectFilter
-
-
Method Details
-
init
public void init(jakarta.servlet.FilterConfig filterConfig) throws jakarta.servlet.ServletException - Specified by:
initin interfacejakarta.servlet.Filter- Throws:
jakarta.servlet.ServletException
-
doFilter
public void doFilter(jakarta.servlet.ServletRequest request, jakarta.servlet.ServletResponse response, jakarta.servlet.FilterChain chain) throws IOException, jakarta.servlet.ServletException - Specified by:
doFilterin interfacejakarta.servlet.Filter- Throws:
IOExceptionjakarta.servlet.ServletException
-
setRedirector
-