クラス WebSocketMessageBrokerSecurityBeanDefinitionParser

java.lang.ObjectSE
org.springframework.security.config.websocket.WebSocketMessageBrokerSecurityBeanDefinitionParser
実装されたすべてのインターフェース:
org.springframework.beans.factory.xml.BeanDefinitionParser

public final class WebSocketMessageBrokerSecurityBeanDefinitionParser extends ObjectSE implements org.springframework.beans.factory.xml.BeanDefinitionParser
Spring Security の WebSocket 名前空間サポートを解析します。簡単な例は次のとおりです。 <websocket-message-broker> <intercept-message pattern='/permitAll' access='permitAll' /> <intercept-message pattern='/denyAll' access='denyAll' /> </websocket-message-broker>

上記の構成により、すべての SimpAnnotationMethodMessageHandler にカスタム引数リゾルバーとして登録された AuthenticationPrincipalArgumentResolver が確実に含まれます。また、SecurityContextChannelInterceptor が clientInboundChannel に自動的に登録されるようにします。最後に、ChannelSecurityInterceptor が clientInboundChannel に登録されていることを確認します。

より細かい制御が必要な場合は、以下に示すように id 属性を使用できます。

<websocket-message-broker id="channelSecurityInterceptor"> <intercept-message pattern='/permitAll' access='permitAll' /> <intercept-message pattern='/denyAll' access='denyAll' /> </websocket-message-broker>

これで、構成は ChannelSecurityInterceptor という名前の Bean のみを作成し、それを channelSecurityInterceptor の ID に割り当てます。ユーザーは、標準の Spring メッセージング XML 名前空間サポートを使用して Spring Security を明示的に接続できます。

導入:
4.0
  • コンストラクターの詳細

    • WebSocketMessageBrokerSecurityBeanDefinitionParser

      public WebSocketMessageBrokerSecurityBeanDefinitionParser()
  • メソッドの詳細

    • parse

      public org.springframework.beans.factory.config.BeanDefinition parse(ElementSE element, org.springframework.beans.factory.xml.ParserContext parserContext)
      次で指定:
      インターフェース org.springframework.beans.factory.xml.BeanDefinitionParserparse 
      パラメーター:
      element -
      parserContext -
      戻り値:
      BeanDefinition