0

Java SE 6 に基づく JAX-WS Web サービスがあります。HTTP 経由でアプリケーション サーバーにログオンし、情報を読み取る Web サービス メソッドがあります。

クライアントが正しいユーザー名とパスワードを使用して Web サービス メソッドを呼び出すと、アプリケーション サーバーで認証されてから応答が返されます。

次に、2 番目のクライアントが間違ったユーザー名/パスワードで Web サービス メソッドを呼び出すと、認証されて機密情報も受信します。これは間違った動作です。

これら 2 つのクライアント呼び出しの間に Web サービス サーバーが再起動された場合にのみ、ユーザー名/パスワードが間違っている場合に 2 番目の呼び出しが拒否されます。

認証された接続が作成されると、Web サービス サーバーはアプリケーション サーバーへの認証を維持するように見えます。その後、連続する呼び出しを認証する必要がなくなります。

私の質問は、Web サービス メソッドの 2 つの呼び出しを完全に分離する方法です。

4

2 に答える 2

0

推測ですが、認証トークンをインスタンス変数として WS サーブレットに格納しているのではないでしょうか?

乾杯、

于 2012-10-23T10:06:28.140 に答える
0


2 つのオプションがあります - Web サービスを RESTful のようにする (すべてのリクエストで認証の詳細を渡し、Web サービス自体に状態情報を保存しないか、Web サービスとクライアントの間でセッション ID を渡して検証することを確認します)。コードを見ないと、この場合のより良いアプローチを言うのは困難です。

于 2012-10-23T10:37:51.917 に答える