Team Foundation Server, Standardauthentifizierung und Digestauthentifizierung
Aktualisiert: November 2007
Visual Studio 2008 unterstützt die Standard- und die Digestauthentifizierung. Durch die Konfiguration der Team Foundation Server-Bereitstellung zur Verwendung von HTTPS mit Secure Sockets Layer (SSL) und Standard- bzw. Digestauthentifizierung werden externe Verbindungen zum Team Foundation Server ohne Virtual Private Network (VPN) unterstützt.
Konfigurationen
Sie müssen IIS (Internetinformationsdienste) zum Aktivieren von Standard- und/oder Digestauthentifizierung konfigurieren, um externe Verbindungen zu Ihren Team Foundation Server-Bereitstellungen zu unterstützen. Darüber hinaus müssen Sie einen ISAPI-Filter (Internet Server Application Programming Interface) konfigurieren. ISAPI-Filter sind DLL-Dateien, die zum Ändern und Erweitern der Funktionalität von IIS dienen. ISAPI-Filter werden immer auf einem Server ausgeführt, auf dem IIS läuft. Sie müssen den zu SP1 gehörigen ISAPI-Filter mit den IP-Adressen von Webproxys und/oder den Clients konfigurieren, die zur Verwendung der Standard- bzw. Digestauthentifizierung erforderlich sind.
Standard- und Digestauthentifizierung
Die Standardauthentifizierung ist Teil der HTTP 1.0-Spezifikation. Sie verwendet Windows-Benutzerkonten. Während der Standardauthentifizierung fordert der Browser den Benutzer zur Eingabe eines Benutzernamens und Kennworts auf. Die Angaben für Benutzername und Kennwort werden mithilfe der Base64-Codierung über HTTP übertragen. In der Standardeinstellung erfordert die Standardauthentifizierung Windows-Benutzerkonten mit lokalen Anmelderechten am Webserver. Sie können die Standardauthentifizierung sowohl in Arbeitsgruppen als auch in Domänenbereitstellungen verwenden. Obwohl die meisten Webserver, Proxyserver und Webbrowser die Standardauthentifizierung unterstützen, ist sie nicht sicher. Da Daten mit Base64-Codierung einfach dekodiert werden können, wird bei der Standardauthentifizierung das Kennwort im Nur-Text-Format gesendet. Diese Kennwörter können durch die Überwachung der Netzwerkkommunikation mithilfe öffentlich verfügbarer Tools problemlos von Dritten abgefangen und entschlüsselt werden.
Die Digestauthentifizierung ist ein auf Abfrage und Rückmeldung basierender Mechanismus, der ein Digest (auch als Hash bezeichnet) anstelle eines Kennworts über das Netzwerk sendet. Während der Digestauthentifizierung sendet IIS eine Abfrage an den Client, um ein Digest zu erstellen, und sendet dieses dann an den Server. Der Client sendet als Rückmeldung auf die Abfrage ein auf dem Kennwort und den Daten des Benutzers basierendes Digest an den Client und an den Server. Der Server führt denselben Vorgang wie der Client aus, um anhand der Benutzerinformationen aus Active Directory sein eigenes Digest zu erstellen. Wenn das vom Server erstellte Digest mit dem vom Client erstellten übereinstimmt, authentifiziert IIS den Client. Sie können die Digestauthentifizierung nur in Active Directory-Domänenbereitstellungen verwenden. Im Grunde ist die Digestauthentifizierung alleine nur eine geringe Verbesserung gegenüber der Standardauthentifizierung. Ein Angreifer kann die Kommunikation zwischen Client und Server aufzeichnen und diese Informationen nutzen, um die Transaktion wiederzugeben. Die Digestauthentifizierung hängt darüber hinaus vom HTTP 1.1-Protokoll ab. Nicht alle Webbrowser unterstützen dieses Protokoll. Darüber hinaus müssen Sie die Digestauthentifizierung ordnungsgemäß konfigurieren, da der Zugriff auf Team Foundation Server andernfalls fehlschlägt. Wählen Sie die Digestauthentifizierung nur dann aus, wenn die Bereitstellungen alle Anforderungen zur Digestauthentifizierung erfüllen. Weitere Informationen zur Digestauthentifizierung finden Sie auf der Microsoft-Website (https://go.microsoft.com/fwlink/?LinkID=89709h).
Einschränkungen
Zusätzlich zu den bereits erwähnten Domänen- und Arbeitsgruppenanforderungen sind sowohl die Standard- als auch die Digestauthentifizierung alleine nicht ausreichend, um Netzwerksicherheit für externe Clients zu gewährleisten. Deshalb sollten Sie Team Foundation Server nicht für die Unterstützung externer Clients konfigurieren, es sei denn, Sie konfigurieren diese Verbindungen so, dass HTTPS mit SSL erforderlich ist.
ISAPI-Filterkonfiguration
Der ISAPI-Filter kann so konfiguriert werden, dass Regeln für jeden beliebigen Satz an IP-Adressen erzwungen werden. Während die meisten Administratoren hauptsächlich ISAPI-Filterregeln für externe IP-Adressen konfigurieren, können Sie auch Regeln für interne Adressen konfigurieren. Alle IP-Adressen, die in den ISAPI-Filterregeln konfiguriert wurden, müssen den im Filter angegeben Regeln entsprechen. Je nach RequireSecurePort-Einstellung können nicht in der Datei angegebene Adressen möglicherweise eine Verbindung zu Team Foundation Server herstellen.
Der ISAPI-Filter verwendet eine AuthenticationFilter.ini-Datei für die Konfigurationseinstellungen. Sie müssen die Einstellungen dieser Datei Ihrer Bereitstellung entsprechend konfigurieren. Die Datei kann die folgenden Konfigurationsschlüssel und -werte verwenden:
Schlüssel |
Unterstützte Werte |
---|---|
RequireSecurePort |
True False |
ProxyIPList |
IPaddress (mehrere durch Semikolons getrennte Adressen möglich) |
SubnetList |
IPaddress/subnetmask (mehrere durch Semikolons getrennte Adressen möglich) |
[config] |
Abschnittsheader für die ISAPI-Filterdatei |
Die Schlüssel sind folgendermaßen weiter definiert:
RequireSecurePort Wenn Sie RequireSecurePort auf True festlegen, müssen alle Verbindungen HTTPS/SSL und die Digest- bzw. Standardauthentifizierung verwenden, es sei denn, sie gehören zu den in SubnetList angegebenen Adressen. Wenn Sie RequireSecurePort auf False festlegen, müssen nur die Verbindungen mit den in ProxyIPList angegebenen Adressen HTTPS/SSL und die Digest- bzw. Standardauthentifizierung verwenden.
ProxyIPList Die IP-Adressen, für die die Digest- oder Standardauthentifizierung erzwungen wird. Die einfachste Methode, sich unter diesem Schlüssel etwas vorzustellen, besteht in der Funktionsbeschreibung "Für diese Adressen nur Standard- oder Digestauthentifizierung erforderlich". Für die Adressen, die für diesen Schlüssel angegeben sind, ist die Verwendung der Digest- oder der Standardauthentifizierung und von HTTPS/SSL erforderlich. Dieser Schlüssel hat Vorrang vor SubnetList. Wenn der ProxyIPList-Schlüssel vorhanden ist, werden der SubnetList-Schlüssel und die zugehörigen Werte ignoriert.
SubnetList SubnetList enthält die IP-Adresse/Subnetzmaske-Paare, für die keine Digest- oder Standardauthentifizierung erzwungen werden soll. Die einfachste Methode, sich unter diesem Schlüssel etwas vorzustellen, besteht in der Funktionsbeschreibung "Für alle Adressen außer diesen Adressen ist die Verwendung der Standard- oder der Digestauthentifizierung erforderlich". Für die Adressen, die für diesen Schlüssel angegeben sind, ist die Verwendung der Digest- oder der Standardauthentifizierung und von HTTPS/SSL nicht erforderlich. Für jede Adresse, die nicht für diesen Schlüssel angegeben ist, muss die Digest- oder die Standardauthentifizierung verwendet werden. Wenn der ProxyIPList-Schlüssel im ISAPI-Filter vorhanden ist, werden der SubnetList-Schlüssel und die zugehörigen Werte ignoriert.
Siehe auch
Aufgaben
Konzepte
Team Foundation Server, HTTPS und SSL (Secure Sockets Layer)