クラス AbstractAuthenticationWebSocketInterceptor

java.lang.ObjectSE
org.springframework.graphql.server.support.AbstractAuthenticationWebSocketInterceptor
実装済みのインターフェース一覧:
WebGraphQlInterceptor, WebSocketGraphQlInterceptor
既知の直属サブクラス
AuthenticationWebSocketInterceptor, AuthenticationWebSocketInterceptor

public abstract class AbstractAuthenticationWebSocketInterceptor extends ObjectSE implements WebSocketGraphQlInterceptor
"connection_init" GraphQL over WebSocket メッセージのペイロードから Authentication を抽出するインターセプターの基本クラス。認証は WebSocket 属性に保存され、後でそこからアクセスされて後続の "subscribe" メッセージに伝播されます。
導入:
1.3.0
作成者:
Joshua Cummings, Rossen Stoyanchev
  • コンストラクターの詳細

    • AbstractAuthenticationWebSocketInterceptor

      public AbstractAuthenticationWebSocketInterceptor(AuthenticationExtractor authExtractor)
      "connection_init" メッセージから認証値を抽出するために使用する戦略を持つコンストラクター。
      パラメーター:
      authExtractor - 使用する抽出プログラム
  • 方法の詳細

    • handleConnectionInitialization

      public reactor.core.publisher.Mono<ObjectSE> handleConnectionInitialization(WebSocketSessionInfo info, MapSE<StringSE,ObjectSE> payload)
      インターフェースからコピーされた説明: WebSocketGraphQlInterceptor
      GraphQL over WebSocket セッションの開始時に "connection_init" メッセージを処理し、"connection_ack" メッセージが送り返すオプションのペイロードを返します。
      次で指定:
      インターフェース WebSocketGraphQlInterceptor 内の handleConnectionInitialization 
      パラメーター:
      info - 基礎となる WebSocket セッションに関する情報
      payload - "connection_init" メッセージからのペイロード
      戻り値:
      "connection_ack" のペイロード、または空
    • authenticate

      protected abstract reactor.core.publisher.Mono<org.springframework.security.core.Authentication> authenticate(org.springframework.security.core.Authentication authentication)
      サブクラスはこのメソッドを実装して、認証された SecurityContext またはエラーを返します。
      パラメーター:
      authentication - ペイロードから抽出された認証値
    • intercept

      public reactor.core.publisher.Mono<WebGraphQlResponse> intercept(WebGraphQlRequest request, WebGraphQlInterceptor.Chain chain)
      インターフェースからコピーされた説明: WebGraphQlInterceptor
      リクエストをインターセプトし、他のインターセプターと ExecutionGraphQlService を含む残りの チェーンに委譲します。
      次で指定:
      インターフェース WebGraphQlInterceptor 内の intercept 
      次で指定:
      インターフェース WebSocketGraphQlInterceptor 内の intercept 
      パラメーター:
      request - WebSocket を介して GraphQL リクエストをインターセプトするときに WebSocketGraphQlRequest である可能性があるリクエスト
      chain - リクエストを実行する残りの チェーン
      戻り値:
      レスポンスのある Mono 
    • getContextToWrite

      protected abstract reactor.util.context.ContextView getContextToWrite(org.springframework.security.core.context.SecurityContext securityContext)
      サブクラスはこれを実装して、SecurityContext を WebSocketGraphQlInterceptor チェーンの Reactor コンテキストに挿入する方法を決定します。
      パラメーター:
      securityContext - SecurityContext がコンテキストに書き込む