クライアント認証なしでhttps経由でユーザーに接続し、クライアント認証を有効にして他のコンポーネントと通信する必要があるコンポーネントに取り組んでいます。
2 つのセキュア コネクタを使用してコンポーネントを開始したいと考えています。
また、コンポーネントのどのサーブレットがコネクタ C1 を使用して実行され、どれが C2 で実行されるかを構成したいと考えています。
それを行うための解決策はありますか?
クライアント認証なしでhttps経由でユーザーに接続し、クライアント認証を有効にして他のコンポーネントと通信する必要があるコンポーネントに取り組んでいます。
2 つのセキュア コネクタを使用してコンポーネントを開始したいと考えています。
また、コンポーネントのどのサーブレットがコネクタ C1 を使用して実行され、どれが C2 で実行されるかを構成したいと考えています。
それを行うための解決策はありますか?
この質問に対する部分的な回答を得ました
Tomcat の servlet.xml 構成に複数のコネクタを追加して、8443 でクライアント側認証が有効になっているものと、ポート 8444 でクライアント認証が有効になっていないものを追加できます。
次に、クライアント認証が必要かどうかは、サーバーと通信するポートによって異なります。
しかし、サーブレットが事前構成されたコネクタで通信するように強制 (および自動的にリダイレクト) する方法はまだ見つかりませんでした。
分割は次の 2 つの方法で実現できます。
request.getAttribute("javax.servlet.request.X509Certificate")
し、必要なルーティングに応じて (302 HTTP コードを介して) リダイレクトをクライアントに送信するかどうかを決定します。