クラス OAuth2AuthorizationCodeGrantWebFilter
java.lang.ObjectSE
org.springframework.security.oauth2.client.web.server.OAuth2AuthorizationCodeGrantWebFilter
- 実装されたすべてのインターフェース:
org.springframework.web.server.WebFilter
public class OAuth2AuthorizationCodeGrantWebFilter
extends ObjectSE
implements org.springframework.web.server.WebFilter
OAuth 2.0 認可コード認可の
Filter
。これは、OAuth 2.0 認可レスポンスの処理を処理します。OAuth 2.0 認可レスポンスは次のように処理されます。
- エンドユーザー(リソース所有者)がクライアントへのアクセスを認可したと仮定すると、認可サーバーは
code
およびstate
パラメーターをredirect_uri
(認可リクエストで提供)に追加し、エンドユーザーのユーザーエージェントをこのFilter
にリダイレクトします(クライアント)。 - この
Filter
は、受け取ったcode
でOAuth2AuthorizationCodeAuthenticationToken
を作成し、それをReactiveAuthenticationManager
に委譲して認証します。 - 認証が成功すると、
client
をaccess token
および現在のPrincipal
に関連付け、ServerOAuth2AuthorizedClientRepository
を介して保存することにより、Authorized Client
が作成されます。
- 導入:
- 5.1
- 関連事項:
OAuth2AuthorizationCodeAuthenticationToken
OAuth2AuthorizationCodeReactiveAuthenticationManager
OAuth2AuthorizationRequest
OAuth2AuthorizationResponse
AuthorizationRequestRepository
OAuth2AuthorizationRequestRedirectWebFilter
ReactiveClientRegistrationRepository
OAuth2AuthorizedClient
ServerOAuth2AuthorizedClientRepository
- セクション 4.1 認可コードの付与
- セクション 4.1.2 認可レスポンス
コンストラクターのサマリー
コンストラクターコンストラクター説明OAuth2AuthorizationCodeGrantWebFilter
(ReactiveAuthenticationManager authenticationManager, ReactiveClientRegistrationRepository clientRegistrationRepository, ServerOAuth2AuthorizedClientRepository authorizedClientRepository) OAuth2AuthorizationCodeGrantWebFilter
(ReactiveAuthenticationManager authenticationManager, ServerAuthenticationConverter authenticationConverter, ServerOAuth2AuthorizedClientRepository authorizedClientRepository) メソッドのサマリー
修飾子と型メソッド説明reactor.core.publisher.Mono<VoidSE>
filter
(org.springframework.web.server.ServerWebExchange exchange, org.springframework.web.server.WebFilterChain chain) final void
setAuthorizationRequestRepository
(ServerAuthorizationRequestRepository<OAuth2AuthorizationRequest> authorizationRequestRepository) OAuth2AuthorizationRequest
の保存に使用されるリポジトリを設定します。final void
setRequestCache
(ServerRequestCache requestCache) 以前に保存されたリクエスト(利用可能な場合)をロードし、OAuth 2.0 Authorization Response の処理が完了した後にそれを再生するために使用されるServerRequestCache
を設定します。
コンストラクターの詳細
OAuth2AuthorizationCodeGrantWebFilter
public OAuth2AuthorizationCodeGrantWebFilter(ReactiveAuthenticationManager authenticationManager, ReactiveClientRegistrationRepository clientRegistrationRepository, ServerOAuth2AuthorizedClientRepository authorizedClientRepository) OAuth2AuthorizationCodeGrantWebFilter
public OAuth2AuthorizationCodeGrantWebFilter(ReactiveAuthenticationManager authenticationManager, ServerAuthenticationConverter authenticationConverter, ServerOAuth2AuthorizedClientRepository authorizedClientRepository)
メソッドの詳細
setAuthorizationRequestRepository
public final void setAuthorizationRequestRepository(ServerAuthorizationRequestRepository<OAuth2AuthorizationRequest> authorizationRequestRepository) OAuth2AuthorizationRequest
の格納に使用されるリポジトリを設定します。デフォルトはWebSessionOAuth2ServerAuthorizationRequestRepository
です。- パラメーター:
authorizationRequestRepository
-OAuth2AuthorizationRequest
の保存に使用されるリポジトリ- 導入:
- 5.2
setRequestCache
以前に保存されたリクエスト(利用可能な場合)をロードし、OAuth 2.0 Authorization Response の処理が完了した後にそれを再生するために使用されるServerRequestCache
を設定します。- パラメーター:
requestCache
- 以前に保存されたリクエストをロードするために使用されるキャッシュ (使用可能な場合)- 導入:
- 5.4
filter
public reactor.core.publisher.Mono<VoidSE> filter(org.springframework.web.server.ServerWebExchange exchange, org.springframework.web.server.WebFilterChain chain) - 次で指定:
- インターフェース
org.springframework.web.server.WebFilter
のfilter