Schützen von RDS-Anwendungen
Dieses Thema enthält Sicherheitsinformationen für RDS.
Wichtig
Ab Windows 8 und Windows Server 2012 sind RDS-Serverkomponenten nicht mehr im Windows-Betriebssystem enthalten (weitere Details finden Sie unter Windows 8 und Windows Server 2012 Compatibility Cookbook). RDS-Clientkomponenten werden in einer zukünftigen Version von Windows entfernt. Vermeiden Sie die Verwendung dieses Features in neuer Entwicklungsarbeit, und planen Sie, Anwendungen zu ändern, die derzeit dieses Feature verwenden. Anwendungen, die RDS verwenden, sollten zu WCF Data Servicemigrieren.
Microsoft Internet Explorer-Sicherheitsprobleme
Mit neuen Sicherheitsverbesserungen, die Microsoft Internet Explorer hinzugefügt wurden, sind einige ADO- und RDS-Objekte auf die Ausführung nur in einer Umgebung mit sicherem Modus beschränkt. Dies erfordert, dass Sie diese Probleme kennen, einschließlich verschiedener Zonen, Sicherheitsstufen, restriktives Verhalten, unsicherer Vorgänge und angepasster Sicherheitseinstellungen.
Sicherheit und Ihr Webserver
Wenn Sie das RDSServer.DataFactory-Objekt auf Ihrem Internetwebserver verwenden, denken Sie daran, dass dadurch ein potenzielles Sicherheitsrisiko entsteht. Externe Benutzer, die gültigen Datenquellennamen (DSN), Benutzer-ID und Kennwortinformationen erhalten, können Seiten schreiben, um jede Abfrage an diese Datenquelle zu senden. Wenn Sie einen eingeschränkteren Zugriff auf eine Datenquelle wünschen, können Sie die Registrierung aufheben und die RDSServer.DataFactory-objekt (msadcf.dll) löschen und stattdessen benutzerdefinierte Geschäftsobjekte mit hartcodierten Abfragen verwenden.
Weitere Informationen zu den Sicherheitsauswirkungen der Verwendung des RDSServer.DataFactory-Objekts finden Sie im Microsoft Security Bulletin MS99-025 auf der Microsoft Security-Website.
Client-Imitation und Sicherheit
Wenn die Kennwortauthentifizierung Eigenschaft für Ihren IIS-Webserver auf die Windows NT-Abfrage-/Antwortauthentifizierung (für Windows NT 4.0) oder die integrierte Windows-Authentifizierung (für Windows 2000) festgelegt ist, werden Geschäftsobjekte unter dem Sicherheitskontext des Clients aufgerufen. Dies ist ein neues Feature in RDS 1.5, das den Clientidentitätswechsel über HTTP zulässt. Wenn Sie in diesem Modus arbeiten, ist die Anmeldung am Webserver (IIS) nicht anonym, sondern verwendet die Benutzer-ID und das Kennwort, unter dem der Clientcomputer ausgeführt wird. Wenn die ODBC-DSNs für die Verwendung der vertrauenswürdigen Verbindung eingerichtet sind, erfolgt auch der Zugriff auf Datenbanken, z. B. SQL Server, im Sicherheitskontext des Clients. Dies funktioniert jedoch nur, wenn sich die Datenbank auf demselben Computer wie das IIS befindet; Die Clientanmeldeinformationen können nicht auf einen anderen Computer übertragen werden.
Beispielsweise ist ein Client, John Doe, mit der userid="JohnD" und dem password="<secret>" an einem Client-Computer angemeldet. John Doe führt eine browserbasierte Anwendung aus, die auf das RDSServer.DataFactory-objekt zugreifen muss, um ein Recordset- zu erstellen, indem eine SQL-Abfrage auf dem Computer "MyServer" ausgeführt wird, auf dem IIS ausgeführt wird. MyServer, ein System mit Windows NT Server 4.0, ist für die Verwendung der Windows NT Challenge/Response-Authentifizierung eingerichtet, der ODBC DSN hat "Vertrauenswürdige Verbindung verwenden" ausgewählt, und der Server enthält auch die SQL Server-Datenquelle. Wenn eine Anforderung auf dem Webserver empfangen wird, wird der Client zur Benutzer-ID und zum Kennwort aufgefordert. Daher wird die Anforderung bei MyServer registriert, da sie als von "JohnD"/"<geheim>" statt von IUSER_MyServer (was die Standardeinstellung ist, wenn die anonyme Kennwortauthentifizierung aktiviert ist) kommt. Ebenso wird beim Anmelden bei SQL Server "JohnD"/"<geheim>" verwendet.
Folglich kann der IIS Windows NT-Abfrage-/Antwortauthentifizierungsmodus HTML-Seiten erstellen, ohne dass der Benutzer explizit zur Eingabe der Benutzer-ID und kennwortinformationen aufgefordert wird, die für die Anmeldung bei der Datenbank erforderlich sind. Wenn die IIS-Standardauthentifizierung verwendet wird, wäre dies auch erforderlich.
Kennwortauthentifizierung
RDS kann mit einem IIS-Webserver kommunizieren, der in einem der drei Kennwortauthentifizierungsmodi ausgeführt wird: anonyme, einfache oder NT-Abfrage-/Antwortauthentifizierung (in Windows 2000 als integrierte Windows-Authentifizierung bezeichnet). Diese Einstellungen definieren, wie ein Webserver den Zugriff darauf steuert, z. B. dass ein Clientcomputer explizite Zugriffsberechtigungen auf dem NT-Webserver hat.