urllib2 は、一般に、プロキシ認証を使用した HTTPS をサポートしていないようです。NTLM 認証を使用する場合はさらに少なくなります。NTLM認証を使用したプロキシでHTTPSのどこかにパッチがあるかどうかは誰でも知っています。
よろしく、
ローラン
urllib2 は、一般に、プロキシ認証を使用した HTTPS をサポートしていないようです。NTLM 認証を使用する場合はさらに少なくなります。NTLM認証を使用したプロキシでHTTPSのどこかにパッチがあるかどうかは誰でも知っています。
よろしく、
ローラン
返事が遅れ。Urllib2 は NTLM プロキシをサポートしていませんが、pycurl はサポートしています。抜粋:
self._connection = pycurl.Curl()
self._connection.setopt(pycurl.PROXY, PROXY_HOST)
self._connection.setopt(pycurl.PROXYPORT, PROXY_PORT)
self._connection.setopt(pycurl.PROXYUSERPWD,
"%s:%s" % (PROXY_USER, PROXY_PASS))
...
http://code.google.com/p/python-ntlm/
HTTPS を試したことはありませんが、うまくいくと思います。
編集: SSL トンネリングを使用している場合、プロキシ認証はお勧めできません。
SSL がトンネリングされている場合、HTTPS 経由の基本認証を使用するプロキシは安全ではありません。パスワードはクリア (Base64 エンコード) でプロキシに送信されます。多くの人は、パスワードが SSL 内で暗号化されると想定しています。この場合はそうではありません。
ダイジェスト/NTLM などの他の暗号化またはハッシュ化されたメカニズムをサポートすることはほとんど不可能です。それらはすべてネゴシエーション (複数の交換) を必要とし、それは CONNECT プロトコルで定義されていないためです。このネゴシエーションは、HTTP 接続の帯域外で行われます。プロキシ/ブラウザでも実装するのは非常に困難です。
これがエンタープライズ プロキシの場合、IP ACL が唯一の安全なソリューションです。
良いレシピ (HTTPS w/proxy の場合) とここでの議論は、@ZZ が既に提案した python-nltm コードと融合できるはずです。