Elemente der Replikationssicherheit

Aktualisiert: 12. Dezember 2006

Beim Sicherstellen der Sicherheit beliebiger Softwaresysteme sind folgende drei Aspekte zu berücksichtigen: Authentifizierung, Autorisierung und Verschlüsselung:

  • Als Authentifizierung wird der Vorgang bezeichnet, bei dem eine Entität (in diesem Kontext normalerweise ein Computer) überprüft, dass eine andere Entität, die auch als Prinzipal bezeichnet wird (normalerweise ein anderer Computer oder Benutzer) tatsächlich das ist, was sie vorgibt.
  • Als Autorisierung wird der Vorgang bezeichnet, bei dem einem authentifizierten Prinzipal Zugriff auf Ressourcen gewährt wird, beispielsweise auf eine Datei in einem Dateisystem oder eine Tabelle in einer Datenbank.
  • Als Verschlüsselung wird der Vorgang bezeichnet, bei dem Daten in eine Form konvertiert werden, die ohne einen speziellen Schlüssel nicht gelesen werden kann. Auf diese Weise wird sichergestellt, dass nur der vorgesehene Empfänger die Daten lesen kann.

Authentifizierung und Autorisierung

Für die Replikationssicherheit wird mithilfe von Authentifizierung und Autorisierung der Zugriff auf replizierte Datenbankobjekte sowie auf die Computer und Agents gesteuert, die in die Replikationsverarbeitung involviert sind. Hierzu werden drei Mechanismen herangezogen:

  • Agentsicherheit
    Das Sicherheitsmodell des Replikations-Agents ermöglicht die präzise Steuerung der Konten, unter denen Replikations-Agents ausgeführt werden und Verbindungen herstellen. Ausführliche Informationen zum agentbezogenen Sicherheitsmodell finden Sie unter Sicherheitsmodell des Replikations-Agents. Informationen zum Festlegen von Anmeldungen und Kennwörtern für Agents finden Sie unter Verwalten von Anmeldeinformationen und Kennwörtern bei der Replikation.
  • Verwaltungsrollen
    Stellen Sie sicher, dass für Replikationsinstallation, -wartung und -verarbeitung die richtigen Server- und Datenbankrollen verwendet werden. Weitere Informationen finden Sie unter Sicherheitsrollenanforderungen für die Replikation.
  • Publikationszugriffsliste (Publication Access List, PAL)
    Gewähren Sie den Zugriff auf Publikationen über die PAL. Die PAL funktioniert ähnlich wie eine Microsoft Windows-Zugriffssteuerungsliste. Wenn ein Abonnent eine Verbindung mit dem Verleger oder Verteiler herstellt und den Zugriff auf eine Publikation anfordert, werden die vom Agent übermittelten Authentifizierungsinformationen anhand der PAL überprüft. Weitere Informationen und bewährte Methoden hinsichtlich der PAL finden Sie unter Sichern des Verlegers.

Verschlüsselung

Durch die Replikation werden keine Daten verschlüsselt, die in Tabellen gespeichert bzw. über Netzwerkverbindungen übermittelt werden. Dies ist so beabsichtigt, da auf der Transportebene eine Reihe von Technologien zur Verschlüsselung zur Verfügung stehen, einschließlich dieser Technologien gemäß Industriestandard: Virtuelles Privates Netzwerk (VPN), Secure Sockets Layer (SSL) und IP Security (IPSec). Es empfiehlt sich, eine dieser Verschlüsselungsmethoden für die Verbindungen zwischen Computern in einer Replikationstopologie zu verwenden. Weitere Informationen finden Sie unter Verschlüsseln von Verbindungen zu SQL Server. Informationen zum Verwenden von VPN und SSL für die Replikation von Daten über das Internet finden Sie unterAbsichern der Replikation über das Internet.

Wenn Sie SSL zum Sichern der Verbindungen zwischen Computern in einer Replikationstopologie verwenden, geben Sie den Wert 1 oder 2 für den -EncryptionLevel-Parameter der einzelnen Replikations-Agents an (der Wert 2 wird empfohlen). Mit dem Wert 1 wird angegeben, dass eine Verschlüsselung verwendet wird. Der Agent überprüft aber nicht, ob das SSL-Serverzertifikat von einem vertrauenswürdigen Aussteller signiert wurde. Mit dem Wert 2 wird angegeben, dass das Zertifikat überprüft wurde. Agentparameter können in Agentprofilen und in der Befehlszeile angegeben werden. Weitere Informationen finden Sie unter:

Die Replikation verhält sich in Bezug auf Datenbankhauptschlüssel, die zur Verschlüsselung von Daten herangezogen werden, folgendermaßen:

  • Wenn in einer in der Replikation involvierten Datenbank (eine Publikationsdatenbank, Abonnementdatenbank oder Verteilungsdatenbank) ein Hauptschlüssel vorhanden ist, werden die Agentkennwörter in dieser Datenbank mithilfe eines symmetrischen Schlüssels der SQL Server 2005-Datenbank ver- und entschlüsselt. Wenn Hauptschlüssel zum Einsatz kommen, empfiehlt es sich, in jeder in die Replikation involvierten Datenbank jeweils einen Hauptschlüssel zu erstellen. Wenn in einer in der Replikation involvierten Datenbank kein Hauptschlüssel vorhanden ist, werden die Agentkennwörter in dieser Datenbank mithilfe des in SQL Server 2000 verfügbaren Algorithmus ver- und entschlüsselt. Weitere Informationen zum Erstellen von Hauptschlüsseln finden Sie unterCREATE MASTER KEY (Transact-SQL).
  • Bei der Replikation werden Hauptschlüssel nicht repliziert. Wenn Sie den Hauptschlüssel auf dem Abonnenten benötigen, müssen Sie ihn mit BACKUP MASTER KEY aus der Publikationsdatenbank exportieren und ihn dann mit RESTORE MASTER KEY in die Abonnementdatenbank importieren. Weitere Informationen finden Sie unter BACKUP MASTER KEY (Transact-SQL) und RESTORE MASTER KEY (Transact-SQL).
  • Wenn für eine anfügbare Abonnementdatenbank ein Hauptschlüssel definiert wurde, geben Sie das Kennwort für den Hauptschlüssel mithilfe des @db_master_key_password-Parameters von sp_attachsubscription (Transact-SQL) an. Auf diese Weise kann die Datenbank auf dem Abonnenten angefügt werden.

Weitere Informationen zur Verschlüsselung und zu Hauptschlüsseln finden Sie unter Verschlüsselungshierarchie.

Mithilfe der Replikation können Sie verschlüsselte Spaltendaten veröffentlichen. Zum Entschlüsseln und Verwenden dieser Daten auf dem Abonnenten muss der zum Verschlüsseln der Daten auf dem Verleger verwendete Schlüssel auch auf dem Abonnenten vorhanden sein. Die Replikation bietet keinen sicheren Mechanismus zum Transportieren von Verschlüsselungsschlüsseln. Sie müssen den Verschlüsselungsschlüssel auf dem Abonnenten manuell neu erstellen. Weitere Informationen finden Sie unter Vorgehensweise: Replizieren von Daten in verschlüsselten Spalten (SQL Server Management Studio).

Filtern von veröffentlichten Daten

Neben der Verwendung von Authentifizierung und Autorisierung zur Steuerung des Zugriffs auf replizierte Daten und Objekte bietet die Replikation zwei Optionen, mit denen gesteuert werden kann, welche Daten auf einem Abonnenten zur Verfügung stehen: die Filterung von Spalten und die Filterung von Zeilen. Weitere Informationen zur Filterung finden Sie unter Filtern von veröffentlichten Daten.

Bei der Definition eines Artikels können Sie lediglich die Spalten veröffentlichen, die für die Publikation relevant sind, und diejenigen auslassen, die nicht relevant sind oder vertrauliche Daten enthalten. Wenn Sie beispielsweise die Customer-Tabelle aus der AdventureWorks-Datenbank für Vertriebsmitarbeiter im Außendienst veröffentlichen, können Sie die AnnualSales-Spalte auslassen, die möglicherweise nur für leitende Mitarbeiter im Unternehmen relevant ist.

Durch das Filtern von veröffentlichten Daten können Sie den Zugriff auf Daten einschränken und die Daten angeben, die auf dem Abonnenten zur Verfügung stehen. Sie können beispielsweise die Customer-Tabelle so filtern, dass Geschäftspartner nur die Informationen zu den Kunden erhalten, deren ShareInfo-Spalte den Wert "yes" aufweist. Bei der Mergereplikation sind Sicherheitsaspekte zu berücksichtigten, wenn Sie einen parametrisierten Filter verwenden, der HOST_NAME() enthält. Weitere Informationen finden Sie im Abschnitt zum Filtern mit HOST_NAME() unter Parametrisierte Zeilenfilter.

Siehe auch

Konzepte

Bewährte Methoden für die Replikationssicherheit

Andere Ressourcen

Überlegungen zur Sicherheit bei der Replikation

Hilfe und Informationen

Informationsquellen für SQL Server 2005

Änderungsverlauf

Version Verlauf

12. Dezember 2006

Neuer Inhalt: