Class SecurityContextChannelInterceptor
java.lang.Object
org.springframework.messaging.support.ChannelInterceptorAdapter
org.springframework.security.messaging.context.SecurityContextChannelInterceptor
- All Implemented Interfaces:
org.springframework.messaging.support.ChannelInterceptor,org.springframework.messaging.support.ExecutorChannelInterceptor
public final class SecurityContextChannelInterceptor
extends org.springframework.messaging.support.ChannelInterceptorAdapter
implements org.springframework.messaging.support.ExecutorChannelInterceptor
Creates a ExecutorChannelInterceptor that will obtain the
Authentication from the specified Message.getHeaders().
- Since:
- 4.0
-
Constructor Summary
ConstructorsConstructorDescriptionCreates a new instance using the header of the nameSimpMessageHeaderAccessor.USER_HEADER.SecurityContextChannelInterceptor(String authenticationHeaderName) Creates a new instance that uses the specified header to obtain theAuthentication. -
Method Summary
Modifier and TypeMethodDescriptionvoidafterMessageHandled(org.springframework.messaging.Message<?> message, org.springframework.messaging.MessageChannel channel, org.springframework.messaging.MessageHandler handler, Exception ex) voidafterSendCompletion(org.springframework.messaging.Message<?> message, org.springframework.messaging.MessageChannel channel, boolean sent, Exception ex) org.springframework.messaging.Message<?>beforeHandle(org.springframework.messaging.Message<?> message, org.springframework.messaging.MessageChannel channel, org.springframework.messaging.MessageHandler handler) org.springframework.messaging.Message<?>preSend(org.springframework.messaging.Message<?> message, org.springframework.messaging.MessageChannel channel) voidsetAnonymousAuthentication(Authentication authentication) Allows setting the Authentication used for anonymous authentication.voidMethods inherited from class org.springframework.messaging.support.ChannelInterceptorAdapter
afterReceiveCompletion, postReceive, postSend, preReceiveMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.springframework.messaging.support.ChannelInterceptor
afterReceiveCompletion, postReceive, postSend, preReceive
-
Constructor Details
-
SecurityContextChannelInterceptor
public SecurityContextChannelInterceptor()Creates a new instance using the header of the nameSimpMessageHeaderAccessor.USER_HEADER. -
SecurityContextChannelInterceptor
Creates a new instance that uses the specified header to obtain theAuthentication.- Parameters:
authenticationHeaderName- the header name to obtain theAuthentication. Cannot be null.
-
-
Method Details
-
setAnonymousAuthentication
Allows setting the Authentication used for anonymous authentication. Default is:new AnonymousAuthenticationToken("key", "anonymous", AuthorityUtils.createAuthorityList("ROLE_ANONYMOUS"));- Parameters:
authentication- the Authentication used for anonymous authentication. Cannot be null.
-
preSend
public org.springframework.messaging.Message<?> preSend(org.springframework.messaging.Message<?> message, org.springframework.messaging.MessageChannel channel) - Specified by:
preSendin interfaceorg.springframework.messaging.support.ChannelInterceptor- Overrides:
preSendin classorg.springframework.messaging.support.ChannelInterceptorAdapter
-
afterSendCompletion
public void afterSendCompletion(org.springframework.messaging.Message<?> message, org.springframework.messaging.MessageChannel channel, boolean sent, Exception ex) - Specified by:
afterSendCompletionin interfaceorg.springframework.messaging.support.ChannelInterceptor- Overrides:
afterSendCompletionin classorg.springframework.messaging.support.ChannelInterceptorAdapter
-
beforeHandle
public org.springframework.messaging.Message<?> beforeHandle(org.springframework.messaging.Message<?> message, org.springframework.messaging.MessageChannel channel, org.springframework.messaging.MessageHandler handler) - Specified by:
beforeHandlein interfaceorg.springframework.messaging.support.ExecutorChannelInterceptor
-
afterMessageHandled
public void afterMessageHandled(org.springframework.messaging.Message<?> message, org.springframework.messaging.MessageChannel channel, org.springframework.messaging.MessageHandler handler, Exception ex) - Specified by:
afterMessageHandledin interfaceorg.springframework.messaging.support.ExecutorChannelInterceptor
-
setSecurityContextHolderStrategy
-