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.ExecutorChannelInterceptorCreates a
ExecutorChannelInterceptorthat will obtain theAuthenticationfrom the specifiedMessage.getHeaders().- Since:
- 4.0
-
-
Constructor Summary
Constructors Constructor Description SecurityContextChannelInterceptor()Creates a new instance using the header of the nameSimpMessageHeaderAccessor.USER_HEADER.SecurityContextChannelInterceptor(java.lang.String authenticationHeaderName)Creates a new instance that uses the specified header to obtain theAuthentication.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidafterMessageHandled(org.springframework.messaging.Message<?> message, org.springframework.messaging.MessageChannel channel, org.springframework.messaging.MessageHandler handler, java.lang.Exception ex)voidafterSendCompletion(org.springframework.messaging.Message<?> message, org.springframework.messaging.MessageChannel channel, boolean sent, java.lang.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.voidsetSecurityContextHolderStrategy(SecurityContextHolderStrategy strategy)-
Methods inherited from class org.springframework.messaging.support.ChannelInterceptorAdapter
afterReceiveCompletion, postReceive, postSend, preReceive
-
-
-
-
Constructor Detail
-
SecurityContextChannelInterceptor
public SecurityContextChannelInterceptor()
Creates a new instance using the header of the nameSimpMessageHeaderAccessor.USER_HEADER.
-
SecurityContextChannelInterceptor
public SecurityContextChannelInterceptor(java.lang.String authenticationHeaderName)
Creates a new instance that uses the specified header to obtain theAuthentication.- Parameters:
authenticationHeaderName- the header name to obtain theAuthentication. Cannot be null.
-
-
Method Detail
-
setAnonymousAuthentication
public void setAnonymousAuthentication(Authentication authentication)
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, java.lang.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, java.lang.Exception ex)- Specified by:
afterMessageHandledin interfaceorg.springframework.messaging.support.ExecutorChannelInterceptor
-
setSecurityContextHolderStrategy
public void setSecurityContextHolderStrategy(SecurityContextHolderStrategy strategy)
-
-