NTLM-Authentifizierung

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 2 Minuten Lesedauer
  • NTLM ist das komplexeste der von einem Basis-Webserver unterstützten Authentifizierungsprotokolle.

    NTLM ist das komplexeste der von einem Basis-Webserver wie HttpClientunterstützten Authentifizierungsprotokolle. Es ist ein proprietäres Protokoll, das von Microsoft entwickelt wurde und keine öffentlich verfügbare Spezifikation aufweist. 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 das Konzept von Bereichen nicht verwendet, verwendet HttpClient den Domänennamen des Servers als Namen des Bereichs. Außerdem darf dem Benutzernamen, der für NTCredentials angegeben wird, nicht die Domäne vorangestellt werden:
    • Richtig: adria
    • Falsch: DOMÄNE\admin
    Es gibt einige wesentliche Unterschiede in der Funktionsweise von NTLM im Vergleich zur Basic- und Digest-Authentifizierung. Diese Unterschiede werden im Allgemeinen von HttpClient behandelt. Wenn Sie jedoch diese Unterschiede verstehen, können Sie Probleme bei der Verwendung der NTLM-Authentifizierung vermeiden.
    • Die NTLM-Authentifizierung funktioniert fast genauso wie jede andere Form der Authentifizierung in Bezug auf die HttpClient-API. Der einzige Unterschied besteht darin, dass Sie NTCredentials anstelle von UsernamePasswordCredentials angeben müssen (NTCredentials erweitert UsernamePasswordCredentials, sodass Sie NTCredentials bei Bedarf direkt in Ihrer Anwendung verwenden können).
    • Der Bereich für die NTLM-Authentifizierung ist der Domänenname des verbundenen Computers. Dies kann problematisch sein, da Server häufig mehrere Domänennamen haben. Für die Suche nach den Anmeldeinformationen wird nur der Domänenname verwendet, mit dem HttpClient eine Verbindung herstellt, wie in der Hostkonfiguration angegeben. Beim ersten Testen der NTLM-Authentifizierung ist es am besten, den Bereich als NULL zu übergeben, was 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 mit einem Proxy-Server und dem Webserver verwendet werden, und NTLM kann 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.
    Tabelle : 1. NTLM-Authentifizierung
    Eigenschaft Beschreibung Beispiele
    glide.http.proxy_ntusername Geben Sie den Benutzernamen an, der zum Authentifizieren des Proxyservers mit NTLM-Authentifizierung verwendet wird.
    • Typ: Zeichenfolge
    • Standardwert: keiner
    username
    glide.http.proxy_ntpassword Geben Sie das Passwort an, mit dem der Proxyserver mit NTLM-Authentifizierung authentifiziert wird.
    • Typ: Zeichenfolge
    • Standardwert: keiner
    Kennwort
    glide.http.proxy_nthost Geben Sie den Hostnamen an, der zur Authentifizierung des Proxyservers mit NTLM-Authentifizierung verwendet wird.
    • Typ: Zeichenfolge
    • Standardwert: keiner
    nthost
    glide.http.proxy_ntdomain Geben Sie die Domäne an, die zum Authentifizieren des Proxyservers mit NTLM-Authentifizierung verwendet wird.
    • Typ: Zeichenfolge
    • Standardwert: keiner
    DOMAIN