0

安全な(BASIC認証)アプリケーションを含める必要があります。

ブラウザでアプリケーション URL を開くと、ブラウザから資格情報を入力するように求められます...

私が知っていることは次のとおりです。

  1. ブラウザはサーバーに何らかの URL (アプリの URL) を取得するように要求します。
  2. サーバーは のリクエスト ヘッダーをチェックしましたが、Authentication header見つかりませんでした
  3. サーバー401はブラウザに送り返します
  4. Authentication ブラウザーは、この応答コードをメッセージ ダイアログに解釈し、要求ヘッダーでサーバーに送り返すユーザー名/パスワードを入力するように求めます。

これまでのところ...とても良いので、この必要なhttpリクエストヘッダーをこのページを呼び出しているリクエストに送信するページを(JSPで)書くことができます..だから私は自分のページからこのアプリケーションを呼び出します..

ここでの問題は、このアプリケーション (実際には GWT アプリケーション) に、このアプリケーションをホストするサーバーからの Javascript および CSS ファイルへの参照が含まれていることです。インポートしたアプリケーション ページは次のようになります。

<html>
    <link href="http://application_host/cssfile.css" />
    <link href="http://application_host/javascriptfile.js" />
    .....
</html>

そのため、アプリケーションが css ファイルと js ファイルの認証資格情報を要求していることがわかりました。

私は多くの解決策を考えていますが、それぞれの適用可能性を知りません

  • Authentication解決策の 1 つは、サーバーに js および css ファイルを要求するときに、ブラウザーに (Javascript を介して) 要求ヘッダー ( ) を送信するように要求することです。

それについてあなたの意見を聞かせてください...そして他の提案は大歓迎です。

ありがとう。

4

3 に答える 3

1

サーバーの構成方法で奇妙なことに遭遇していると思います。認証は、認証レルムのコンテキストで行われます。アセットは、ページと同じ認証領域にある必要があります。または、(より可能性が高い) 認証をまったく必要としない必要があります。ブラウザーは、指定されたレルムの資格情報をキャッシュする必要があり、再度要求することはありません。

http://en.wikipedia.org/wiki/Basic_access_authenticationのプロトコルの例を参照してください。

于 2011-02-11T20:59:59.293 に答える
0

あなたの話から判断すると、あなたの問題は認証方法自体にあることがわかります。実装方法ではありません。なぜそんなにリクエストヘッダーを気にしたいのですか?

私の知る限り、特定の URL に対して http 認証を強制するようにコンテナー (Tomcat など) を構成できます。コンテナーは、認証が行われたことを確認します。自分で http ヘッダーを設定する必要はまったくありません。

おそらく、実装の詳細を説明する代わりに、達成しようとしていることをもう少しうまく説明できますか?

于 2011-02-11T20:55:17.963 に答える
0

css & js ファイルがサーバーの保護領域に保持されるのはなぜですか? サーバーの公開領域にファイルを配置する必要があります。公共エリアがない場合は、それを用意する必要があります。それを行う方法は、サーバー側のソフトウェア アーキテクチャと構成によって異なります。

于 2011-02-11T21:25:41.450 に答える