NTLM-Authentifizierung
NTLM ist das komplexeste der von einem einfachen Webserver unterstützten Authentifizierungsprotokolle.
NTLM ist das komplexeste der Authentifizierungsprotokolle, die von einem einfachen Webserver wie HttpClientunterstützt werden. Es handelt sich um ein proprietäres Protokoll, das von Microsoft ohne öffentlich verfügbare Spezifikation entwickelt wurde. Frühe Versionen von NTLM waren aufgrund von Designfehlern weniger sicher als die Digest-Authentifizierung. Diese wurden jedoch in einem Service Pack für Windows NT 4 behoben, und das Protokoll gilt jetzt als sicherer als die Digest-Authentifizierung.
Die NTLM-Authentifizierung erfordert, dass eine Instanz von NTCredentials für den Domänennamen des Servers oder die Standardanmeldeinformationen verfügbar ist. Da NTLM nicht das Konzept von Bereichen verwendet, verwendet HttpClient den Domänennamen des Servers als Namen des Bereichs. Außerdem darf dem NTC-Anmeldeinformationen bereitgestellten Anwendernamen nicht die Domäne vorangestellt werden:
- Richtig: adria
- Falsch: DOMÄNE\adIAN
Es gibt einige signifikante Unterschiede in der Funktionsweise von NTLM im Vergleich zur Standard- und Digest-Authentifizierung. Diese Unterschiede werden im Allgemeinen von HttpClient behandelt. Wenn Sie diese Unterschiede verstehen, können Sie jedoch Probleme bei der Verwendung der NTLM-Authentifizierung vermeiden.
- Die NTLM-Authentifizierung funktioniert in Bezug auf die HttpClient-API fast genauso wie jede andere Form der Authentifizierung. Der einzige Unterschied besteht darin, dass Sie NTCredentials anstelle von UsernamePasswordCredentials angeben müssen. (NTCredentials erweitern UsernamePasswordCredentials, sodass Sie NTCredentials bei Bedarf direkt in der gesamten Anwendung verwenden können.)
- Der Bereich für die NTLM-Authentifizierung ist der Domänenname des verbundenen Computers. Dies kann Probleme bereiten, da Server häufig mehrere Domänennamen haben. Nur der Domänenname, mit dem HttpClient eine Verbindung herstellt (wie in der Hostkonfiguration angegeben) wird zum Suchen der Anmeldeinformationen verwendet. Beim ersten Testen der NTLM-Authentifizierung ist es am besten, den Bereich als NULL zu übergeben, der als Standard verwendet wird.
- NTLM authentifiziert eine Verbindung und keine Anforderung. Daher müssen Sie sich jedes Mal authentifizieren, wenn eine neue Verbindung hergestellt wird, und es ist wichtig, die Verbindung während der Authentifizierung offen zu halten. Aus diesem Grund kann NTLM nicht für die Authentifizierung sowohl bei einem Proxy-Server als auch beim Webserver verwendet werden. Außerdem kann NTLM nicht mit HTTP 1.0-Verbindungen oder Webservern verwendet werden, die keine HTTP-Keepalive unterstützen.
Hinweis:
Legen Sie diese Eigenschaften in der Tabelle
„Systemeigenschaften“ [sys_properties] fest.| Eigenschaft | Beschreibung | Beispiele |
|---|---|---|
| glide.http.proxy_ntusername | Geben Sie den Benutzernamen an, der zum Authentifizieren des Proxyservers mit NTLM-Authentifizierung verwendet wird.
|
username |
| glide.http.proxy_ntpassword | Geben Sie das Passwort an, mit dem der Proxyserver mit NTLM-Authentifizierung authentifiziert wird.
|
Kennwort |
| glide.http.proxy_nthost | Geben Sie den Hostnamen an, der zur Authentifizierung des Proxyservers mit NTLM-Authentifizierung verwendet wird.
|
nthost |
| glide.http.proxy_ntdomain | Geben Sie die Domäne an, die zum Authentifizieren des Proxyservers mit NTLM-Authentifizierung verwendet wird.
|
DOMAIN |