クラス AbstractAuthenticationWebSocketInterceptor
java.lang.ObjectSE
org.springframework.graphql.server.support.AbstractAuthenticationWebSocketInterceptor
- 実装済みのインターフェース一覧:
WebGraphQlInterceptor,WebSocketGraphQlInterceptor
public abstract class AbstractAuthenticationWebSocketInterceptor
extends ObjectSE
implements WebSocketGraphQlInterceptor
"connection_init" GraphQL over WebSocket メッセージのペイロードから Authentication を抽出するインターセプターの基本クラス。認証は WebSocket 属性に保存され、後でそこからアクセスされて後続の "subscribe" メッセージに伝播されます。- 導入:
- 1.3.0
- 作成者:
- Joshua Cummings, Rossen Stoyanchev
ネストされたクラスの概要
インターフェース org.springframework.graphql.server.WebGraphQlInterceptor から継承されたネストクラス / インターフェース
WebGraphQlInterceptor.Chainコンストラクター概要
コンストラクターコンストラクター説明"connection_init"メッセージから認証値を抽出するために使用する戦略を持つコンストラクター。方法の概要
修飾子と型メソッド説明protected abstract reactor.core.publisher.Mono<org.springframework.security.core.Authentication> authenticate(org.springframework.security.core.Authentication authentication) サブクラスはこのメソッドを実装して、認証されたSecurityContextまたはエラーを返します。protected abstract reactor.util.context.ContextViewgetContextToWrite(org.springframework.security.core.context.SecurityContext securityContext) サブクラスはこれを実装して、SecurityContextをWebSocketGraphQlInterceptorチェーンの Reactor コンテキストに挿入する方法を決定します。reactor.core.publisher.Mono<ObjectSE> handleConnectionInitialization(WebSocketSessionInfo info, MapSE<StringSE, ObjectSE> payload) GraphQL over WebSocket セッションの開始時に"connection_init"メッセージを処理し、"connection_ack"メッセージが送り返すオプションのペイロードを返します。reactor.core.publisher.Mono<WebGraphQlResponse> intercept(WebGraphQlRequest request, WebGraphQlInterceptor.Chain chain) リクエストをインターセプトし、他のインターセプターとExecutionGraphQlServiceを含む残りの チェーンに委譲します。クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSEインターフェース org.springframework.graphql.server.WebGraphQlInterceptor から継承されたメソッド
andThen, applyインターフェース org.springframework.graphql.server.WebSocketGraphQlInterceptor から継承されたメソッド
handleCancelledSubscription, handleConnectionClosed
コンストラクターの詳細
AbstractAuthenticationWebSocketInterceptor
"connection_init"メッセージから認証値を抽出するために使用する戦略を持つコンストラクター。- パラメーター:
authExtractor- 使用する抽出プログラム
方法の詳細
handleConnectionInitialization
public reactor.core.publisher.Mono<ObjectSE> handleConnectionInitialization(WebSocketSessionInfo info, MapSE<StringSE, ObjectSE> payload) インターフェースからコピーされた説明:WebSocketGraphQlInterceptorGraphQL 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がコンテキストに書き込む