保護されたファイルにアクセスしようとしています。サーバーはダイジェスト認証を使用しています。これは、出力された応答から確認できます。サンプルコードは次のとおりです。
use LWP;
use strict;
my $url = 'http://somesite.com/aa/bb/cc.html';
my $username = 'scott';
my $password = 'tiger';
my $browser = LWP::UserAgent->new('Mozilla');
$browser->credentials("http://somesite.com:80","realm-name",$username=>$password);
my $response=$browser->get($url);
print $response->content;
ブラウザからそのリソースにアクセスしようとしたときに表示されるポップアップ ウィンドウから取得したレルムの名前。同じユーザー名とパスワードがブラウザで非常にうまく機能しており、コンテンツを表示できますが、上記のスクリプトを実行すると常に401 Authorization required
.
LWP はどのように機能しますか?
LWP にユーザー名とパスワードの MD5 ハッシュ (ダイジェスト) を送信するように依頼する必要がありますか?それとも、使用する認証を内部的にチェックし、資格情報を送信する対応する (基本/ダイジェスト) 方法を送信するようなものですか? 私の質問は
- ユーザー名とパスワードのダイジェストを送信するように LWP を設定するにはどうすればよいですか?
- サーバーが Windows NTLM 認証プロトコルを使用している場合はどうなりますか? このような状況で、私はどのように行動すればよいでしょうか?
迅速なヘルプをいただければ幸いです。