私の Spring アプリケーションのほとんどは、通常の Spring セキュリティを使用しています。ただし、POST 本文内の XML のみを介して通信する組み込みシステムが特定のページにアクセスするには、(交渉の余地のない) 要件があります。つまり、「JSESSIONID=xxx」を渡したり、Cookie を受け取ったりすることはできませんが、代わりに、ログイン時に xml 経由でセッション ID を受け取ることを想定しており、それを将来のリクエストで繰り返します。
したがって、ログイン時に(ここでは簡略化しました)、送信します
<username>user</username><password>password</password>
http://example.com/xml_loginへの投稿本文で
<sessionid>xxxxxx</sessionid>
応答します。その後のすべてのリクエストは、<sessionid>
タグの内容を本文の一部として繰り返します。
これを使用するために春のセキュリティを取得する方法についてのアイデアはありますか?
私の最初の試みは、sessionid と crowbar a JSESSION= を本体に抽出するためのフィルターを作成することでしたが、遅すぎることが判明しました (本体を取得するリクエスト オブジェクトを取得するまでに、Spring のセキュリティは既に確立されていました)。セッション、および「request.setSession(id)」のようなことを行う方法がわかりません)。私が考えることができる唯一の他のことは、春のセキュリティの外で独自のセッション処理を書くことですが、それをする必要がなければいいと思います.
ありがとう