In Ermangelung einer Antwort von jemand anderem hier ist, was ich entdeckt habe, ich hoffe, es ist nützlich für jemand anderen.
Zusammenfassung:
- Laden Sie SSPI-fähiges Curl herunter von http://curl.haxx.se/latest.cgi?curl=win32-ssl Wechsel zu Windows, zip, SSL-aktiviert, SSPI-aktiviert (7.19.5) .
- Installieren Sie Windows Open-SSL von http://www.slproweb.com/products/Win32OpenSSL.html und eine Spende zur Unterstützung seiner Bandbreitenkosten machen.
- Installieren Sie die Visual C++ 2008 weiterverteilbare Dateien wenn Sie sie brauchen.
- Verwenden Sie curl, um die Seite abzurufen:
curl.exe -U : --proxy-ntlm --proxy myproxy.com:8080 http://www.google.com
Ausführlichere Erklärung
Die magische Phrase für die Authentifizierung über den Windows-Anmeldemechanismus lautet SSPI . Dies ist ein guter Suchbegriff für Google. Ich habe noch keine gute Möglichkeit gefunden, SSPI für die HTTP-Proxy-Authentifizierung in Java oder wget zu verwenden.
Allerdings, curl (das Download-Tool) tut unterstützen SSPI, aber nur in bestimmten Builds. Leider gehört der Standard-Cygwin-Build nicht dazu. Sie können herausfinden, ob Ihr Build von curl SSPI unterstützt, indem Sie die ausführlichen Versionsinformationen abrufen:
curl -v -V
Wenn SSPI unterstützt wird, wird dies in der Funktionszeile erwähnt.
Um eine Windows-Version zu erhalten, die SSPI unterstützt, musste ich zu http://curl.haxx.se/latest.cgi?curl=win32-ssl und ändern Sie dann die Download-Auswahl in Windows, zip, SSL-aktiviert, SSPI-aktiviert (7.19.5) . Wenn Sie dies lesen, kann sich die Versionsnummer bereits geändert haben.
Dies schlug dann in der Befehlszeile lautlos fehl. Bei der Ausführung über den Windows-Explorer erhielt ich eine Meldung über eine fehlende libeay32.dll. Eine Möglichkeit, diese von Windows aus zu erhalten, ist der einzige Link unter openssl.org zu einer Windows-Version . Der Hersteller bittet um eine Spende zur Deckung der Bandbreitenkosten. Eine andere Möglichkeit wäre, eine eigene Version aus den Quellen zu erstellen.
Und nach all dem funktionierte curl mit der folgenden Befehlszeile:
curl.exe -U : --proxy-ntlm --proxy myproxy.com:8080 http://www.google.com
En -U :
konfiguriert kein Passwort, die anderen Kommandozeilenoptionen richten den Proxy ein. Wahrscheinlich müssen Sie Ihre Proxy- und Porteinstellungen ändern.
Das wäre alles viel einfacher, wenn nur die curl-Version von cygwin SSPI unterstützen würde. Ich werde jetzt einen Antrag dafür stellen.