Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Bewährte Methoden, die Sie befolgen sollten, um vertrauliche Daten vollständig zu schützen, wenn Sie Anwendungen verwenden oder entwickeln, die den Microsoft BizTalk-Adapter für SQL Server nutzen.
Bewährte Methoden für die Sicherheit für die Verbindung zwischen dem SQL-Adapter und der SQL Server-Datenbank
Der SQL-Adapter bietet keine Unterstützung, um die Kommunikation zwischen dem Server und der SQL Server-Datenbank zu sichern. Sie müssen einen Mechanismus bereitstellen, um ein angemessenes Maß an Sicherheit für daten zu gewährleisten, die zwischen dem Adapter und der SQL Server-Datenbank ausgetauscht werden.
Aus Sicherheitsgründen lässt der SQL-Adapter nicht zu, dass Sie Benutzernamenkennwortanmeldeinformationen für die SQL Server-Datenbank im Verbindungs-URI angeben. Im restlichen Teil dieses Themas finden Sie alternative Methoden zum Bereitstellen von Anmeldeinformationen für den SQL-Adapter.
Mit dem SQL-Adapter können Sie auch die Windows-Authentifizierung verwenden, während Sie eine Verbindung mit SQL Server herstellen, um Metadaten zu generieren und Vorgänge auszuführen, entweder über Visual Studio oder BizTalk Server. Bevor Sie die Windows-Authentifizierung verwenden, müssen Sie den Windows-Benutzer als Benutzer in SQL Server Management Studio hinzufügen. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit SQL Server mithilfe der Windows-Authentifizierung mit dem SQL-Adapter.
Weitere Informationen finden Sie unter Sicherheit zwischen SQL Server und Adapter.
Bewährte Methoden für die Verwendung des SQL-Adapters mit BizTalk Server
Mit dem SQL-Adapter können Sie keine Benutzernamenkennwortanmeldeinformationen für die SQL Server-Datenbank im Verbindungs-URI angeben.
Wenn Sie das Add-In "Adapterdienst nutzen" verwenden, geben Sie auf der Registerkarte "Sicherheit" des Dialogfelds "Adapter konfigurieren" die Kennwortanmeldeinformationen für die SQL Server-Datenbank ein.
Wenn Sie den BizTalk-WCF-Custom-Adapter für den SQL-Adapter auf einem Sendeport konfigurieren, geben Sie den Benutzernamen und das Passwort für die SQL Server-Datenbank über die Registerkarte Anmeldeinformationen im Dialogfeld WCF-Custom Transporteigenschaften ein.
Wenn Sie den BizTalk-WCF-Custom-Adapter für den SQL-Adapter an einem Empfangsspeicherort konfigurieren, geben Sie den Benutzernamen und das Passwort für die SQL Server-Datenbank auf der Registerkarte "Sonstige" des Dialogfelds "WCF-Custom Transporteigenschaften" ein.
Beim Verwenden des Add-Ins "Adapterdienst nutzen" können Sie für das Generieren von Metadaten, das Konfigurieren des Sendeports oder des Empfangsports ebenfalls die Windows-Authentifizierung verwenden. Bevor Sie die Windows-Authentifizierung verwenden, müssen Sie den Windows-Benutzer als Benutzer in SQL Server Management Studio hinzufügen. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit SQL Server mithilfe der Windows-Authentifizierung mit dem SQL-Adapter.
Weitere Informationen finden Sie unter Sicherheit mit dem SQL-Adapter und BizTalk Server.
Bewährte Methoden für die Verwendung des SQL-Adapters mit Programmierlösungen
Es ist manchmal erforderlich, die Anmeldeinformationen von Benutzername und Passwort für die SQL Server-Datenbank im Verbindungs-URI anzugeben; wenn möglich, sollten Sie dies jedoch vermeiden.
Wenn Sie das Visual Studio-Plug-In "Adapterdienstreferenz hinzufügen" verwenden, geben Sie die Kennwortanmeldeinformationen für die SQL Server-Datenbank auf der Registerkarte "Sicherheit " des Dialogfelds "Adapter konfigurieren " ein.
Verwenden Sie in der WCF-Kanalmodell-Programmierung die Eigenschaft "Anmeldeinformationen" auf der Kanalfactory, um den Benutzernamen und das Passwort für die SQL Server-Datenbank festzulegen.
Verwenden Sie in der WCF-Dienstmodellprogrammierung die ClientCredentials-Eigenschaft auf dem WCF-Client, um die Anmeldeinformationen für das Benutzernamenkennwort für die SQL Server-Datenbank festzulegen.
Wenn eine Anwendung, die den SQL-Adapter nutzt, Nachrichten sendet, die vertrauliche Datenbankinformationen über eine Prozessgrenze an einen anderen Dienst oder Client enthalten, stellen Sie sicher, dass diese Nachrichten über ausreichende Sicherheitsmaßnahmen verfügen, um in Ihrer Umgebung einen angemessenen Datenschutz bereitzustellen.
Bei Verwendung des Add Adapter Service Reference Plug-Ins oder herstellen einer Verbindung mit SQL Server über eine .NET-Anwendung können Sie auch die Windows-Authentifizierung verwenden. Bevor Sie die Windows-Authentifizierung verwenden, müssen Sie den Windows-Benutzer als Benutzer in SQL Server Management Studio hinzufügen. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit SQL Server mithilfe der Windows-Authentifizierung mit dem SQL-Adapter.
Weitere Informationen finden Sie unter Sichere Programmierung mit dem SQL-Adapter.
Bewährte Methoden für die Sicherheit beim Hosten des SQL-Adapters in IIS
Das Hosten des SQL-Adapters in Microsoft Internet Information Services (IIS) als Webdienst macht Vorgänge verfügbar, die vom SQL-Adapter für Webclients angezeigt werden. Bei diesen Vorgängen kann es sich um den Austausch vertraulicher Daten über das Internet handeln, daher sollten Sie Maßnahmen ergreifen, um sicherzustellen, dass diese Daten so sicher wie möglich sind.
WCF stellt zwei Standardbindungen für den HTTP-Transport bereit: Der BasicHttpBinding bietet einfachen HTTP-Transport ohne Sicherheitsmechanismen; WSHttpBinding unterstützt sowohl Sicherheitsmechanismen auf Transportebene als auch Auf Nachrichtenebene.
Sie können entweder das BasicHttpBinding über eine HTTPS-Verbindung verwenden oder WSHttpBinding verwenden, um Ihre Daten zu schützen. Das WCF LOB Adapter SDK enthält den WCF-Assistenten für die Entwicklung des LOB-Adapterdiensts, um einen WCF-Dienst für LOB-Artefakte zu generieren. Dieser Assistent unterstützt nur die Verwendung von BasicHttpBinding.
Sie können auch eine benutzerdefinierte HTTP-Bindung entwickeln, um zusätzliche Sicherheitsmechanismen zu nutzen, die Ihre Umgebung bereitstellt. Weitere Informationen zu den von WCF bereitgestellten Sicherheitsfeatures finden Sie unter Sichern von Diensten und Clients.
Beim Hosten des SQL-Adapters als Webdienst sollten Webentwickler Maßnahmen ergreifen, um zu verhindern, dass von Benutzern eingegebene Zeichenfolgen direkt an die SQL Server-Datenbank übergeben werden. Wenn ein Benutzer beispielsweise einen Wert eingeben kann, der Teil einer WHERE-Klausel in einer SELECT-Anweisung ist, sollte die Eingabezeichenfolge gescannt werden, um zu verhindern, dass der Anweisung weitere Befehle hinzugefügt werden.
Bewährte Methoden für wcf-Diagnoseablaufverfolgung und Nachrichtenprotokollierung
WCF unterstützt die diagnostische Ablaufverfolgung und die Nachrichtenprotokollierung. Sie konfigurieren die Diagnoseablaufverfolgung und die Nachrichtenprotokollierung entweder über Konfigurationsdateien oder mithilfe der Windows-Verwaltungsinstrumentation (Windows Management Instrumentation, WMI). Abhängig von den von Ihnen festgelegten Konfigurationsoptionen kann die WCF-Diagnoseablaufverfolgung oder Die Nachrichtenprotokollierung vertrauliche Informationen an Protokolldateien ausgeben, wo sie möglicherweise von nicht autorisierten Benutzern beobachtet werden können.
Folgen Sie den Empfehlungen in der WCF-Dokumentation, um potenzielle Sicherheitsbedrohungen zu mindern, die durch Aktivieren dieser Features verfügbar gemacht werden. Sie sollten mindestens die folgenden bewährten Methoden für die Diagnoseablaufverfolgung und die Nachrichtenprotokollierung beachten:
Aktivieren Sie die Ablaufverfolgung "ausführlich" oder "Informationen" in einer Produktionsumgebung nicht. Dies kann zu Leistungsbeeinträchtigungen führen. Jedoch müssen Sie die Protokollierung von „Warnung“ und „Fehler“ in einer Produktionsumgebung aktivieren. Wenn Sie die Ablaufverfolgung aktivieren, müssen Sie geeignete Sicherheitsmaßnahmen ergreifen, um Ihre Daten zu schützen. Weitere Informationen finden Sie in der WCF-Dokumentation.
Stellen Sie sicher, dass Protokolldateien und Konfigurationsdateien durch Zugriffssteuerungslisten (Access Control Lists, ACLs) geschützt sind.
Die folgenden Warnungen gelten speziell für die Nachrichten, die zwischen einer Clientanwendung und dem SQL-Adapter ausgetauscht werden:
Die WCF-Diagnoseablaufverfolgung kann den Header (aber nicht den Textkörper) von Nachrichten protokollieren, die mit dem SQL-Adapter ausgetauscht werden. Da sich die Nachrichtenaktion im Nachrichtenkopf befindet, werden dadurch die Vorgänge angezeigt, die vom Client auf dem SQL-Adapter aufgerufen werden.
Wenn die WCF-Nachrichtenprotokollierung aktiviert ist und
logMessagesAtServiceLeveltrueist, wird der Nachrichtenkopf (aber nicht der Nachrichtentext) von Nachrichten, die zwischen dem Adapterclient und dem SQL-Adapter ausgetauscht werden, protokolliert. Da sich die Nachrichtenaktion im Nachrichtenkopf befindet, werden dadurch die Vorgänge angezeigt, die der Client auf dem SQL-Adapter aufgerufen hat. WennlogEntireMessageauchtrueist, wird der Nachrichtentext protokolliert. Dadurch können vertrauliche Datenbankinformationen offengelegt werden.Weitere Informationen zur Verbesserung der Sicherheit beim Aktivieren der Diagnoseablaufverfolgung finden Sie unter Sicherheitsbedenken und nützliche Tipps für die Ablaufverfolgung. Weitere Informationen zur Verbesserung der Sicherheit beim Aktivieren der Nachrichtenprotokollierung finden Sie unter Sicherheitsbedenken für die Nachrichtenprotokollierung.