Anzeigen und Ändern von Replikationssicherheitseinstellungen

In diesem Thema wird beschrieben, wie die Replikationssicherheitseinstellungen in SQL Server 2012 mit SQL Server Management Studio, Transact-SQL oder Replikationsverwaltungsobjekten (RMO) angezeigt und geändert werden. Die Verbindung des Protokolllese-Agents mit dem Verleger ist beispielsweise als SQL Server-Authentifizierung festgelegt, und Sie möchten Sie zu Integrierte Windows-Authentifizierung ändern, oder Sie müssen die zum Ausführen eines Agentauftrags verwendeten Anmeldeinformationen ändern, weil sich das Kennwort eines Windows-Kontos geändert hat. Informationen zu den für die einzelnen Agents erforderlichen Berechtigungen finden Sie unter Sicherheitsmodell des Replikations-Agents.

In diesem Thema

  • Vorbereitungen:

    Einschränkungen

    Sicherheit

  • So zeigen Sie Replikationssicherheitseinstellungen an und ändern sie mit:

    SQL Server Management Studio

    Transact-SQL

    Replikationsverwaltungsobjekte (RMO)

  • Nachverfolgung: Nach dem Ändern der Replikationssicherheitseinstellungen

Vorbereitungen

Einschränkungen

  • Welche gespeicherten Prozeduren Sie verwenden, hängt vom Typ des Agents und vom Typ der Serververbindung ab.

  • Welche RMO-Klassen und -Eigenschaften verwendet werden, hängt vom Agenttyp und vom Typ der Serververbindung ab.

Sicherheit

Aus Sicherheitsgründen werden die eigentlichen Werte der Kennwörter in Resultsets maskiert, die von den gespeicherten Replikationsprozeduren zurückgegeben werden.

Berechtigungen

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Top]

Verwendung von SQL Server Management Studio

Sie können die Sicherheitseinstellungen in den folgenden Dialogfeldern anzeigen und ändern:

  1. Im Dialogfeld Replikationskennwörter aktualisieren, das über den Ordner Replikation von SQL Server Management Studio verfügbar ist. Wenn Sie das Kennwort eines SQL Server- oder Windows-Kontos auf einem Server der Replikationstopologie ändern, verwenden Sie am besten dieses Dialogfeld, anstatt die Kennwörter jedes Agents, der dieses Konto verwendet, einzeln zu aktualisieren. Wenn jedoch Agents dasselbe Konto auf mehreren Servern verwenden, müssen Sie mit jedem Server eine Verbindung herstellen und das Kennwort ändern. Das Kennwort wird überall aktualisiert, wo es die Replikation verwendet. Das Kennwort wird nicht an anderen Orten, wie z. B. auf Verbindungsservern, aktualisiert.

  2. Auf der Seite Agentsicherheit des Dialogfelds Veröffentlichungseigenschaften - <Veröffentlichung>. Weitere Informationen zum Zugreifen auf dieses Dialogfeld finden Sie unter Anzeigen und Ändern von Veröffentlichungseigenschaften.

  3. Im Dialogfeld Abonnementeigenschaften - <Abonnement>. Weitere Informationen zum Zugreifen auf dieses Dialogfeld finden Sie unter Anzeigen und Ändern der Eigenschaften von Pushabonnements und Anzeigen und Ändern der Eigenschaften von Pullabonnements.

  4. In den Dialogfeldern Verteilereigenschaften - <Verteiler> und Eigenschaften der Verteilungsdatenbank - <Datenbank>. Weitere Informationen zum Zugreifen auf diese Dialogfelder finden Sie unter Anzeigen und Ändern der Verteiler- und Verlegereigenschaften.

  5. Im Dialogfeld Verlegereigenschaften - <Verleger>. Weitere Informationen zum Zugreifen auf dieses Dialogfeld finden Sie unter Anzeigen und Ändern der Verteiler- und Verlegereigenschaften.

So ändern Sie das Kennwort für ein Konto, das von einem oder mehreren Agent(s) verwendet wird

  1. Wenn es sich um ein SQL Server-Konto handelt, wird über dieses Dialogfeld auch das Kennwort für das SQL Server-Konto geändert. Wenn es sich um ein Windows-Konto handelt, müssen Sie zuerst das Kennwort in Windows ändern. Weitere Informationen finden Sie in der Windows-Dokumentation.

    HinweisHinweis

    Wenn Sie ein Replikationskennwort geändert haben, müssen Sie jeden Agent beenden und neu starten, der das Kennwort verwendet, damit die Änderungen wirksam werden.

  2. Stellen Sie in SQL Server Management Studio eine Verbindung mit dem Server her, und erweitern Sie dann den Serverknoten.

  3. Klicken Sie mit der rechten Maustaste auf den Ordner Replikation, und klicken Sie dann auf Replikationskennwörter aktualisieren.

  4. Geben Sie im Dialogfeld Replikationskennwörter aktualisieren das Konto und das neue Kennwort an.

  5. Klicken Sie auf OK.

So ändern Sie die Sicherheitseinstellungen für den Momentaufnahme-Agent

  1. Klicken Sie auf der Seite Agentsicherheit des Dialogfelds Veröffentlichungseigenschaften - <Veröffentlichung> auf die Schaltfläche Sicherheitseinstellungen neben dem Textfeld Momentaufnahme-Agent.

  2. Geben Sie im Dialogfeld Sicherheit für den Momentaufnahme-Agent das Konto an, unter dem der Agent ausgeführt werden soll.

    • Geben Sie im Textfeld Agent-Konto ein neues Windows-Konto ein.

    • Geben Sie in den Textfeldern Kennwort und Kennwort bestätigen ein neues, sicheres Kennwort ein.

  3. Geben Sie den Kontext an, in dem der Agent vom Verteiler aus eine Verbindung mit dem Verleger herstellen soll. Wenn Sie Folgende SQL Server-Anmeldung verwenden auswählen, müssen Sie auch einen Anmeldenamen angeben:

    • Geben Sie einen Anmeldenamen in das Textfeld Anmeldung ein.

    • Geben Sie in den Textfeldern Kennwort und Kennwort bestätigen ein neues, sicheres Kennwort ein.

    HinweisHinweis

    Wenn es sich beim Verleger um einen Oracle-Verleger handelt, wird der Verbindungskontext im Dialogfeld Verteilereigenschaften - <Verteiler> angegeben. Die Prozedur zum Ändern des Kontexts finden Sie weiter unten in diesem Thema.

  4. Klicken Sie auf OK.

So ändern Sie die Sicherheitseinstellungen für den Protokolllese-Agent

  1. Klicken Sie auf der Seite Agentsicherheit des Dialogfelds Veröffentlichungseigenschaften - <Veröffentlichung> auf die Schaltfläche Sicherheitseinstellungen neben dem Textfeld Protokolllese-Agent.

  2. Geben Sie im Dialogfeld Sicherheit für den Protokolllese-Agent das Konto an, unter dem der Agent ausgeführt werden soll.

    • Geben Sie im Textfeld Agent-Konto ein neues Windows-Konto ein.

    • Geben Sie in den Textfeldern Kennwort und Kennwort bestätigen ein neues, sicheres Kennwort ein.

  3. Geben Sie den Kontext an, in dem der Agent vom Verteiler aus eine Verbindung mit dem Verleger herstellen soll. Wenn Sie Folgende SQL Server-Anmeldung verwenden auswählen, müssen Sie auch einen Anmeldenamen angeben:

    • Geben Sie einen Anmeldenamen in das Textfeld Anmeldung ein.

    • Geben Sie in den Textfeldern Kennwort und Kennwort bestätigen ein neues, sicheres Kennwort ein.

    HinweisHinweis

    Wenn es sich beim Verleger um einen Oracle-Verleger handelt, wird der Verbindungskontext im Dialogfeld Verteilereigenschaften - <Verteiler> angegeben. Ändern Sie den Kontext wie in der nächsten Prozedur beschrieben.

  4. Klicken Sie auf OK.

    HinweisHinweis

    Für jede veröffentlichte Datenbank gibt es einen Protokolllese-Agent. Wenn Sie die Sicherheitseinstellungen eines Agents einer Veröffentlichung ändern, wirkt sich dies auf alle Veröffentlichungen der Veröffentlichungsdatenbank aus.

So ändern Sie den Kontext, in dem der Momentaufnahme-Agent und der Protokolllese-Agent einer Oracle-Veröffentlichung Verbindungen zum Verleger herstellen

  1. Klicken Sie auf der Seite Verleger des Dialogfelds Verteilereigenschaften - <Verteiler> auf die Schaltfläche mit den drei Punkten () neben dem Verleger.

  2. Geben Sie im Abschnitt Agentverbindung mit dem Verleger den Anmeldenamen und das Kennwort an, die das von Ihnen konfigurierte Schema für den administrativen Replikationsbenutzer verwendet. Weitere Informationen finden Sie unter Konfigurieren eines Oracle-Verlegers.

  3. Klicken Sie auf OK.

So ändern Sie die Sicherheitseinstellungen für den Verteilungs-Agent eines Pushabonnements

  1. Im Dialogfeld Abonnementeigenschaften - <Abonnement> auf dem Verleger können Sie folgende Änderungen vornehmen:

    • Um das Konto zu ändern, unter dem der Verteilungs-Agent ausgeführt wird und Verbindungen zum Verteiler herstellt, klicken Sie auf die Zeile Agentprozesskonto, und klicken Sie dann in der Zeile auf die Schaltfläche mit den drei Punkten (). Geben Sie im Dialogfeld Sicherheit für den Verteilungs-Agent einen Anmeldenamen und ein Kennwort an.

    • Um den Kontext zu ändern, in dem der Verteilungs-Agent Verbindungen zum Abonnenten herstellt, klicken Sie auf die Zeile Abonnentenverbindung, und klicken Sie dann in der Zeile auf die Schaltfläche mit den drei Punkten (). Geben Sie den Kontext im Dialogfeld Verbindungsinformationen eingeben an.

      Wenn Sie Abonnements mit verzögertem Update über eine Warteschlange verwenden, verwendet auch der Warteschlangenlese-Agent den hier angegebenen Kontext für Verbindungen zum Abonnenten.

  2. Klicken Sie auf OK.

So ändern Sie die Sicherheitseinstellungen für den Verteilungs-Agent eines Pullabonnements

  1. Im Dialogfeld Abonnementeigenschaften - <Abonnement> auf dem Abonnenten können Sie folgende Änderungen vornehmen:

    • Um das Konto zu ändern, unter dem der Verteilungs-Agent ausgeführt wird und Verbindungen zum Abonnenten herstellt, klicken Sie auf die Zeile Agentprozesskonto, und klicken Sie dann in der Zeile auf die Schaltfläche mit den drei Punkten (). Geben Sie im Dialogfeld Sicherheit für den Verteilungs-Agent einen Anmeldenamen und ein Kennwort an.

      Wenn Sie Abonnements mit verzögertem Update über eine Warteschlange verwenden, verwendet auch der Warteschlangenlese-Agent den hier angegebenen Kontext für Verbindungen zum Abonnenten.

    • Um den Kontext zu ändern, in dem der Verteilungs-Agent Verbindungen zum Verteiler herstellt, klicken Sie auf die Zeile Verteilerverbindung, und klicken Sie dann in der Zeile auf die Schaltfläche mit den drei Punkten (). Geben Sie den Kontext im Dialogfeld Verbindungsinformationen eingeben an.

  2. Klicken Sie auf OK.

So ändern Sie die Sicherheitseinstellungen für den Merge-Agent eines Pushabonnements

  1. Im Dialogfeld Abonnementeigenschaften - <Abonnement> auf dem Verleger können Sie folgende Änderungen vornehmen:

    • Um das Konto zu ändern, unter dem der Merge-Agent ausgeführt wird und Verbindungen zum Verleger und zum Verteiler herstellt, klicken Sie auf die Zeile Agentprozesskonto, und klicken Sie dann in der Zeile auf die Schaltfläche mit den drei Punkten (). Geben Sie im Dialogfeld Sicherheit für den Merge-Agent einen Anmeldenamen und ein Kennwort an.

    • Um den Kontext zu ändern, in dem der Merge-Agent Verbindungen zum Abonnenten herstellt, klicken Sie auf die Zeile Abonnentenverbindung, und klicken Sie dann in der Zeile auf die Schaltfläche mit den drei Punkten (). Geben Sie den Kontext im Dialogfeld Verbindungsinformationen eingeben an.

  2. Klicken Sie auf OK.

So ändern Sie die Sicherheitseinstellungen für den Merge-Agent eines Pullabonnements

  1. Im Dialogfeld Abonnementeigenschaften - <Abonnement> auf dem Abonnenten können Sie folgende Änderungen vornehmen:

    • Um das Konto zu ändern, unter dem der Merge-Agent ausgeführt wird und Verbindungen zum Abonnenten herstellt, klicken Sie auf die Zeile Agentprozesskonto, und klicken Sie dann in der Zeile auf die Schaltfläche mit den drei Punkten (). Geben Sie im Dialogfeld Sicherheit für den Merge-Agent einen Anmeldenamen und ein Kennwort an.

    • Um den Kontext zu ändern, in dem der Merge-Agent Verbindungen zum Verleger und zum Verteiler herstellt, klicken Sie auf die Zeile Verlegerverbindung, und klicken Sie dann in der Zeile auf die Schaltfläche mit den drei Punkten (). Geben Sie den Kontext im Dialogfeld Verbindungsinformationen eingeben an.

  2. Klicken Sie auf OK.

So ändern Sie das Konto, unter dem der Warteschlangenlese-Agent ausgeführt wird

  1. Klicken Sie auf der Seite Allgemein des Dialogfelds Verteilereigenschaften - <Verteiler> auf die Schaltfläche mit den drei Punkten () neben der Verteilungsdatenbank.

  2. Klicken Sie im Dialogfeld Eigenschaften der Verteilungsdatenbank - <Database> auf die Schaltfläche Sicherheitseinstellungen neben dem Textfeld Agentprozesskonto.

  3. Geben Sie im Dialogfeld Sicherheit für den Warteschlangenlese-Agent das Konto an, unter dem der Agent ausgeführt werden und Verbindungen zum Verteiler herstellen soll.

    • Geben Sie im Textfeld Prozesskonto ein neues Windows-Konto ein.

    • Geben Sie in den Textfeldern Kennwort und Kennwort bestätigen ein neues, sicheres Kennwort ein.

  4. Klicken Sie auf OK.

    HinweisHinweis

    Für jede Verteilungsdatenbank gibt es einen Warteschlangenlese-Agent. Wenn Sie die Sicherheitseinstellungen eines Agents ändern, wirkt sich dies auf alle Veröffentlichungen auf allen Verlegern aus, die diese Verteilungsdatenbank verwenden.

So ändern Sie den Kontext, in dem der Warteschlangenlese-Agent Verbindungen zum Verleger herstellt

  1. Klicken Sie auf der Seite Verleger des Dialogfelds Verteilereigenschaften - <Verteiler> auf die Schaltfläche mit den drei Punkten () neben dem Verleger.

  2. Geben Sie im Abschnitt Agentverbindung mit dem Verleger den Wert Identität des Agentprozesskontos annehmen oder SQL Server-Authentifizierung für die Option Agentverbindungsmodus an. Wenn Sie SQL Server-Authentifizierung angeben, müssen Sie auch Werte für Anmeldung und Kennwort eingeben.

  3. Klicken Sie auf OK.

    HinweisHinweis

    Für jede Verteilungsdatenbank gibt es einen Warteschlangenlese-Agent. Wenn Sie die Sicherheitseinstellungen eines Agents ändern, wirkt sich dies auf alle Veröffentlichungen auf allen Verlegern aus, die diese Verteilungsdatenbank verwenden.

So ändern Sie den Kontext, in dem der Warteschlangenlese-Agent Verbindungen zum Abonnenten herstellt

  • Der Warteschlangenlese-Agent verwendet denselben Verbindungskontext wie der Verteilungs-Agent für das Abonnement. Weitere Informationen finden Sie in der oben stehenden Prozedur zum Verteilungs-Agent.

So ändern Sie die Sicherheitseinstellungen für ein Pullabonnement mit sofortigem Update

  1. Klicken Sie im Dialogfeld Abonnementeigenschaften - <Abonnement> auf dem Abonnenten auf die Zeile Verlegerverbindung, und klicken Sie dann in der Zeile auf die Schaltfläche mit den drei Punkten ().

  2. Wählen Sie im Dialogfeld Verbindungsinformationen eingeben eine der folgenden Optionen aus:

    • Anmeldung von einem Verbindungsserver oder Remoteserver verwenden. Wählen Sie diese Option aus, wenn Sie mithilfe von sp_addserver (Transact-SQL), sp_addlinkedserver (Transact-SQL), SQL Server Management Studio oder einer anderen Methode einen Remoteserver oder Verbindungsserver für die Verbindungen zwischen dem Abonnenten und dem Verleger definiert haben.

    • SQL Server-Authentifizierung mit dem folgenden Anmeldenamen und Kennwort verwenden. Wählen Sie diese Option aus, wenn Sie keinen Remoteserver oder Verbindungsserver für die Verbindungen zwischen dem Abonnenten und dem Verleger definiert haben. Die Replikation erstellt dann einen Verbindungsserver für Sie. Das Konto, das Sie angeben, muss bereits auf dem Verleger vorhanden sein.

  3. Klicken Sie auf OK.

HinweisHinweis

In dieser Prozedur wird beschrieben, wie die Methode geändert werden kann, die Replikationstrigger verwenden, um eine Verbindung zwischen dem Abonnenten und dem Verleger herzustellen, wenn auf dem Abonnenten Änderungen vorgenommen wurden. Sie können auch auf den Verteilungs-Agent für Abonnements mit sofortigem Update bezogene Einstellungen ändern. Weitere Informationen finden Sie in den Prozeduren weiter oben in diesem Thema.

Diese Prozedur gilt nur für Pullabonnements. Verwenden Sie für Pushabonnements die gespeicherte Prozedur sp_link_publication (Transact-SQL).

So ändern Sie das Kennwort für die Verwaltungsverbindung zwischen dem Verleger und dem Verteiler

  1. Geben Sie auf der Seite Verleger des Dialogfelds Verteilereigenschaften - <Verteiler> in die Textfelder Kennwort und Kennwort bestätigen ein sicheres Kennwort ein.

  2. Klicken Sie auf OK.

  3. Geben Sie auf der Seite Allgemein des Dialogfelds Verlegereigenschaften - <Verleger> in die Textfelder Kennwort und Kennwort bestätigen ein sicheres Kennwort ein.

  4. Klicken Sie auf OK.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Top]

Verwendung von Transact-SQL

SicherheitshinweisSicherheitshinweis

In allen der folgenden Prozeduren sollte der Benutzer nach Möglichkeit aufgefordert werden, zur Laufzeit Sicherheitsanmeldeinformationen einzugeben. Wenn Sie Anmeldeinformationen in einer Skriptdatei speichern, müssen Sie die Datei schützen, um unberechtigtem Zugriff vorzubeugen.

So ändern Sie alle Instanzen eines gespeicherten Kennworts auf einem Replikationsserver

  1. Führen Sie auf einem Server in einer Replikationstopologie für die Masterdatenbank sp_changereplicationserverpasswords aus. Geben Sie das Microsoft Windows-Konto oder den Microsoft SQL Server-Anmeldenamen, dessen Kennwort geändert wird, für @login sowie das neue Kennwort für das Konto oder den Anmeldenamen für @password an. Damit wird jede Instanz des Kennworts geändert, die von allen Agents auf dem Server beim Herstellen einer Verbindung mit anderen Servern in der Topologie verwendet wird.

    HinweisHinweis

    Wenn nur der Anmeldename und das Kennwort für eine Verbindung mit einem bestimmten Server in der Topologie geändert werden soll (z. B. der Verteiler oder der Abonnent), geben Sie den Namen dieses Servers für @server an.

  2. Wiederholen Sie Schritt 1 für jeden Server in der Replikationstopologie, für den das Kennwort aktualisiert werden muss.

    HinweisHinweis

    Nachdem Sie ein Replikationskennwort geändert haben, müssen Sie jeden Agent, der dieses Kennwort verwendet, beenden und neu starten, damit die Änderung für diesen Agent in Kraft tritt.

So ändern Sie die Sicherheitseinstellungen für den Momentaufnahme-Agent

  1. Führen Sie sp_helppublication_snapshot auf dem Verleger unter Angabe von @publication aus. Damit werden die aktuellen Sicherheitseinstellungen für den Momentaufnahme-Agent zurückgegeben.

  2. Führen Sie auf dem Verleger sp_changepublication_snapshot unter Angabe von @publication und einer oder mehrerer der folgenden zu ändernden Sicherheitseinstellungen aus:

    • Geben Sie @job_login und @job_password an, um das Windows-Konto, unter dem der Agent ausgeführt wird, oder auch nur das Kennwort für dieses Konto zu ändern.

    • Zum Ändern des Sicherheitsmodus, der beim Herstellen einer Verbindung mit dem Verleger verwendet wird, geben Sie den Wert 1 oder 0 für @publisher_security_mode an.

    • Wenn Sie den beim Herstellen einer Verbindung mit dem Verleger verwendeten Sicherheitsmodus von 1 in 0 oder einen für diese Verbindung verwendeten SQL Server-Anmeldenamen ändern, geben Sie @publisher_login und @publisher_password an.

    SicherheitshinweisSicherheitshinweis

    Beim Konfigurieren eines Verlegers mit einem Remoteverteiler werden die Werte, die für alle Parameter einschließlich job_login und job_password bereitgestellt werden, als Nur-Text an den Verteiler gesendet. Sie sollten die Verbindung zwischen dem Verleger und dem zugehörigen Remoteverteiler verschlüsseln, bevor Sie diese gespeicherte Prozedur ausführen. Weitere Informationen finden Sie unter Aktivieren von verschlüsselten Verbindungen zum Datenbankmodul (SQL Server-Konfigurations-Manager).

So ändern Sie die Sicherheitseinstellungen für den Protokolllese-Agent

  1. Führen Sie auf dem Verleger sp_helplogreader_agent aus, und geben Sie dabei @publisher an. Damit werden die aktuellen Sicherheitseinstellungen für den Protokolllese-Agent zurückgegeben.

  2. Führen Sie auf dem Verleger sp_changelogreader_agent unter Angabe von @publication und einer oder mehrerer der folgenden zu ändernden Sicherheitseinstellungen aus:

    • Geben Sie @job_login und @job_password an, um das Windows-Konto, unter dem der Agent ausgeführt wird, oder auch nur das Kennwort für dieses Konto zu ändern.

    • Zum Ändern des Sicherheitsmodus, der beim Herstellen einer Verbindung mit dem Verleger verwendet wird, geben Sie den Wert 1 oder 0 für @publisher_security_mode an.

    • Wenn Sie den beim Herstellen einer Verbindung mit dem Verleger verwendeten Sicherheitsmodus von 1 in 0 oder einen für diese Verbindung verwendeten SQL Server-Anmeldenamen ändern, geben Sie @publisher_login und @publisher_password an.

    HinweisHinweis

    Nach dem Ändern des Anmeldenamens oder des Kennworts eines Agents müssen Sie den Agent beenden und neu starten, damit die Änderungen in Kraft treten.

    SicherheitshinweisSicherheitshinweis

    Beim Konfigurieren eines Verlegers mit einem Remoteverteiler werden die Werte, die für alle Parameter einschließlich job_login und job_password bereitgestellt werden, als Nur-Text an den Verteiler gesendet. Sie sollten die Verbindung zwischen dem Verleger und dem zugehörigen Remoteverteiler verschlüsseln, bevor Sie diese gespeicherte Prozedur ausführen. Weitere Informationen finden Sie unter Aktivieren von verschlüsselten Verbindungen zum Datenbankmodul (SQL Server-Konfigurations-Manager).

So ändern Sie die Sicherheitseinstellungen für den Verteilungs-Agent eines Pushabonnements

  1. Führen Sie sp_helpsubscription auf dem Verleger für die Veröffentlichungsdatenbank unter Angabe von @publication und @subscriber aus. Damit werden die Abonnementeigenschaften zurückgegeben, einschließlich der Sicherheitseinstellungen für den Verteilungs-Agent, der auf dem Verteiler ausgeführt wird.

  2. Führen Sie auf dem Verleger für die Veröffentlichungsdatenbank sp_changesubscription aus, und geben Sie dabei @publication, @subscriber, @subscriber_db, den Wert all für @article, den Namen der Sicherheitseigenschaft für @property und den neuen Wert der Eigenschaft für @value an

  3. Wiederholen Sie Schritt 2 für jede der folgenden Sicherheitseigenschaften, die geändert wird:

    • Geben Sie den Wert distrib_job_password für @property und ein neues Kennwort für @value an, um das Windows-Konto, unter dem der Agent ausgeführt wird, oder auch nur das Kennwort für dieses Konto zu ändern. Wenn Sie das Konto ändern, wiederholen Sie Schritt 2, und geben Sie den Wert distrib_job_login für @property und das neue Windows-Konto für @value an.

    • Um den zum Herstellen der Verbindung mit dem Abonnenten verwendeten Sicherheitsmodus zu ändern, geben Sie den Wert subscriber_security_mode für @property und den Wert 1 (integrierte Windows-Authentifizierung) oder 0 (SQL Server-Authentifizierung) für @value an.

    • Wenn Sie den Sicherheitsmodus für den Abonnenten in die SQL Server-Authentifizierung oder die Anmeldeinformationen für die SQL Server-Authentifizierung ändern, geben Sie den Wert subscriber_password für @property und das neue Kennwort für @value an. Wiederholen Sie Schritt 2, und geben Sie dabei den Wert subscriber_login für @property und den neuen Anmeldenamen für @value an.

    HinweisHinweis

    Nach dem Ändern des Anmeldenamens oder des Kennworts eines Agents müssen Sie den Agent beenden und neu starten, damit die Änderungen in Kraft treten.

    SicherheitshinweisSicherheitshinweis

    Beim Konfigurieren eines Verlegers mit einem Remoteverteiler werden die Werte, die für alle Eigenschaften einschließlich distrib_job_login und distrib_job_password bereitgestellt werden, als Nur-Text an den Verteiler gesendet. Sie sollten die Verbindung zwischen dem Verleger und dem zugehörigen Remoteverteiler verschlüsseln, bevor Sie diese gespeicherte Prozedur ausführen. Weitere Informationen finden Sie unter Aktivieren von verschlüsselten Verbindungen zum Datenbankmodul (SQL Server-Konfigurations-Manager).

So ändern Sie die Sicherheitseinstellungen für den Verteilungs-Agent eines Pullabonnements

  1. Führen Sie auf dem Abonnenten sp_helppullsubscription aus, und geben Sie dabei @publication an. Damit werden die Abonnementeigenschaften zurückgegeben, einschließlich der Sicherheitseinstellungen für den Verteilungs-Agent, der auf dem Abonnenten ausgeführt wird.

  2. Führen Sie auf dem Abonnenten für die Abonnementdatenbank sp_change_subscription_properties aus, und geben Sie dabei @publisher, @publisher_db, @publication, den Namen der Sicherheitseigenschaft für @property sowie den neuen Namen der Eigenschaft für @value an.

  3. Wiederholen Sie Schritt 2 für jede der folgenden Sicherheitseigenschaften, die geändert wird:

    • Geben Sie den Wert distrib_job_password für @property und ein neues Kennwort für @value an, um das Windows-Konto, unter dem der Agent ausgeführt wird, oder auch nur das Kennwort für dieses Konto zu ändern. Wenn Sie das Konto ändern, wiederholen Sie Schritt 2, und geben Sie den Wert distrib_job_login für @property und das neue Windows-Konto für @value an.

    • Um den zum Herstellen der Verbindung mit dem Verteiler verwendeten Sicherheitsmodus zu ändern, geben Sie den Wert distributor_security_mode für @property und den Wert 1 (integrierte Windows-Authentifizierung) oder 0 (SQL Server-Authentifizierung) für @value an.

    • Wenn Sie den Sicherheitsmodus für den Verteiler in die SQL Server-Authentifizierung oder die Anmeldeinformationen für die SQL Server-Authentifizierung ändern, geben Sie den Wert distributor_password für @property und das neue Kennwort für @value an. Wiederholen Sie Schritt 2, und geben Sie dabei den Wert distributor_login für @property und den neuen Anmeldenamen für @value an.

    HinweisHinweis

    Nach dem Ändern des Anmeldenamens oder des Kennworts eines Agents müssen Sie den Agent beenden und neu starten, damit die Änderungen in Kraft treten.

So ändern Sie die Sicherheitseinstellungen für den Merge-Agent eines Pushabonnements

  1. Führen Sie sp_helpmergesubscription auf dem Verleger für die Veröffentlichungsdatenbank unter Angabe von @publication, @subscriber und @subscriber_db aus. Damit werden die Abonnementeigenschaften zurückgegeben, einschließlich der Sicherheitseinstellungen für den Merge-Agent, der auf dem Verteiler ausgeführt wird.

  2. Führen Sie auf dem Verleger für die Veröffentlichungsdatenbank sp_changemergesubscription aus, und geben Sie dabei @publication, @subscriber, @subscriber_db, den Namen der Sicherheitseigenschaft für @property sowie den neuen Namen der Eigenschaft für @value an.

  3. Wiederholen Sie Schritt 2 für jede der folgenden Sicherheitseigenschaften, die geändert wird:

    • Geben Sie den Wert merge_job_password für @property und ein neues Kennwort für @value an, um das Windows-Konto, unter dem der Agent ausgeführt wird, oder auch nur das Kennwort für dieses Konto zu ändern. Wenn Sie das Konto ändern, wiederholen Sie Schritt 2, und geben Sie den Wert merge_job_login für @property und das neue Windows-Konto für @value an.

    • Um den zum Herstellen der Verbindung mit dem Abonnenten verwendeten Sicherheitsmodus zu ändern, geben Sie den Wert subscriber_security_mode für @property und den Wert 1 (integrierte Windows-Authentifizierung) oder 0 (SQL Server-Authentifizierung) für @value an.

    • Wenn Sie den Sicherheitsmodus für den Abonnenten in die SQL Server-Authentifizierung oder die Anmeldeinformationen für die SQL Server-Authentifizierung ändern, geben Sie den Wert subscriber_password für @property und das neue Kennwort für @value an. Wiederholen Sie Schritt 2, und geben Sie dabei den Wert subscriber_login für @property und den neuen Anmeldenamen für @value an.

    • Um den zum Herstellen der Verbindung mit dem Verleger verwendeten Sicherheitsmodus zu ändern, geben Sie den Wert publisher_security_mode für @property und den Wert 1 (integrierte Windows-Authentifizierung) oder 0 (SQL Server-Authentifizierung) für @value an.

    • Wenn Sie den Sicherheitsmodus für den Verleger in die SQL Server-Authentifizierung oder die Anmeldeinformationen für die SQL Server-Authentifizierung ändern, geben Sie den Wert publisher_password für @property und das neue Kennwort für @value an. Wiederholen Sie Schritt 2, und geben Sie dabei den Wert publisher_login für @property und den neuen Anmeldenamen für @value an.

    HinweisHinweis

    Nach dem Ändern des Anmeldenamens oder des Kennworts eines Agents müssen Sie den Agent beenden und neu starten, damit die Änderungen in Kraft treten.

    SicherheitshinweisSicherheitshinweis

    Beim Konfigurieren eines Verlegers mit einem Remoteverteiler werden die Werte, die für alle Eigenschaften einschließlich merge_job_login und merge_job_password bereitgestellt werden, als Nur-Text an den Verteiler gesendet. Sie sollten die Verbindung zwischen dem Verleger und dem zugehörigen Remoteverteiler verschlüsseln, bevor Sie diese gespeicherte Prozedur ausführen. Weitere Informationen finden Sie unter Aktivieren von verschlüsselten Verbindungen zum Datenbankmodul (SQL Server-Konfigurations-Manager).

So ändern Sie die Sicherheitseinstellungen für den Merge-Agent eines Pullabonnements

  1. Führen Sie auf dem Abonnenten sp_helpmergepullsubscription aus, und geben Sie dabei @publication an. Damit werden die Abonnementeigenschaften zurückgegeben, einschließlich der Sicherheitseinstellungen für den Merge-Agent, der auf dem Abonnenten ausgeführt wird.

  2. Führen Sie auf dem Abonnenten für die Abonnementdatenbank sp_change_subscription_properties aus, und geben Sie dabei @publisher, @publisher_db, @publication, den Namen der Sicherheitseigenschaft für @property sowie den neuen Namen der Eigenschaft für @value an.

  3. Wiederholen Sie Schritt 2 für jede der folgenden Sicherheitseigenschaften, die geändert wird:

    • Geben Sie den Wert merge_job_password für @property und ein neues Kennwort für @value an, um das Windows-Konto, unter dem der Agent ausgeführt wird, oder auch nur das Kennwort für dieses Konto zu ändern. Wenn Sie das Konto ändern, wiederholen Sie Schritt 2, und geben Sie den Wert merge_job_login für @property und das neue Windows-Konto für @value an.

    • Um den zum Herstellen der Verbindung mit dem Verteiler verwendeten Sicherheitsmodus zu ändern, geben Sie den Wert distributor_security_mode für @property und den Wert 1 (integrierte Windows-Authentifizierung) oder 0 (SQL Server-Authentifizierung) für @value an.

    • Wenn Sie den Sicherheitsmodus für den Verteiler in die SQL Server-Authentifizierung oder die Anmeldeinformationen für die SQL Server-Authentifizierung ändern, geben Sie den Wert distributor_password für @property und das neue Kennwort für @value an. Wiederholen Sie Schritt 2, und geben Sie dabei den Wert distributor_login für @property und den neuen Anmeldenamen für @value an.

    • Um den zum Herstellen der Verbindung mit dem Verleger verwendeten Sicherheitsmodus zu ändern, geben Sie den Wert publisher_security_mode für @property und den Wert 1 (integrierte Windows-Authentifizierung) oder 0 (SQL Server-Authentifizierung) für @value an.

    • Wenn Sie den Sicherheitsmodus für den Verleger in die SQL Server-Authentifizierung oder die Anmeldeinformationen für die SQL Server-Authentifizierung ändern, geben Sie den Wert publisher_password für @property und das neue Kennwort für @value an. Wiederholen Sie Schritt 2, und geben Sie dabei den Wert publisher_login für @property und den neuen Anmeldenamen für @value an.

    HinweisHinweis

    Nach dem Ändern des Anmeldenamens oder des Kennworts eines Agents müssen Sie den Agent beenden und neu starten, damit die Änderungen in Kraft treten.

So ändern Sie die Sicherheitseinstellungen für den Momentaufnahme-Agent zum Generieren einer gefilterten Momentaufnahme für einen Abonnenten

  1. Führen Sie sp_helpdynamicsnapshot_job auf dem Verleger unter Angabe von @publication aus. Notieren Sie den Wert job_name im Resultset für die zu ändernde Partition des Abonnenten.

  2. Führen Sie auf dem Verleger sp_changedynamicsnapshot_job aus, und geben Sie dabei @publication, den in Schritt 1 abgerufenen Wert für @dynamic_snapshot_jobname und ein neues Kennwort für @job_password oder den Anmeldenamen und das Kennwort für das Windows-Konto, unter dem der Agent ausgeführt wird, für @job_login und @job_password an.

    SicherheitshinweisSicherheitshinweis

    Beim Konfigurieren eines Verlegers mit einem Remoteverteiler werden die Werte, die für alle Parameter einschließlich job_login und job_password bereitgestellt werden, als Nur-Text an den Verteiler gesendet. Sie sollten die Verbindung zwischen dem Verleger und dem zugehörigen Remoteverteiler verschlüsseln, bevor Sie diese gespeicherte Prozedur ausführen. Weitere Informationen finden Sie unter Aktivieren von verschlüsselten Verbindungen zum Datenbankmodul (SQL Server-Konfigurations-Manager).

So ändern Sie die Sicherheitseinstellungen für den Warteschlangenlese-Agent

  1. Führen Sie auf dem Verteiler sp_helpqreader_agent aus. Damit wird das aktuelle Windows-Konto zurückgegeben, unter dem der Warteschlangenlese-Agent ausgeführt wird.

    • Führen Sie auf dem Verteiler sp_changeqreader_agent aus, und geben Sie dabei die Einstellungen des Windows-Kontos für @job_login und @job_password an.
    HinweisHinweis

    Nach dem Ändern des Anmeldenamens oder des Kennworts eines Agents müssen Sie den Agent beenden und neu starten, damit die Änderungen in Kraft treten. Es gibt einen Warteschlangenlese-Agent für jede Verteilungsdatenbank. Wenn Sie die Sicherheitseinstellungen eines Agents ändern, wirkt sich dies auf alle Veröffentlichungen auf allen Verlegern aus, die diese Verteilungsdatenbank verwenden.

  2. Der Warteschlangenlese-Agent verwendet zum Herstellen von Verbindungen mit dem Abonnenten denselben Verbindungskontext wie der Verteilungs-Agent für das Abonnement.

So ändern Sie den Sicherheitsmodus, der von einem Abonnenten mit sofortigem Update beim Herstellen einer Verbindung mit dem Verleger verwendet wird

  • Führen Sie auf dem Abonnenten für die Abonnementdatenbank sp_link_publication aus. Geben Sie @publisher, @publication, den Namen der Veröffentlichungsdatenbank für @publisher_db und einen der folgenden Werte für @security_mode an:

    • 0 zum Verwenden der SQL Server-Authentifizierung, wenn Updates beim Verleger vorgenommen werden. Diese Option erfordert auf dem Verleger die Angabe gültiger Anmeldeinformationen für @login und @password.

    • 1, um den Sicherheitskontext des Benutzers zu verwenden, der Änderungen am Abonnenten vornimmt, wenn eine Verbindung mit dem Verleger hergestellt wird. Nähere Informationen zu den in Verbindung mit diesem Sicherheitsmodus geltenden Beschränkungen finden Sie unter sp_link_publication.

    • 2, um einen vorhandenen benutzerdefinierten Anmeldenamen für den Verbindungsserver zu verwenden, der mit sp_addlinkedserver (Transact-SQL) erstellt wurde.

So ändern Sie das Kennwort für einen Remoteverteiler

  1. Führen Sie auf dem Verteiler für die Verteilungsdatenbank sp_changedistributor_password aus, und geben Sie dabei das neue Kennwort dieses Anmeldenamens für @password an.

    Wichtiger HinweisWichtig

    Ändern Sie das Kennwort für distributor_admin nicht direkt.

  2. Führen Sie auf jedem Verteiler, der diesen Remoteverteiler verwendet, sp_changedistributor_password aus, und geben Sie dabei das Kennwort aus Schritt 1 für @password an.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Top]

Verwenden von Replikationsverwaltungsobjekten (RMO)

SicherheitshinweisSicherheitshinweis

Die Benutzer sollten nach Möglichkeit während der Laufzeit zur Eingabe von Sicherheitsanmeldeinformationen aufgefordert werden. Wenn Sie Anmeldeinformationen speichern müssen, verwenden Sie die Kryptografiedienste von Microsoft Windows .NET Framework.

So ändern Sie alle Instanzen eines auf einem Replikationsserver gespeicherten Kennworts

  1. Erstellen Sie mithilfe der ServerConnection-Klasse eine Verbindung mit dem Replikationsserver.

  2. Erstellen Sie eine Instanz der ReplicationServer-Klasse, und verwenden Sie hierzu die Verbindung aus Schritt 1.

  3. Rufen Sie die ChangeReplicationServerPasswords-Methode auf. Geben Sie die folgenden Parameter an:

    • security_mode – Ein ReplicationSecurityMode-Wert, der den Typ der Authentifizierung angibt, für die alle Instanzen des Kennworts geändert werden.

    • login – Die Anmeldung, für die alle Instanzen des Kennworts geändert werden.

    • password – Der neue Kennwortwert.

      SicherheitshinweisSicherheitshinweis

      Benutzer sollten nach Möglichkeit dazu aufgefordert werden, Anmeldeinformationen zur Laufzeit einzugeben. Wenn Sie Anmeldeinformationen speichern müssen, verwenden Sie die Kryptografiedienste von Microsoft Windows .NET Framework.

      HinweisHinweis

      Nur ein Mitglied der festen Serverrolle sysadmin kann diese Methode aufrufen.

  4. Wiederholen Sie Schritte 1 bis 3 für jeden Server in der Replikationstopologie, in der das Kennwort aktualisiert werden muss.

So ändern Sie die Sicherheitseinstellungen für den Verteilungs-Agent für ein Pushabonnement einer Transaktionsveröffentlichung

  1. Erstellen Sie eine Verbindung mit dem Verleger, indem Sie die ServerConnection-Klasse verwenden.

  2. Erstellen Sie eine Instanz der TransSubscription-Klasse.

  3. Legen Sie die Eigenschaften PublicationName, DatabaseName, SubscriberName und SubscriptionDBName für das Abonnement fest, und legen Sie die Verbindung aus Schritt 1 für die ConnectionContext-Eigenschaft fest.

  4. Rufen Sie die LoadProperties-Methode auf, um die Eigenschaften des Objekts abzurufen. Wenn diese Methode false zurückgibt, wurden entweder die Abonnementeigenschaften in Schritt 3 falsch definiert, oder das Abonnement ist nicht vorhanden.

  5. Legen Sie eine oder mehrere der folgenden Sicherheitseigenschaften für die Instanz von TransSubscription fest:

    • Um die Anmeldeinformationen für das Windows-Konto zu ändern, unter dem der Agent ausgeführt wird, legen Sie das Login-Feld und das Password-Feld von SynchronizationAgentProcessSecurity fest.

    • Zur Angabe der integrierten Windows-Authentifizierung als Authentifizierungstyp, der vom Agent zum Verbindungsaufbau mit dem Abonnenten verwendet wird, legen Sie das WindowsAuthentication-Feld der SubscriberSecurity-Eigenschaft auf true fest.

    • Zur Angabe der integrierten SQL Server-Authentifizierung als Authentifizierungstyp, der vom Agent zum Verbindungsaufbau mit dem Abonnenten verwendet wird, legen Sie das WindowsAuthentication-Feld der SubscriberSecurity-Eigenschaft auf false fest, und geben Sie die Anmeldeinformationen des Abonnenten in den Feldern SqlStandardLogin und SqlStandardPassword an.

      HinweisHinweis

      Die Agent-Verbindung zum Verteiler wird immer mit den durch SynchronizationAgentProcessSecurity angegebenen Windows-Anmeldeinformationen hergestellt. Dieses Konto wird auch verwendet, um Remoteverbindungen unter Verwendung der Windows-Authentifizierung herzustellen.

  6. (Optional) Wenn Sie den Wert true für CachePropertyChanges angegeben haben, rufen Sie die CommitPropertyChanges-Methode auf, um die Änderungen auf dem Server einzutragen. Wenn Sie den Wert false für CachePropertyChanges (die Standardeinstellung) angegeben haben, werden die Änderungen sofort an den Server gesendet.

So ändern Sie die Sicherheitseinstellungen für den Verteilungs-Agent für ein Pullabonnement einer Transaktionsveröffentlichung

  1. Erstellen Sie eine Verbindung mit dem Abonnenten, indem Sie die ServerConnection-Klasse verwenden.

  2. Erstellen Sie eine Instanz der TransPullSubscription-Klasse.

  3. Legen Sie die PublicationName, DatabaseName, PublisherName-Eigenschaft und die PublicationDBName-Eigenschaft für das Abonnement fest, und legen Sie die Verbindung aus Schritt 1 für die ConnectionContext-Eigenschaft fest.

  4. Rufen Sie die LoadProperties-Methode auf, um die Eigenschaften des Objekts abzurufen. Wenn diese Methode false zurückgibt, wurden entweder die Abonnementeigenschaften in Schritt 3 falsch definiert, oder das Abonnement ist nicht vorhanden.

  5. Legen Sie eine oder mehrere der folgenden Sicherheitseigenschaften für die Instanz von TransPullSubscription fest:

    • Um die Anmeldeinformationen für das Windows-Konto zu ändern, unter dem der Agent ausgeführt wird, legen Sie das Login-Feld und das Password-Feld von SynchronizationAgentProcessSecurity fest.

    • Zur Angabe der integrierten Windows-Authentifizierung als Authentifizierungstyp, der vom Agent zum Verbindungsaufbau mit dem Verteiler verwendet wird, legen Sie das WindowsAuthentication-Feld der DistributorSecurity-Eigenschaft auf true fest.

    • Zur Angabe der SQL Server-Authentifizierung als Authentifizierungstyp, der vom Agent zum Verbindungsaufbau mit dem Verteiler verwendet wird, legen Sie das WindowsAuthentication-Feld der DistributorSecurity-Eigenschaft auf falsefest, und geben Sie die Anmeldeinformationen des Verteilers in den Feldern SqlStandardLogin und SqlStandardPassword an.

      HinweisHinweis

      Die Agent-Verbindung zum Abonnenten wird immer mit den durch SynchronizationAgentProcessSecurity angegebenen Windows-Anmeldeinformationen hergestellt. Dieses Konto wird auch verwendet, um Remoteverbindungen unter Verwendung der Windows-Authentifizierung herzustellen.

  6. (Optional) Wenn Sie den Wert true für CachePropertyChanges angegeben haben, rufen Sie die CommitPropertyChanges-Methode auf, um die Änderungen auf dem Server einzutragen. Wenn Sie den Wert false für CachePropertyChanges (die Standardeinstellung) angegeben haben, werden die Änderungen sofort an den Server gesendet.

So ändern Sie die Sicherheitseinstellungen für den Merge-Agent für ein Pullabonnement einer Mergeveröffentlichung

  1. Erstellen Sie eine Verbindung mit dem Abonnenten, indem Sie die ServerConnection-Klasse verwenden.

  2. Erstellen Sie eine Instanz der MergePullSubscription-Klasse.

  3. Legen Sie die PublicationName, DatabaseName, PublisherName-Eigenschaft und die PublicationDBName-Eigenschaft für das Abonnement fest, und legen Sie die Verbindung aus Schritt 1 für die ConnectionContext-Eigenschaft fest.

  4. Rufen Sie die LoadProperties-Methode auf, um die Eigenschaften des Objekts abzurufen. Wenn diese Methode false zurückgibt, wurden entweder die Abonnementeigenschaften in Schritt 3 falsch definiert, oder das Abonnement ist nicht vorhanden.

  5. Legen Sie eine oder mehrere der folgenden Sicherheitseigenschaften für die Instanz von MergePullSubscription fest:

    • Um die Anmeldeinformationen für das Windows-Konto zu ändern, unter dem der Agent ausgeführt wird, legen Sie das Login-Feld und das Password-Feld von SynchronizationAgentProcessSecurity fest.

    • Zur Angabe der integrierten Windows-Authentifizierung als Authentifizierungstyp, der vom Agent zum Verbindungsaufbau mit dem Verteiler verwendet wird, legen Sie das WindowsAuthentication-Feld der DistributorSecurity-Eigenschaft auf true fest.

    • Zur Angabe der SQL Server-Authentifizierung als Authentifizierungstyp, der vom Agent zum Verbindungsaufbau mit dem Verteiler verwendet wird, legen Sie das WindowsAuthentication-Feld der DistributorSecurity-Eigenschaft auf falsefest, und geben Sie die Anmeldeinformationen des Verteilers in den Feldern SqlStandardLogin und SqlStandardPassword an.

    • Zur Angabe der integrierten Windows-Authentifizierung als Authentifizierungstyp, der vom Agent zum Verbindungsaufbau mit dem Verleger verwendet wird, legen Sie das WindowsAuthentication-Feld der PublisherSecurity-Eigenschaft auf true fest.

    • Zur Angabe der integrierten SQL Server-Authentifizierung als Authentifizierungstyp, der vom Agent zum Verbindungsaufbau mit dem Verleger verwendet wird, legen Sie das WindowsAuthentication-Feld der PublisherSecurity-Eigenschaft auf false fest, und geben Sie die Anmeldeinformationen des Verlegers in den Feldern SqlStandardLogin und SqlStandardPassword an.

      HinweisHinweis

      Die Agent-Verbindung zum Abonnenten wird immer mit den durch SynchronizationAgentProcessSecurity angegebenen Windows-Anmeldeinformationen hergestellt. Dieses Konto wird auch verwendet, um Remoteverbindungen unter Verwendung der Windows-Authentifizierung herzustellen.

  6. (Optional) Wenn Sie den Wert true für CachePropertyChanges angegeben haben, rufen Sie die CommitPropertyChanges-Methode auf, um die Änderungen auf dem Server einzutragen. Wenn Sie den Wert false für CachePropertyChanges (die Standardeinstellung) angegeben haben, werden die Änderungen sofort an den Server gesendet.

So ändern Sie die Sicherheitseinstellungen für den Merge-Agent für ein Pushabonnement einer Mergeveröffentlichung

  1. Erstellen Sie eine Verbindung mit dem Verleger, indem Sie die ServerConnection-Klasse verwenden.

  2. Erstellen Sie eine Instanz der MergeSubscription-Klasse.

  3. Legen Sie die Eigenschaften PublicationName, DatabaseName, SubscriberName und SubscriptionDBName für das Abonnement fest, und legen Sie die Verbindung aus Schritt 1 für die ConnectionContext-Eigenschaft fest.

  4. Rufen Sie die LoadProperties-Methode auf, um die Eigenschaften des Objekts abzurufen. Wenn diese Methode false zurückgibt, wurden entweder die Abonnementeigenschaften in Schritt 3 falsch definiert, oder das Abonnement ist nicht vorhanden.

  5. Legen Sie eine oder mehrere der folgenden Sicherheitseigenschaften für die Instanz von MergeSubscription fest:

    • Um die Anmeldeinformationen für das Windows-Konto zu ändern, unter dem der Agent ausgeführt wird, legen Sie das Login-Feld und das Password-Feld von SynchronizationAgentProcessSecurity fest.

    • Zur Angabe der integrierten Windows-Authentifizierung als Authentifizierungstyp, der vom Agent zum Verbindungsaufbau mit dem Abonnenten verwendet wird, legen Sie das WindowsAuthentication-Feld der SubscriberSecurity-Eigenschaft auf true fest.

    • Zur Angabe der integrierten SQL Server-Authentifizierung als Authentifizierungstyp, der vom Agent zum Verbindungsaufbau mit dem Abonnenten verwendet wird, legen Sie das WindowsAuthentication-Feld der SubscriberSecurity-Eigenschaft auf false fest, und geben Sie die Anmeldeinformationen des Abonnenten in den Feldern SqlStandardLogin und SqlStandardPassword an.

    • Zur Angabe der integrierten Windows-Authentifizierung als Authentifizierungstyp, der vom Agent zum Verbindungsaufbau mit dem Verleger verwendet wird, legen Sie das WindowsAuthentication-Feld der PublisherSecurity-Eigenschaft auf true fest.

    • Zur Angabe der integrierten SQL Server-Authentifizierung als Authentifizierungstyp, der vom Agent zum Verbindungsaufbau mit dem Verleger verwendet wird, legen Sie das WindowsAuthentication-Feld der PublisherSecurity-Eigenschaft auf false fest, und geben Sie die Anmeldeinformationen des Verlegers in den Feldern SqlStandardLogin und SqlStandardPassword an.

      HinweisHinweis

      Die Agent-Verbindung zum Verteiler wird immer mit den durch SynchronizationAgentProcessSecurity angegebenen Windows-Anmeldeinformationen hergestellt. Dieses Konto wird auch verwendet, um Remoteverbindungen unter Verwendung der Windows-Authentifizierung herzustellen.

  6. (Optional) Wenn Sie den Wert true für CachePropertyChanges angegeben haben, rufen Sie die CommitPropertyChanges-Methode auf, um die Änderungen auf dem Server einzutragen. Wenn Sie den Wert false für CachePropertyChanges (die Standardeinstellung) angegeben haben, werden die Änderungen sofort an den Server gesendet.

So ändern Sie die Anmeldeinformationen, die von einem sofort aktualisierbaren Abonnenten beim Herstellen einer Verbindung mit dem Transaktionsverleger verwendet werden

  1. Erstellen Sie eine Verbindung mit dem Abonnenten, indem Sie die ServerConnection-Klasse verwenden.

  2. Erstellen Sie eine Instanz der ReplicationDatabase-Klasse für die Abonnementdatenbank. Geben Name und die ServerConnection aus Schritt 1 für ConnectionContext an.

  3. Rufen Sie die LoadProperties-Methode auf, um die Eigenschaften des Objekts abzurufen. Wenn diese Methode false zurückgibt, wurden entweder die Datenbankeigenschaften in Schritt 2 falsch definiert, oder das Abonnementdatenbank ist nicht vorhanden.

  4. Rufen Sie die LinkPublicationForUpdateableSubscription-Methode auf, und übergeben Sie hierbei die folgenden Parameter:

    • Publisher – Den Namen des Verlegers.

    • PublisherDB – Den Namen der Veröffentlichungsdatenbank.

    • Publication – Den Name der Veröffentlichung, die der sofort aktualisierbare Abonnent abonniert hat.

    • Distributor – Den Namen des Verteilers.

    • PublisherSecurity – Ein PublisherConnectionSecurityContext-Objekt, das den Typ des Sicherheitsmodus, der vom sofort aktualisierbaren Abonnenten beim Verbindungsaufbau mit dem Verleger verwendet wird, und die Anmeldeinformationen für die Verbindung angibt.

Beispiel (RMO)

In diesem Beispiel werden der für die Anmeldung angegebene Wert überprüft und alle auf dem Server für die Replikation gespeicherten Kennwörter für die angegebene Windows-Anmeldung bzw. SQL Server-Anwendung geändert.

         // Set the Distributor and distribution database names.
            string serverName = publisherInstance;

            ReplicationServer server;
            
            // Create a connection to the Distributor using Windows Authentication.
            ServerConnection conn = new ServerConnection(serverName);

            try
            {
                // Open the connection. 
                conn.Connect();

                server = new ReplicationServer(conn);

                // Load server properties, if it exists.
                if (server.LoadProperties())
                {
                    string[] slash = new string[1];
                    slash[1] = @"\";

                    // If the login is in the form string\string, assume we are 
                    // changing the password for a Windows login.
                    if (login.Split(slash, StringSplitOptions.None).Length == 2)
                    {
                        //Change the password for the all connections that use
                        // the Windows login. 
                        server.ChangeReplicationServerPasswords(
                                ReplicationSecurityMode.Integrated, login, password);
                    }
                    else
                    {
                        // Change the password for the all connections that use
                        // the SQL Server login. 
                        server.ChangeReplicationServerPasswords(
                                ReplicationSecurityMode.SqlStandard, login, password);
                    }
                }
                else
                {
                    throw new ApplicationException(String.Format(
                        "Properties for {0} could not be retrieved.", publisherInstance));
                }
            }
            catch (Exception ex)
            {
                // Implement the appropriate error handling here. 
                throw new ApplicationException(String.Format(
                    "An error occured when changing agent login " +
                    " credentials on {0}.",serverName), ex);
            }
            finally
            {
                conn.Disconnect();
            }
' Set the Distributor and distribution database names.
Dim serverName As String = publisherInstance

Dim server As ReplicationServer

' Create a connection to the Distributor using Windows Authentication.
Dim conn As ServerConnection = New ServerConnection(serverName)

Try
    ' Open the connection. 
    conn.Connect()

    server = New ReplicationServer(conn)

    ' Load server properties, if it exists.
    If server.LoadProperties() Then

        ' If the login is in the form string\string, assume we are 
        ' changing the password for a Windows login.
        If login.Split("\").Length = 2 Then

            ' Change the password for the all connections that use
            ' the Windows login. 
            server.ChangeReplicationServerPasswords( _
            ReplicationSecurityMode.Integrated, login, password)
        Else

            ' Change the password for the all connections that use
            ' the SQL Server login. 
            server.ChangeReplicationServerPasswords( _
            ReplicationSecurityMode.SqlStandard, login, password)
        End If
    Else
        Throw New ApplicationException(String.Format( _
         "Properties for {0} could not be retrieved.", publisherInstance))
    End If
Catch ex As Exception
    ' Implement the appropriate error handling here. 
    Throw New ApplicationException(String.Format( _
     "An error occured when changing agent login " + _
     " credentials on {0}.", serverName), ex)
Finally
    conn.Disconnect()
End Try

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Top]

Nachverfolgung: Nach dem Ändern der Replikationssicherheitseinstellungen

Nach dem Ändern des Anmeldenamens oder Kennworts eines Agents müssen Sie den Agent beenden und neu starten, damit die Änderungen in Kraft treten.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Top]

Siehe auch

Aufgaben

Aktualisieren von Replikationsskripts (Replikationsprogrammierung mit Transact-SQL)

Konzepte

Konzepte für Replikationsverwaltungsobjekte (RMO)

Sicherheitsmodell des Replikations-Agents

Bewährte Methoden für die Replikationssicherheit

Konzepte für gespeicherte Systemprozeduren für die Replikation

Andere Ressourcen

Verwalten von Anmeldeinformationen und Kennwörtern bei der Replikation

Sicherheit und Schutz (Replikation)