7.4 U34+ で OpenIdConnectProvider クラスにアクセスするには?
knowledge-article-header-disclaimer-how-to
knowledge-article-header-disclaimer
legacy-article
learn-legacy-article-disclaimer-text
問題
-
com.liferay.portal.security.sso.openid.connect.OpenIdConnectProvider;
とcom.liferay.portal.security.sso.openid.connect.OpenIdConnectProviderRegistry;
のLiferayクラスは、 LPS-150092によってU34+で削除されました。
- カスタマイズの際、どのように置き換えることができますか?
解像度
-
置換クラスを実現する1つの方法は
OpenIdConnectProviderRegistryImpl.findOpenIdConnectProvider
メソッドをカスタマイズすることです。
-
これは
設定
テーブルからすべてのエントリを取得する必要があります。 で始まる _configuration テーブルからすべてのエントリを取得する必要があります。
からすべてのエントリを取得し、それを繰り返し、一致する プロバイダ名
.
-
これは以前、インメモリーマップを使って行った(詳しくは LPS-150092 を参照)。 基本的には、サーバーの起動時やコンフィギュレーションの追加・削除時に、providerName(キー)をconfiguration(値)としてマップを更新します。 そこから簡単にコンフィギュレーションを調べることができた。
- また、マップをスキップして、リクエストごとにコンフィギュレーションの取得とフィルタリングだけを実行することもできる。
-
あるいは、 OpenID Connect 接続ごとに
OAuthClientEntry
を作成するので、以下のスクリプトを使用してデータにアクセスすることもできます。
did-this-article-resolve-your-issue