Class ViewRejectionHandler

java.lang.Object
br.com.vantroba.bi.transporte.seguranca.ViewRejectionHandler
All Implemented Interfaces:
io.micronaut.http.server.exceptions.ExceptionHandler<io.micronaut.security.authentication.AuthorizationException, io.micronaut.http.MutableHttpResponse<?>>

@Produces @Singleton @Replaces(io.micronaut.security.authentication.DefaultAuthorizationExceptionHandler.class) public class ViewRejectionHandler extends Object implements io.micronaut.http.server.exceptions.ExceptionHandler<io.micronaut.security.authentication.AuthorizationException, io.micronaut.http.MutableHttpResponse<?>>
Tradução das rejeições do micronaut-security (5.x lança AuthorizationException) preservando o comportamento do antigo AuthFilter:
  • autenticado sem permissão (AuthorizationException.isForbidden()) → 403;
  • view anônima, browser (Accept: text/html) → 302 /login?from=…;
  • view anônima, script (JSON) → 401;
  • view em fail-closed (prod sem envs de auth) → 503;
  • path whitelisted (ex.: /api sem Bearer) → 401.

@Replaces o DefaultAuthorizationExceptionHandler do framework.

  • Constructor Summary

    Constructors
    Constructor
    Description
    ViewRejectionHandler(br.com.xadm.comum.seguranca.AuthSettings settings, io.micronaut.context.env.Environment environment)
    Cria o handler, pré-computando se o ambiente está em fail-closed.
  • Method Summary

    Modifier and Type
    Method
    Description
    io.micronaut.http.MutableHttpResponse<?>
    handle(io.micronaut.http.HttpRequest request, io.micronaut.security.authentication.AuthorizationException exception)
     

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ViewRejectionHandler

      public ViewRejectionHandler(br.com.xadm.comum.seguranca.AuthSettings settings, io.micronaut.context.env.Environment environment)
      Cria o handler, pré-computando se o ambiente está em fail-closed.
      Parameters:
      settings - configurações de auth.
      environment - ambiente Micronaut.
  • Method Details

    • handle

      public io.micronaut.http.MutableHttpResponse<?> handle(io.micronaut.http.HttpRequest request, io.micronaut.security.authentication.AuthorizationException exception)
      Specified by:
      handle in interface io.micronaut.http.server.exceptions.ExceptionHandler<io.micronaut.security.authentication.AuthorizationException, io.micronaut.http.MutableHttpResponse<?>>