当社のウェブサイトの一部は.htaccess形式のパスワード保護で保護されています。 Webサイトのこのエリアにアクセスしようとすると、Webブラウザがユーザ名とパスワードを要求するダイアログを表示します。プログラムでパスワードで保護されたWebサイトにアクセスする方法は?
これはプログラムでアクセスする必要があります(例:ajax呼び出し)。サーバーはパスワードが必要であると私にどのように伝え、どのように供給するのですか?
当社のウェブサイトの一部は.htaccess形式のパスワード保護で保護されています。 Webサイトのこのエリアにアクセスしようとすると、Webブラウザがユーザ名とパスワードを要求するダイアログを表示します。プログラムでパスワードで保護されたWebサイトにアクセスする方法は?
これはプログラムでアクセスする必要があります(例:ajax呼び出し)。サーバーはパスワードが必要であると私にどのように伝え、どのように供給するのですか?
、http://user:[email protected]
しかし、それとのいくつかの明白なセキュリティ上の欠点があります。
より完全な解決策は、ユーザーが認証された後にセッション変数を設定することです。
認証を確認するスクリプトにAJAX投稿を作成します。認証されている場合は、CURLを使用して、定義済みの承認済みアカウントを使用して結果を取得します。
これにより、基本的なApache認証を再利用できますが、パスワードはDOMに書き込まれません。
問題のサイトはhttpsです。これはセキュリティの問題を軽減すると考えています。サーバーに渡されたURLがhttpsセッションで暗号化されていますか? –
better better httpS:// user:[email protected] – KevinDTimm
URLは安全であるべきですが、hrefの一部としてプレーンサイトにユーザー/パス権を書き込んでいます。たとえu/pが通過中に狙撃できないとしても、そこにはまだいくつかの問題があります。 – rooskie
これはもちろん、AJAXではありませんが、wgetのあなたが--http-ユーザー使用することができますクライアントと--http-パスワードをフラグ
でjQueryのは彼らのAJAX()メソッドでHTTP認証をサポートしています。このような何か作業をする必要があります:すべてのjQuery.ajax()のオプションの
jQuery.ajax({
type: "GET",
url: "foo.php",
username: "foo",
password: "bar"
});
マニュアルは、ここで見つけることができます:
http://docs.jquery.com/Ajax/jQuery.ajax#optionsも、ダイジェスト認証のだろう。基本的なテクニックは同じですが、レスポンスの外観は異なっています。 –