0

Spring API を使用して証明書のプリンシパル情報を取得し、有効なユーザーを確認する Web アプリケーションがあります。

これが展開されているアプリ サーバーには、CA の証明書を含むトラスト ストアが含まれており、要求元のクライアントの証明書に基づいて着信要求の信頼性を検証し、それをアプリケーションに送信するだけであると想定されています。

したがって、証明書の内容を検証するのではなく、証明書の共通名 (プリンシパル) 部分を検証するだけでした。CAの証明書に対して証明書を検証する独自のトラストマネージャーをアプリケーションに書きたい場合、Springで同じことを達成するにはどうすればよいですか?

カスタムトラストストアマネージャーを作成し、checkClientTrusted メソッドをオーバーライドする必要があることは知っていますが、その方法と、このカスタム Trustmanager を使用するように Spring を構成する方法がわかりません。これを行う方法を知っている人はいますか?

ありがとう

ノシブ

4

1 に答える 1

0

そのためにトラストマネージャーは必要ありません。リクエスト中に証明書を取得するだけです。これはリクエスト属性として利用できます: サーブレットの仕様を参照してください。

インターネットでよく目にするカスタムのトラスト マネージャーは、実際には重大なセキュリティ侵害であり、問​​題を理解していない人や、彼らの過激な「解決策」の意味を理解していない人によって実行されています。

于 2012-05-23T21:44:33.347 に答える