Class GrpcSecurityInterceptor

java.lang.Object
io.quarkus.grpc.auth.GrpcSecurityInterceptor
All Implemented Interfaces:
io.grpc.ServerInterceptor, jakarta.enterprise.inject.spi.Prioritized

@Singleton public final class GrpcSecurityInterceptor extends Object implements io.grpc.ServerInterceptor, jakarta.enterprise.inject.spi.Prioritized
Security interceptor invoking GrpcSecurityMechanism implementations
  • Constructor Summary

    Constructors
    Constructor
    Description
    GrpcSecurityInterceptor(io.quarkus.security.identity.CurrentIdentityAssociation identityAssociation, io.quarkus.security.identity.IdentityProviderManager identityProviderManager, jakarta.enterprise.inject.Instance<GrpcSecurityMechanism> securityMechanisms, jakarta.enterprise.inject.Instance<AuthExceptionHandlerProvider> exceptionHandlers, boolean usingSeparateGrpcServer, boolean securityEventsEnabled, jakarta.enterprise.inject.spi.BeanManager beanManager, jakarta.enterprise.event.Event<io.quarkus.security.spi.runtime.AuthenticationFailureEvent> authFailureEvent, jakarta.enterprise.event.Event<io.quarkus.security.spi.runtime.AuthenticationSuccessEvent> authSuccessEvent)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    int
     
    (package private) void
    init(Map<String,List<String>> serviceToBlockingMethods)
     
    <ReqT, RespT>
    io.grpc.ServerCall.Listener<ReqT>
    interceptCall(io.grpc.ServerCall<ReqT,RespT> serverCall, io.grpc.Metadata metadata, io.grpc.ServerCallHandler<ReqT,RespT> serverCallHandler)
     
    static void
    propagateSecurityIdentityWithDuplicatedCtx(io.vertx.ext.web.RoutingContext event)
     

    Methods inherited from class java.lang.Object

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

    • GrpcSecurityInterceptor

      @Inject public GrpcSecurityInterceptor(io.quarkus.security.identity.CurrentIdentityAssociation identityAssociation, io.quarkus.security.identity.IdentityProviderManager identityProviderManager, jakarta.enterprise.inject.Instance<GrpcSecurityMechanism> securityMechanisms, jakarta.enterprise.inject.Instance<AuthExceptionHandlerProvider> exceptionHandlers, boolean usingSeparateGrpcServer, boolean securityEventsEnabled, jakarta.enterprise.inject.spi.BeanManager beanManager, jakarta.enterprise.event.Event<io.quarkus.security.spi.runtime.AuthenticationFailureEvent> authFailureEvent, jakarta.enterprise.event.Event<io.quarkus.security.spi.runtime.AuthenticationSuccessEvent> authSuccessEvent)
  • Method Details

    • interceptCall

      public <ReqT, RespT> io.grpc.ServerCall.Listener<ReqT> interceptCall(io.grpc.ServerCall<ReqT,RespT> serverCall, io.grpc.Metadata metadata, io.grpc.ServerCallHandler<ReqT,RespT> serverCallHandler)
      Specified by:
      interceptCall in interface io.grpc.ServerInterceptor
    • getPriority

      public int getPriority()
      Specified by:
      getPriority in interface jakarta.enterprise.inject.spi.Prioritized
    • init

      void init(Map<String,List<String>> serviceToBlockingMethods)
    • propagateSecurityIdentityWithDuplicatedCtx

      public static void propagateSecurityIdentityWithDuplicatedCtx(io.vertx.ext.web.RoutingContext event)