現在wininet.dllを使用して認証の必要なプロキシを経由してHTTPS接続を行う
アプリケーションを開発しているのですが、認証がうまく通らずに困っています。
処理の流れとしては、
1.HttpSendRequestにてリクエスト発信
2.HttpQueryInfoを使用してエラーコードを取得
3.エラーコードが「407」であった場合に、事前に登録されたユーザー名とパスワードをBase64にエンコードした後、HttpAddRequestHeadersを使用してProxy-Authorizationをヘッダーに追加
4.HttpSendRequestにてリクエストを再送
といった具合です。
この処理のパケットをキャプチャーしたところ追加したはずのProxy-Authorizationがヘッダーに含まれていないことがわかりました。
同様の処理をHTTPを使用して行った場合には、Proxy-Authorizationがヘッダーに含まれています。
またHttpAddRequestHeadersを使用せず、InternetErrorDlgを使用して認証を行うとProxy-Authorizationがヘッダーに含まれます。
HTTPS接続でかつHttpAddRequestHeadersによる認証情報の送信は無効となってしまうのでしょうか。
よろしくお願い致します。
<開発環境>
OS Windows XP SP2
言語 Visual Basic6.0 SP6
IE 6.0
プロジェクト ActiveX DLL
ツイート | ![]() |