Sicherheitsarchitektur für die Websynchronisierung

MicrosoftSQL Server ermöglicht eine präzise Steuerung der Konfiguration der Websynchronisierungssicherheit. In diesem Thema wird eine umfassende Liste aller Komponenten bereitgestellt, die in eine Websynchronisierungskonfiguration einbezogen werden können, und Informationen zu den zwischen den Komponenten hergestellten Verbindungen. Verwenden Sie nach Möglichkeit die Windows-Authentifizierung.

Die folgende Abbildung zeigt alle möglichen Verbindungen, manche Verbindungen sind jedoch in einer bestimmten Topologie möglicherweise nicht erforderlich. Beispielsweise ist eine Verbindung zu einem FTP-Server nur erforderlich, wenn der Snapshot mithilfe von FTP übermittelt wird.

Komponenten und Verbindungen in der Websynchronisierung

In den folgenden Tabellen werden die in der Abbildung dargestellten Komponenten und Verbindungen beschrieben.

A. Windows-Benutzer, unter dem der Merge-Agent ausgeführt wird

Bei der Synchronisierung wird der Merge-Agent (A) beim Abonnenten gestartet. Der Merge-Agent kann von einem Auftragsschritt des SQL Server-Agents oder von einer eigenständigen benutzerdefinierten Anwendung gestartet werden. Wenn der Merge-Agent von einem Auftragsschritt des SQL Server-Agents gestartet wird, wird der Merge-Agent im Kontext eines von Ihnen angegebenen Windows-Benutzers ausgeführt. Wenn Sie keinen Windows-Benutzer angeben, wird der Merge-Agent im Kontext des Windows-Dienstkontos für den SQL Server-Agent ausgeführt.

Kontotyp

Stelle, an der das Konto angegeben wird

Windows-Benutzer

Transact-SQL: die Parameter @job_login und @job_password von sp_addmergepullsubscription_agent.

Replikationsverwaltungsobjekte (Replication Management Objects oder RMO): die Eigenschaften Login()()()() und Password()()()() für SynchronizationAgentProcessSecurity.

Windows-Dienstkonto für den SQL Server-Agent

SQL Server-Konfigurations-Manager

Eigenständige Anwendung

Der Merge-Agent wird im Kontext des Windows-Benutzers ausgeführt, von dem die Anwendung ausgeführt wird.

B. Verbindung mit dem Abonnenten

Der Merge-Agent stellt die Verbindung zum Abonnenten mithilfe der Windows-Authentifizierung oder der SQL Server-Authentifizierung her. Der Windows-Benutzer oder die SQL Server-Anmeldung, den bzw. die Sie angeben, muss einem Datenbankbenutzer zugeordnet werden, der Mitglied der festen Datenbankrolle dbowner in der Abonnementdatenbank ist.

HinweisHinweis

Die Windows-Authentifizierung wird immer dann verwendet, wenn der Merge-Agent von einem SQL Server-Agentauftrag aus gestartet wird. Die Windows-Authentifizierung wird auch beim programmgesteuerten Starten des Merge-Agents verwendet, es sei denn die SQL Server-Authentifizierung ist explizit angegeben.

Authentifizierungstyp

Stelle, an der die Authentifizierung angegeben wird

  • Windows-Authentifizierung.

Der Merge-Agent stellt Verbindungen im Kontext des Windows-Benutzers her, der für den Merge-Agent (A) angegeben ist.

Die SQL Server-Authentifizierung wird nur verwendet, wenn Folgendes angegeben wird:

RMO: SubscriberLogin und SubscriberPassword.

Merge-Agentbefehlszeile: -SubscriberLogin und -SubscriberLogin.

C. Verbindung zu einem ausgehenden Proxyserver

Geben Sie nur dann einen Windows-Benutzer für diese Verbindung an, wenn ein ausgehender Proxyserver den Zugriff auf das interne Netzwerk des Abonnenten einschränkt.

Authentifizierungstyp

Stelle, an der die Authentifizierung angegeben wird

Windows-Authentifizierung

RMO: InternetProxyLogin und InternetProxyPassword mit InternetProxyServer.

Merge-Agentbefehlszeile: -InternetProxyLogin und -InternetProxyPassword mit -InternetProxyServer.

D. Verbindung zu IIS

Nach Herstellen der Verbindung zum Abonnenten und Extrahieren von Änderungen aus der Abonnementdatenbank führt der Merge-Agent eine HTTPS-Anforderung an Microsoft Internetinformationsdienste (Internet Information Services, IIS) aus und lädt Datenänderungen als XML-Nachricht herunter. Der Merge-Agent muss über eine Anmeldeberechtigung für IIS verfügen.

Authentifizierungstyp

Stelle, an der die Authentifizierung angegeben wird

Die Standardauthentifizierung wird verwendet, wenn Folgendes angegeben wird:

Transact-SQL: die Parameter @internet_login und @internet_password von sp_addmergepullsubscription_agent.

RMO: InternetLogin und InternetPassword.

Merge-Agentbefehlszeile: -InternetLogin und -InternetPassword.

Der Wert 1 für die integrierte Authentifizierung wird verwendet, wenn Folgendes angegeben wird:

Der Merge-Agent stellt Verbindungen im Kontext des Windows-Benutzers her, der für den Merge-Agent (A) angegeben ist.

1 Die integrierte Authentifizierung kann nur verwendet werden, wenn alle Computer derselben Domäne oder aber mehreren Domänen angehören, zwischen denen Vertrauensstellungen bestehen.

HinweisHinweis

Die Delegierung ist erforderlich, wenn Sie die integrierte Authentifizierung verwenden. Es wird empfohlen, die Standardauthentifizierung und SSL für Verbindungen zwischen Abonnenten und IIS zu verwenden.

E. Verbindung mit dem Verleger

Die Komponenten SQL Server-Replikationsüberwachung und -Mergereplikationssynchronisierung werden auf dem Computer gehostet, auf dem IIS ausgeführt wird. Diese Komponenten führen die folgenden Aktionen aus:

  • Entgegen nehmen der HTTPS-Anforderung, die im Abschnitt "D. Verbindung zu IIS" beschrieben wird.

  • Herstellen einer SQL-Verbindung zur Veröffentlichungsdatenbank und Anwenden der hochgeladenen Änderungen auf die Veröffentlichungsdatenbank.

  • Extrahieren der heruntergeladenen Änderungen und Zurücksenden einer HTTPS-Antwort an den Merge-Agent.

Die Mergereplikationssynchronisierung stellt die Verbindung zum Verleger entweder mithilfe der Windows-Authentifizierung oder der SQL Server-Authentifizierung her. Die Windows-Benutzer- oder SQL Server-Anmeldung, die Sie angeben, muss folgende Kriterien erfüllen:

  • Sie muss in der Veröffentlichungszugriffsliste (Publication Access List oder PAL) enthalten sein. Weitere Informationen finden Sie unter Sichern des Verlegers.

  • Sie muss mit einem Benutzer in der Veröffentlichungsdatenbank verknüpft sein.

Authentifizierungstyp

Stelle, an der die Authentifizierung angegeben wird

Die Windows-Authentifizierung wird verwendet, wenn Folgendes angegeben wird:

Der Merge-Agent stellt Verbindungen zum Verleger im Kontext des Windows-Benutzers her, der für die Verbindung zu IIS (D) angegeben ist. Wenn sich der Verleger und IIS auf verschiedenen Computern befinden und die integrierte Authentifizierung für die Verbindung (D) verwendet wird, müssen Sie die Kerberos-Delegierung auf dem Computer aktivieren, auf dem IIS ausgeführt wird. Weitere Informationen finden Sie in der Windows-Dokumentation.

Die SQL Server-Authentifizierung wird verwendet, wenn Folgendes angegeben wird:

Transact-SQL: die Parameter @publisher_login und @publisher_password von sp_addmergepullsubscription_agent.

RMO: PublisherLogin und PublisherPassword.

Merge-Agentbefehlszeile: -PublisherLogin und -PublisherPassword.

F. Verbindung zum Verteiler

Die Mergereplikationssynchronisierung, die auf dem Computer mit IIS gehostet wird, stellt auch Verbindungen zum Verteiler her. Die Mergereplikationssynchronisierung stellt die Verbindung zum Verteiler entweder mithilfe der Windows-Authentifizierung oder der SQL Server-Authentifizierung her. Die Windows-Benutzer- oder SQL Server-Anmeldung, die Sie angeben, muss folgende Kriterien erfüllen:

  • Sie muss in der Veröffentlichungszugriffsliste (Publication Access List oder PAL) enthalten sein. Weitere Informationen finden Sie unter Sichern des Verlegers.

  • Sie muss mit einem Datenbankbenutzer in der Verteilungsdatenbank verknüpft sein. Der Benutzer kann der Guest-Benutzer sein.

Die Snapshotfreigabe befindet sich normalerweise auf dem Verteiler. Weitere Informationen zu Snapshotfreigaben finden Sie in Abschnitt "H. Zugriff auf die Snapshotfreigabe" weiter unten in diesem Thema.

  • Authentifizierungstyp

Stelle, an der die Authentifizierung angegeben wird

Die Windows-Authentifizierung wird verwendet, wenn Folgendes angegeben wird:

Der Merge-Agent stellt Verbindungen zum Verteiler im Kontext des Windows-Benutzers her, der für die Verbindung zu IIS (D) angegeben ist. Wenn sich der Verteiler und IIS auf verschiedenen Computern befinden und die integrierte Authentifizierung für die Verbindung (D) verwendet wird, müssen Sie die Kerberos-Delegierung auf dem Computer aktivieren, auf dem IIS ausgeführt wird. Weitere Informationen finden Sie in der Windows-Dokumentation.

Die SQL Server-Authentifizierung wird verwendet, wenn Folgendes angegeben wird:

Transact-SQL: die Parameter @distributor_login und @distributor_password von sp_addmergepullsubscription_agent.

RMO: DistributorLogin und DistributorPassword

Merge-Agentbefehlszeile: -DistributorLogin und -DistributorPassword.

G. Verbindung zu einem FTP-Server

Geben Sie nur dann einen Windows-Benutzer für diese Verbindung an, wenn Sie Snapshotdateien von einem FTP-Server statt von einem UNC-Speicherort auf den Computer herunterladen, auf dem IIS ausgeführt wird, bevor Sie den Snapshot auf den Abonnenten anwenden. Weitere Informationen finden Sie unter Übertragen von Snapshots über FTP.

Authentifizierungstyp

Stelle, an der die Authentifizierung angegeben wird

Windows-Authentifizierung

Transact-SQL: die Parameter @ftp_login und @ftp_password von sp_addmergepullsubscription_agent.

RMO: FtpLogin und FtpPassword.

H. Zugriff auf die Snapshotfreigabe

Auf die Snapshotfreigabe wird von der Mergereplikationssynchronisierung zugegriffen, die auf dem Computer mit IIS gehostet wird.

Authentifizierungstyp

Stelle, an der die Authentifizierung angegeben wird

Windows-Authentifizierung

Der Merge-Agent greift im Kontext des Windows-Benutzers, der für die Verbindung zu IIS (D) angegeben ist, auf die Snapshotfreigabe zu. Wenn sich die Snapshotfreigabe und IIS auf verschiedenen Computern befinden und die integrierte Authentifizierung für die Verbindung (D) verwendet wird, müssen Sie die Kerberos-Delegierung auf dem Computer aktivieren, auf dem IIS ausgeführt wird. Weitere Informationen finden Sie in der Windows-Dokumentation.

I. Anwendungspoolkonto für IIS

Dieses Konto wird verwendet, um den W3wp.exe-Prozess auf dem Computer zu starten, auf dem IIS für Windows Server 2003 ausgeführt wird, oder aber den Dllhost.exe-Prozess unter Windows 2000. Diese Prozesse hosten Anwendungen auf dem Computer, auf dem IIS ausgeführt wird, etwa die SQL Server-Replikationsüberwachung und -Mergereplikationssynchronisierung. Dieses Konto muss über Lese- und Ausführungsberechtigungen für die folgenden Replikation-DLLs auf dem Computer verfügen, auf dem IIS ausgeführt wird:

  • Replisapi

  • Replrec

  • Replprov

  • Msgprox

  • Xmlsub

Das Konto muss auch Bestandteil der IIS_WPG-Gruppe sein. Weitere Informationen finden Sie im Abschnitt "Festlegen von Berechtigungen für die SQL Server-Replikationsüberwachung" unter Vorgehensweise: Konfigurieren von IIS für die Websynchronisierung.

Kontotyp

Stelle, an der das Konto angegeben wird

Beliebiger Windows-Benutzer, der über die erforderlichen Berechtigungen verfügt.

Internetinformationsdienste-Manager (IIS). Standardmäßig wird unter Windows Server 2003 das Netzwerkdienstkonto verwendet.