Package io.helidon.microprofile.security
Class SecurityFilter
java.lang.Object
io.helidon.microprofile.security.SecurityFilter
- All Implemented Interfaces:
ContainerRequestFilter,ContainerResponseFilter
@Priority(1000)
@ConstrainedTo(SERVER)
public class SecurityFilter
extends Object
implements ContainerRequestFilter, ContainerResponseFilter
A filter that handles authentication and authorization.
-
Constructor Summary
ConstructorsConstructorDescriptionSecurityFilter(Security security, FeatureConfig featureConfig, SecurityContext securityContext) Constructor to be used by Jersey when creating an instance, injects all parameters. -
Method Summary
Modifier and TypeMethodDescriptionprotected voidabortRequest(SecurityFilterContext context, SecurityResponse response, int defaultStatusCode, Map<String, List<String>> defaultHeaders) protected voidauthenticate(SecurityFilterContext context, SecurityContext securityContext, AtnTracing atnTracing) protected voidauthorize(SecurityFilterContext context, SecurityContext securityContext, AtzTracing atzTracing) protected SecurityFilterContextconfigureContext(SecurityFilterContext context, ContainerRequestContext requestContext, UriInfo uriInfo) protected voiddoFilter(ContainerRequestContext request, SecurityContext securityContext) protected FeatureConfigvoidfilter(ContainerRequestContext request) voidfilter(ContainerRequestContext requestContext, ContainerResponseContext responseContext) protected SecurityFilterContextinitRequestFiltering(ContainerRequestContext requestContext) protected System.Loggerlogger()voidA life-cycle method invoked by Jersey that finished initialization of the filter.protected voidprocessAuthentication(SecurityFilterContext context, SecurityClientBuilder<AuthenticationResponse> clientBuilder, io.helidon.microprofile.security.SecurityDefinition methodSecurity, AtnTracing atnTracing) protected voidprocessAuthorization(SecurityFilterContext context, SecurityClientBuilder<AuthorizationResponse> clientBuilder) protected voidprocessSecurity(ContainerRequestContext request, SecurityFilterContext filterContext, SecurityTracing tracing, SecurityContext securityContext) protected Securitysecurity()protected voidupdateHeaders(Map<String, List<String>> responseHeaders, Response.ResponseBuilder responseBuilder)
-
Constructor Details
-
SecurityFilter
public SecurityFilter(@Context Security security, @Context FeatureConfig featureConfig, @Context SecurityContext securityContext) Constructor to be used by Jersey when creating an instance, injects all parameters.- Parameters:
security- security instancefeatureConfig- feature configsecurityContext- security context
-
-
Method Details
-
postConstruct
@PostConstruct public void postConstruct()A life-cycle method invoked by Jersey that finished initialization of the filter. -
filter
- Specified by:
filterin interfaceContainerRequestFilter
-
processSecurity
protected void processSecurity(ContainerRequestContext request, SecurityFilterContext filterContext, SecurityTracing tracing, SecurityContext securityContext) -
filter
public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext) - Specified by:
filterin interfaceContainerResponseFilter
-
initRequestFiltering
-
logger
-
doFilter
-
authenticate
protected void authenticate(SecurityFilterContext context, SecurityContext securityContext, AtnTracing atnTracing) -
processAuthentication
protected void processAuthentication(SecurityFilterContext context, SecurityClientBuilder<AuthenticationResponse> clientBuilder, io.helidon.microprofile.security.SecurityDefinition methodSecurity, AtnTracing atnTracing) -
authorize
protected void authorize(SecurityFilterContext context, SecurityContext securityContext, AtzTracing atzTracing) -
processAuthorization
protected void processAuthorization(SecurityFilterContext context, SecurityClientBuilder<AuthorizationResponse> clientBuilder) -
abortRequest
protected void abortRequest(SecurityFilterContext context, SecurityResponse response, int defaultStatusCode, Map<String, List<String>> defaultHeaders) -
updateHeaders
protected void updateHeaders(Map<String, List<String>> responseHeaders, Response.ResponseBuilder responseBuilder) -
configureContext
protected SecurityFilterContext configureContext(SecurityFilterContext context, ContainerRequestContext requestContext, UriInfo uriInfo) -
security
-
featureConfig
-