ユーザー名とパスワードにNameCallbackとPasswordCallbackを使用しています。ユーザー名とパスワードの場合、ポップアップがブラウザに表示され、ユーザー名とパスワードを入力すると、JAASがリクエストを認証します。
Wiresharkで、401 Unauthorizedメッセージ(WWW-Authenticateヘッダー)が届き、ユーザー名/パスワードを入力すると、資格情報を使用してHTTPリクエストが生成され(Authorizationヘッダーを使用)サーバーに送信されるのを確認しました。
私の要件:ポップアップが表示されないようにします。ユーザー名/パスワードを持つ他のサーバー上のアプリケーションは、401を受信すると、ロジックに基づいて、Authorizationヘッダー/クレデンシャルを使用してHTTPリクエストを生成し、送り返します。
FLow: ユーザー->その他のサーバー-> My Tomcat5.5
ここ他のサーバーでは、ユーザー名/パスワードを手動で入力できる人は誰もいません。アプリケーションがデプロイされ、資格情報を使用してHTTPリクエストを生成し、それをtomcatに送り返します。
このように動作する他のコールバックをいただけますか。あなたの助けが必要です。アプローチに関連するフィードバックも提供してください。
質問の編集:
これが実際のケースです:
UserAがXYZサーバーに呼び出し(SIPプロトコル)を行いました。XYZサーバーにデプロイされたアプリケーションはHTTP RESTリクエストを作成し、Tomcatサーバーに送信します。Tomcatサーバーでは、ユーザーアカウントの詳細を取得するために1つのアプリケーションがデプロイされます。HTTPリクエストがtomcatに届くと、認証する必要があります。TomcatのJAASRealm実装を使用しています。
認証のために、tomcatが行っていることは、XYZサーバーでユーザー名/パスワードウィンドウをポップアップします。XYZサーバーでは、アプリケーションがHTTPリクエストを作成したため、ユーザー名/パスワードを手動で入力する人は誰もいません(これはユーザーAデバイス)。
このポップアップが表示されない方法を探しています。XYZサーバーにデプロイされたアプリケーションは次のようになります。
if(response equal 401)次に、クレデンシャルを使用してHTTPリクエストを作成します。
だからポップアップが出ない魂を探していたのですが、今ははっきりしていますか、提案してください。