Class SecurityTracing
- java.lang.Object
- 
- io.helidon.security.integration.common.SecurityTracing
 
- 
 public final class SecurityTracing extends Object Security integration utility for tracing support in integration components.
- 
- 
Method SummaryAll Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description AtnTracingatnTracing()Create a tracing span for authentication.AtzTracingatzTracing()Create a tracing span for authorization.voiderror(String message)Log error and finish the span.voiderror(Throwable throwable)Log error and finish the span.Optional<SpanContext>findParent()Find closes parent span context.voidfinish()Finish the span.static SecurityTracingget()Get an instance from the currentContextor create a new instance and start the security span.voidlogDeny()Log security status - deny.voidlogProceed()Log security status - proceed.voidlogStatus(SecurityResponse.SecurityStatus status)Log response status.OutboundTracingoutboundTracing()Create a tracing span for outbound tracing.ResponseTracingresponseTracing()Create a tracing span for response.RoleMapTracingroleMapTracing(String id)Create a tracing pan for a role mapper.voidsecurityContext(SecurityContext context)Update security span with information fromSecurityContext.protected SpanTracingConfigspanConfig()
 
- 
- 
- 
Method Detail- 
getpublic static SecurityTracing get() Get an instance from the currentContextor create a new instance and start the security span.- Returns:
- existing or a new tracing instance to be used for tracing security events
 
 - 
securityContextpublic void securityContext(SecurityContext context) Update security span with information fromSecurityContext. The context is expected to be unauthenticated and unauthorized. This method should be called as soon as possible to provide correlation to log statements.- Parameters:
- context- security context for this request
 
 - 
logProceedpublic void logProceed() Log security status - proceed. This should be logged when security allows further processing of the request.
 - 
logDenypublic void logDeny() Log security status - deny. This should be logged when security denies further processing of the request.
 - 
atnTracingpublic AtnTracing atnTracing() Create a tracing span for authentication.- Returns:
- authentication tracing
 
 - 
roleMapTracingpublic RoleMapTracing roleMapTracing(String id) Create a tracing pan for a role mapper.- Parameters:
- id- role mapper identification (such as- idcs)
- Returns:
- role mapper tracing (each invocation creates a new instance)
 
 - 
atzTracingpublic AtzTracing atzTracing() Create a tracing span for authorization.- Returns:
- authorization tracing
 
 - 
outboundTracingpublic OutboundTracing outboundTracing() Create a tracing span for outbound tracing. Each invocation of this method returns a new tracing instance (to support multiple outbound calls).- Returns:
- outbound security tracing
 
 - 
responseTracingpublic ResponseTracing responseTracing() Create a tracing span for response.- Returns:
- response security tracing
 
 - 
finishpublic void finish() Finish the span.
 - 
errorpublic void error(String message) Log error and finish the span.- Parameters:
- message- log this message as the cause of failure
 
 - 
errorpublic void error(Throwable throwable) Log error and finish the span.- Parameters:
- throwable- throwable causing security to fail
 
 - 
findParentpublic Optional<SpanContext> findParent() Find closes parent span context.- Returns:
- span context if found
 
 - 
logStatuspublic void logStatus(SecurityResponse.SecurityStatus status) Log response status. This is to be used by authorization, authentication and outbound security. Top level security only traces proceed or deny.- Parameters:
- status- status to log
 
 - 
spanConfigprotected SpanTracingConfig spanConfig() 
 
- 
 
-