IdPとしてWSO2 ISを使用したSpring SAML拡張を使用しています。現在、Spring XML設定内のMetadataGeneratorのentityBaseURLプロパティを設定しています。今のところ、これはentityBaseURLがservernameと一致するので、単一のサーバーに対してうまく動作します。私はいくつかの環境(dev、test、およびUAT)を持っているので、各環境が異なるサーバー名を持ち、サーバー名がentityBaseURL propと一致しないため、プログラムでentityBaseURLを設定する必要があります。すべての環境でWARアーチファクトを再構築することは望ましくありません。私たちは、各環境の設定をデータベースに保存します。したがって、特定のマシンスタックに固有の設定とプロパティを実行時に読み取ることができます。私は、DBからentityBaseURLプロパティのservernameを読み込み、プログラムで設定したいと考えています。 MetadataGeneratorを自分のクラスに置き換える必要がありますか? entityBaseURLプロパティがどこで初期化されるかは、私には不明です。Spring SAML拡張 - プログラムでentityBaseURLを設定する
1
A
答えて
1
私はこれを解決するための実行可能な方法を見つけました。私はMetadataGeneratorFilterクラスを拡張し、getDefaultBaseURLメソッドをオーバーライドしました。 getDefaultBaseURLメソッドのデフォルトの実装では、HTTP要求に含まれるプロパティを使用して値を計算します。私はDBのルックアップを行い、データベースに格納されている値を返すようにこの動作を変更しました。私はここで短所になることができますが、これはうまくいきます。 SAML AuthnRquestのAssertionConsumerServiceURL属性が正しく設定されていることを確認できました。生成されたメタデータも正しい。
注:entityBaseURLプロパティは、引き続きSpringの設定で手動で設定できます。そうであれば、getDefaultBaseURLメソッドから返された値は使用されません。
関連する問題
- 1. spring-samlを使用したmduiメタデータの拡張
- 2. AuthnRequest(Keycloak)のSAML 2拡張
- 3. Spring Security SAML拡張 - Idpからのシングルログアウトのコールバック
- 4. 春のセキュリティSAML拡張春のセキュリティSAML拡張のドキュメントによると、ロードバランサのサポート
- 5. 抽象構成を拡張したSpringのJava設定
- 6. クエリのタイムアウト設定を拡張する
- 7. ログバック設定を拡張する
- 8. Chrome拡張機能 - 設定ページで拡張機能の画像
- 9. 設定ファイルと拡張子
- 10. 設定デフォルトのプログラムMSIインストール後の拡張のために
- 11. Spring SAML WSO2リフレッシュアサーション
- 12. プログラムで特定のBeanオブジェクトを設定する - Spring DI
- 13. 正しいSAML TLSProtocolSocketFactory設定
- 14. Spring SAMLとADFS 2.0
- 15. Symfony2で異なるバンドルの設定を拡張するには?
- 16. 拡張機能のコンテンツスクリプトをプログラムで挿入する(クロム拡張機能)
- 17. Spring SAML 2.0
- 18. shibboleth-saml with spring boot
- 19. vscodeでeslint拡張を設定する方法は?
- 20. Expression Web 3でファイル拡張子の設定を変更する
- 21. Spring Cloud AWS SQSでメッセージハンドラをプログラムで設定する方法は?
- 22. Liferay 6.0.1拡張環境設定
- 23. Firefoxの拡張アドレスバーのスタイル設定
- 24. Umbraco 7 - RTE設定の拡張
- 25. iOS共有拡張例外 - アイテム設定
- 26. Fiddler/Load and Saveユーザー設定/拡張子
- 27. Chrome拡張機能の設定ページ
- 28. BaseExpandableListAdapterを拡張するクラスにcachecolorhintを設定する方法
- 29. ターミナルを特定のサイズにプログラムで拡張
- 30. カスタムXML設定を保持するために、スプリングの設定を拡張