Dela via


Visa och ändra säkerhetsinställningar för replikering

gäller för:SQL ServerAzure SQL Managed Instance

Det här avsnittet beskriver hur du visar och ändrar säkerhetsinställningar för replikering i SQL Server med hjälp av SQL Server Management Studio, Transact-SQL eller Replikeringshanteringsobjekt (RMO). Du kanske till exempel vill ändra anslutningen för loggläsaragenten till utgivaren från SQL Server-autentisering till Windows-integrerad autentisering, eller så kan du behöva ändra autentiseringsuppgifterna som används för att köra ett agentjobb när Lösenordet för Windows-kontot har ändrats. Information om de behörigheter som krävs av varje agent finns i Säkerhetsmodell för replikeringsagent.

I det här avsnittet

Innan du börjar

Begränsningar och restriktioner

  • De lagrade procedurer som du använder beror på typen av agent och typen av serveranslutning.

  • Vilka RMO-klasser och egenskaper du använder beror på typen av agent och typen av serveranslutning.

Säkerhet

Av säkerhetsskäl maskeras de faktiska värdena för lösenord i resultatuppsättningar som returneras av lagrade replikeringsprocedurer.

Behörigheter

Använda SQL Server Management Studio

Visa och ändra säkerhetsinställningar i följande dialogrutor:

  1. Dialogrutan Uppdatera replikeringslösenord , som är tillgänglig från mappen Replikering i SQL Server Management Studio. Om du ändrar lösenordet för ett SQL Server-konto eller Ett Windows-konto på en server i en replikeringstopologi använder du den här dialogrutan i stället för att uppdatera lösenordet för varje agent som använder kontot. Om agenter på mer än en server använder samma konto måste du ansluta till varje server och ändra lösenordet. Lösenordet uppdateras på alla platser där replikeringen använder lösenordet. Lösenordet uppdateras inte på andra platser, till exempel länkade servrar.

  2. Sidan Agentsäkerhet i dialogrutan Publikationsegenskaper – <publikation> . Mer information om hur du öppnar den här dialogrutan finns i Visa och ändra publikationsegenskaper.

  3. Dialogrutan Prenumerationsegenskaper – <prenumeration> . Mer information om hur du kommer åt den här dialogrutan finns i Visa och ändra egenskaper för push-prenumeration och visa och ändra egenskaper för pull-prenumeration.

  4. Dialogrutorna Distributörsegenskaper – <Egenskaper för distributör> och distributionsdatabas – <Databas>. Mer information om hur du kommer åt dessa dialogrutor finns i Visa och ändra egenskaper för distributör och utgivare.

  5. Dialogrutan Utgivaregenskaper – <Utgivare> . Mer information om hur du öppnar den här dialogrutan finns i Visa och ändra egenskaper för distributör och utgivare.

Ändra lösenordet för ett konto som används av en eller flera agenter

  1. Om kontot är ett SQL Server-konto ändras även lösenordet för SQL Server-kontot i den här dialogrutan. Om kontot är ett Windows-konto ändrar du lösenordet i Windows först. Mer information finns i Windows-dokumentationen.

    Anmärkning

    När du har ändrat ett replikeringslösenord måste du stoppa och starta om varje agent som använder lösenordet innan ändringen börjar gälla för agenten.

  2. Anslut till servern i SQL Server Management Studio och expandera sedan servernoden.

  3. Högerklicka på mappen Replikering och klicka sedan på Uppdatera replikeringslösenord.

  4. I dialogrutan Uppdatera replikeringslösenord anger du kontot och det nya lösenordet.

  5. Välj OK.

Så här ändrar du säkerhetsinställningarna för ögonblicksbildsagenten

  1. På sidan Agentsäkerhet i dialogrutan Publikationsegenskaper – <publikation> klickar du på knappen Säkerhetsinställningar bredvid textrutan Ögonblicksbildsagent .

  2. I dialogrutan Säkerhet för ögonblicksbildsagent anger du det konto under vilket agenten ska köras:

    • Ange ett nytt Windows-konto i textrutan Agentkonto .

    • Ange ett nytt starkt lösenord i textrutorna Lösenord och Bekräfta lösenord .

  3. Ange den kontext under vilken agenten ska ansluta från distributören till utgivaren. Om du väljer Använda följande SQL Server-inloggning måste du också ange inloggningen:

    • Ange en inloggning i textrutan Inloggning

    • Ange ett nytt starkt lösenord i textrutorna Lösenord och Bekräfta lösenord .

    Anmärkning

    Om Utgivaren är en Oracle Publisher anges anslutningskontexten i dialogrutan Distributörsegenskaper – <distributör> . Se nedan för proceduren för att ändra kontexten.

  4. Välj OK.

Så här ändrar du säkerhetsinställningarna för Log Reader Agent

  1. På sidan Agentsäkerhet i dialogrutan Publikationsegenskaper – <publikation> klickar du på knappen Säkerhetsinställningar bredvid textrutan Log Reader Agent .

  2. I dialogrutan Log Reader Agent Security anger du det konto under vilket agenten ska köras:

    • Ange ett nytt Windows-konto i textrutan Agentkonto

    • Ange ett nytt starkt lösenord i textrutorna Lösenord och Bekräfta lösenord .

  3. Ange den kontext under vilken agenten ska ansluta från distributören till utgivaren. Om du väljer Använda följande SQL Server-inloggning måste du också ange inloggningen:

    • Ange en inloggning i textrutan Inloggning

    • Ange ett nytt starkt lösenord i textrutorna Lösenord och Bekräfta lösenord .

    Anmärkning

    Om Utgivaren är en Oracle Publisher anges anslutningskontexten i dialogrutan Distributörsegenskaper – <distributör> . Ändra kontexten med hjälp av nästa procedur.

  4. Välj OK.

    Anmärkning

    Det finns en Log Reader-agent för varje publicerad databas. Om du ändrar säkerhetsinställningarna för agenten i en publikation påverkas inställningarna för alla publikationer i publikationsdatabasen.

Om du vill ändra kontexten för hur ögonblicksbildsagenten och loggläsaragenten för en Oracle-publikation ansluter till utgivaren

  1. På sidan Utgivare i dialogrutan klickar du på < (>) bredvid en Utgivare.

  2. I avsnittet Agentanslutning till Utgivare anger du inloggningen och lösenordet som används av det administrativa användarschemat för replikering som du har konfigurerat. Mer information finns i Konfigurera en Oracle Publisher.

  3. Välj OK.

Ändra säkerhetsinställningarna för distributionsagenten för en push-prenumeration

  1. I dialogrutan Prenumerationsegenskaper – <prenumeration> i Publisher kan du göra följande ändringar:

    • Om du vill ändra det konto under vilket distributionsagenten körs och upprättar anslutningar till distributören klickar du på raden Agentprocesskonto och klickar sedan på knappen Egenskaper (...) på raden. Ange ett konto och lösenord i dialogrutan Distributionsagentsäkerhet .

    • Om du vill ändra kontexten under vilken distributionsagenten ansluter till prenumeranten klickar du på raden Anslutning till prenumerant och klickar sedan på egenskapsknappen (...) på raden. Ange kontexten i dialogrutan Ange anslutningsinformation .

      Om du använder köade uppdateringsprenumerationer använder köläsaragenten även kontexten som anges här för anslutningar till prenumeranten.

  2. Välj OK.

Ändra säkerhetsinställningarna för distributionsagenten för en pull-prenumeration

  1. I dialogrutan Prenumerationsegenskaper – <prenumeration> i prenumeranten kan du göra följande ändringar:

    • Om du vill ändra det konto under vilket distributionsagenten körs och upprättar anslutningar till prenumeranten klickar du på raden Agentprocesskonto och klickar sedan på knappen egenskaper (...) på raden. Ange ett konto och lösenord i dialogrutan Distributionsagentsäkerhet .

      Om du använder köade uppdateringsprenumerationer använder köläsaragenten även kontexten som anges här för anslutningar till prenumeranten.

    • Om du vill ändra kontexten under vilken distributionsagenten ansluter till distributören klickar du på raden Distributörsanslutning och klickar sedan på egenskapsknappen (...) på raden. Ange kontexten i dialogrutan Ange anslutningsinformation .

  2. Välj OK.

Så här ändrar du säkerhetsinställningarna för sammanslagningsagenten för en push-prenumeration

  1. I dialogrutan Prenumerationsegenskaper – <prenumeration> i Publisher kan du göra följande ändringar:

    • Om du vill ändra det konto under vilket sammanslagningsagenten körs och upprättar anslutningar till utgivaren och distributören klickar du på raden Agentprocesskonto och klickar sedan på knappen Egenskaper (...) på raden. Ange ett konto och lösenord i dialogrutan Slå samman agentsäkerhet .

    • Om du vill ändra kontexten under vilken sammanslagningsagenten ansluter till prenumeranten klickar du på raden Anslutning till prenumerant och klickar sedan på egenskapsknappen (...) på raden. Ange kontexten i dialogrutan Ange anslutningsinformation .

  2. Välj OK.

Så här ändrar du säkerhetsinställningarna för sammanslagningsagenten för en pull-prenumeration

  1. I dialogrutan Prenumerationsegenskaper – <prenumeration> i prenumeranten kan du göra följande ändringar:

    • Om du vill ändra det konto under vilket sammanslagningsagenten körs och upprättar anslutningar till prenumeranten klickar du på raden Agentprocesskonto och klickar sedan på knappen Egenskaper (...) på raden. Ange ett konto och lösenord i dialogrutan Slå samman agentsäkerhet .

    • Om du vill ändra kontexten under vilken sammanslagningsagenten ansluter till publishern och distributören klickar du på raden Publisher Connection och klickar sedan på egenskapsknappen (...) på raden. Ange kontexten i dialogrutan Ange anslutningsinformation .

  2. Välj OK.

Så här ändrar du det konto som köläsaragenten använder

  1. På sidan Allmänt i dialogrutan Distributörsegenskaper – <distributör> klickar du på knappen egenskaper (...) bredvid distributionsdatabasen.

  2. I dialogrutan Egenskaper för distributionsdatabas – <databas> klickar du på knappen Säkerhetsinställningar bredvid textrutan Agentprocesskonto .

  3. I dialogrutan Köläsaragentsäkerhet anger du det konto under vilket agenten körs och ansluter till distributören:

    • Ange ett nytt Windows-konto i textrutan Bearbeta konto

    • Ange ett nytt starkt lösenord i textrutorna Lösenord och Bekräfta lösenord .

  4. Välj OK.

    Anmärkning

    Det finns en Queue Reader-agent för varje distributionsdatabas. Om du ändrar säkerhetsinställningarna för agenten påverkas inställningarna för alla publikationer på alla utgivare som använder den här distributionsdatabasen.

För att ändra kontexten i vilken köläsaragenten ansluter till utgivaren

  1. På sidan Utgivare i dialogrutan klickar du på < (>) bredvid utgivaren.

  2. I avsnittet Agentanslutning till publisher anger du värdet Personifiera agentprocesskontot eller SQL Server-autentisering för alternativet Agentanslutningsläge . Om du anger SQL Server-autentisering anger du även värden för inloggning och lösenord.

  3. Välj OK.

    Anmärkning

    Det finns en Queue Reader-agent för varje distributionsdatabas. Om du ändrar säkerhetsinställningarna för agenten påverkas inställningarna för alla publikationer på alla utgivare som använder den här distributionsdatabasen.

Så här ändrar du kontexten under vilken köläsaragenten ansluter till prenumeranten

  • Köläsaragenten använder samma anslutningskontext som distributionsagenten för prenumerationen. Mer information finns i procedurerna ovan för distributionsagenten.

Så här ändrar du säkerhetsinställningarna för en omedelbar uppdatering av pull-prenumerationen

  1. I dialogrutan Prenumerationsegenskaper – <prenumeration> i Prenumerant klickar du på raden Anslutning till utgivare och klickar sedan på egenskapsknappen (...) på raden.

  2. I dialogrutan Ange anslutningsinformation väljer du något av följande alternativ:

    • Använd en inloggning från en länkad server eller fjärrserver. Välj det här alternativet om du har definierat en fjärrserver eller länkad server mellan prenumeranten och utgivaren med hjälp av sp_addserver (Transact-SQL), sp_addlinkedserver (Transact-SQL), SQL Server Management Studio eller någon annan metod.

    • Använd SQL Server-autentisering med följande inloggning och lösenord. Välj det här alternativet om du inte har definierat en fjärrserver eller länkad server mellan prenumeranten och utgivaren. Replikering skapar en länkad server åt dig. Det konto som du anger måste redan finnas i Publisher.

  3. Välj OK.

Anmärkning

Den här proceduren ändrar den metod som replikering utlöser för att ansluta från prenumeranten till utgivaren när ändringar görs hos prenumeranten. Du kan också ändra inställningar som är associerade med distributionsagenten för en omedelbar uppdatering av prenumerationen. Mer information finns i procedurerna tidigare i det här avsnittet.

Den här proceduren gäller endast för pull-prenumerationer. För push-prenumerationer använder du den lagrade proceduren sp_link_publication (Transact-SQL).

Så här ändrar du lösenordet för den administrativa anslutningen från utgivaren till distributören

  1. På sidan Utgivare i dialogrutan anger du ett starkt lösenord i textrutorna < och >.

  2. Välj OK.

  3. På sidan Allmänt i dialogrutan Utgivaregenskaper – <Utgivare> anger du ett starkt lösenord i textrutorna Lösenord och Bekräfta lösenord .

  4. Välj OK.

Använda Transact-SQL

Viktigt!

I alla följande procedurer uppmanar du när det är möjligt användarna att ange säkerhetsautentiseringsuppgifter vid körning. Om du lagrar autentiseringsuppgifter i en skriptfil måste du skydda filen för att förhindra obehörig åtkomst.

Ändra alla instanser av ett lagrat lösenord på en replikeringsserver

  1. Kör sp_changereplicationserverpasswords på en server i en replikeringstopologi på huvuddatabasen. Ange det Microsoft Windows-konto eller Microsoft SQL Server-inloggning vars lösenord ändras för @login och nytt lösenord för kontot eller inloggningen för @password. Detta ändrar varje instans av lösenordet som används av alla agenter på servern när de ansluter till andra servrar i topologin.

    Anmärkning

    Om du bara vill ändra inloggningen och lösenordet för en anslutning till en viss server i topologin (till exempel distributören eller prenumeranten) anger du serverns namn för @server.

  2. Upprepa steg 1 på varje server i replikeringstopologin där lösenordet måste uppdateras.

    Anmärkning

    När du har ändrat ett replikeringslösenord måste du stoppa och starta om varje agent som använder lösenordet innan ändringen börjar gälla för agenten.

Så här ändrar du säkerhetsinställningarna för ögonblicksbildsagenten

  1. På Publisher kör du sp_helppublication_snapshot, och specificerar @publication. Detta returnerar de aktuella säkerhetsinställningarna för Ögonblicksbildsagenten.

  2. På Publisher kör sp_changepublication_snapshot, specificera @publication och en eller flera av följande säkerhetsinställningar som ska ändras:

    • Om du vill ändra det Windows-konto under vilket agenten körs eller bara lösenordet för det här kontot anger du @job_login och @job_password.

    • Om du vill ändra säkerhetsläget som används när du ansluter till Publisher anger du värdet 1 eller 0 för @publisher_security_mode.

    • När du ändrar säkerhetsläget som används vid anslutning till utgivaren från 1 till 0 eller när du ändrar en SQL Server-inloggning som används för den här anslutningen anger du @publisher_login och @publisher_password.

    Viktigt!

    När du konfigurerar en utgivare med en fjärransluten distributör skickas de värden som anges för alla parametrar, inklusive job_login och job_password, till distributören som oformaterad text. Du bör kryptera anslutningen mellan Utgivaren och dess fjärranslutna distributör innan du kör den här lagrade proceduren. Mer information finns i Aktivera krypterade anslutningar till databasmotorn (SQL Server Configuration Manager).

Så här ändrar du säkerhetsinställningarna för Log Reader Agent

  1. Hos Publisher kör sp_helplogreader_agent och specificera @publisher. Detta returnerar de aktuella säkerhetsinställningarna för Loggläsaragenten.

  2. I Publisher kör du sp_changelogreader_agent, anger @publication och en eller flera av följande säkerhetsinställningar som ska ändras:

    • Om du vill ändra det Windows-konto under vilket agenten körs eller bara lösenordet för det här kontot anger du @job_login och @job_password.

    • Om du vill ändra säkerhetsläget som används när du ansluter till Publisher anger du värdet 1 eller 0 för @publisher_security_mode.

    • När du ändrar säkerhetsläget som används vid anslutning till utgivaren från 1 till 0 eller när du ändrar en SQL Server-inloggning som används för den här anslutningen anger du @publisher_login och @publisher_password.

    Anmärkning

    När du har ändrat en agentinloggning eller ett lösenord måste du stoppa och starta om agenten innan ändringen börjar gälla.

    Viktigt!

    När du konfigurerar en utgivare med en fjärransluten distributör skickas de värden som anges för alla parametrar, inklusive job_login och job_password, till distributören som oformaterad text. Du bör kryptera anslutningen mellan Utgivaren och dess fjärranslutna distributör innan du kör den här lagrade proceduren. Mer information finns i Aktivera krypterade anslutningar till databasmotorn (SQL Server Configuration Manager).

Ändra säkerhetsinställningarna för distributionsagenten för en push-prenumeration

  1. Kör sp_helpsubscription på Publisher i publikationsdatabasen och ange @publication och @subscriber. Detta returnerar prenumerationsegenskaper, inklusive säkerhetsinställningar för distributionsagenten som körs på distributören.

  2. I Publisher på publikationsdatabasen kör du sp_changesubscription, anger @publication, @subscriber, @subscriber_db, ett värde all för @article, namnet på säkerhetsegenskapen för @property och det nya värdet för egenskapen för @value.

  3. Upprepa steg 2 för var och en av följande säkerhetsegenskaper som ändras:

    • Om du vill ändra det Windows-konto under vilket agenten körs eller bara lösenordet för det här kontot anger du värdet distrib_job_password för @property och ett nytt lösenord för @value. När du ändrar själva kontot upprepar du steg 2 och anger värdet distrib_job_login för @property och det nya Windows-kontot för @value.

    • Om du vill ändra säkerhetsläget som används vid anslutning till prenumeranten anger du värdet subscriber_security_mode för @property och värdet 1 (Windows-integrerad autentisering) eller 0 (SQL Server-autentisering) för @value.

    • När du ändrar prenumerantsäkerhetsläget till SQL Server-autentisering, eller om du ändrar inloggningsinformation för SQL Server-autentisering, anger du värdet subscriber_password för @property och det nya lösenordet för @value. Upprepa steg 2 och ange värdet subscriber_login för @property och den nya inloggningen för @value.

    Anmärkning

    När du har ändrat en agentinloggning eller ett lösenord måste du stoppa och starta om agenten innan ändringen börjar gälla.

    Viktigt!

    När du konfigurerar en utgivare med en fjärransluten distributör skickas de värden som anges för alla egenskaper, inklusive distrib_job_login och distrib_job_password, till distributören som oformaterad text. Du bör kryptera anslutningen mellan Utgivaren och dess fjärranslutna distributör innan du kör den här lagrade proceduren. Mer information finns i Aktivera krypterade anslutningar till databasmotorn (SQL Server Configuration Manager).

Ändra säkerhetsinställningarna för distributionsagenten för en pull-prenumeration

  1. Kör sp_helppullsubscription på prenumeranten och specificera @publication. Detta returnerar prenumerationsegenskaper, inklusive säkerhetsinställningar för distributionsagenten som körs hos prenumeranten.

  2. På prenumerantens databas kör du sp_change_subscription_properties, specificerar @publisher, @publisher_db, @publication, namnet på säkerhetsegenskapen för @property och det nya värdet för egenskapen för @value.

  3. Upprepa steg 2 för var och en av följande säkerhetsegenskaper som ändras:

    • Om du vill ändra det Windows-konto under vilket agenten körs eller bara lösenordet för det här kontot anger du värdet distrib_job_password för @property och ett nytt lösenord för @value. När du ändrar själva kontot upprepar du steg 2 och anger värdet distrib_job_login för @property och det nya Windows-kontot för @value.

    • Om du vill ändra säkerhetsläget som används vid anslutning till distributören anger du värdet distributor_security_mode för @property och värdet 1 (Windows-integrerad autentisering) eller 0 (SQL Server-autentisering) för @value.

    • När du ändrar distributörens säkerhetsläge till SQL Server-autentisering eller om du ändrar inloggningsinformation för SQL Server-autentisering anger du värdet distributor_password för @property och det nya lösenordet för @value. Upprepa steg 2 och ange värdet distributor_login för @property och den nya inloggningen för @value.

    Anmärkning

    När du har ändrat en agentinloggning eller ett lösenord måste du stoppa och starta om agenten innan ändringen börjar gälla.

Så här ändrar du säkerhetsinställningarna för sammanslagningsagenten för en push-prenumeration

  1. På Publisher-servern i publikationsdatabasen kör du sp_helpmergesubscription och anger @publication, @subscriber, och @subscriber_db. Detta ger prenumerationsegenskaper, inklusive säkerhetsinställningar för sammanslagningsagenten som körs hos distributören.

  2. I Publisher på publikationsdatabasen kör du sp_changemergesubscription, och anger @publication, @subscriber, @subscriber_db, namnet på säkerhetsegenskapen för @property, samt det nya värdet för egenskapen för @value.

  3. Upprepa steg 2 för var och en av följande säkerhetsegenskaper som ändras:

    • Om du vill ändra det Windows-konto under vilket agenten körs, eller bara lösenordet för det här kontot, anger du värdet merge_job_password för @property och ett nytt lösenord för @value. När du ändrar själva kontot upprepar du steg 2 och anger värdet merge_job_login för @property och det nya Windows-kontot för @value.

    • Om du vill ändra säkerhetsläget som används vid anslutning till prenumeranten anger du värdet subscriber_security_mode för @property och värdet 1 (Windows-integrerad autentisering) eller 0 (SQL Server-autentisering) för @value.

    • När du ändrar prenumerantsäkerhetsläget till SQL Server-autentisering, eller om du ändrar inloggningsinformation för SQL Server-autentisering, anger du värdet subscriber_password för @property och det nya lösenordet för @value. Upprepa steg 2 och ange värdet subscriber_login för @property och den nya inloggningen för @value.

    • Om du vill ändra säkerhetsläget som används vid anslutning till utgivaren anger du värdet publisher_security_mode för @property och värdet 1 (Windows-integrerad autentisering) eller 0 (SQL Server-autentisering) för @value.

    • När du ändrar publisher-säkerhetsläget till SQL Server-autentisering, eller om du ändrar inloggningsinformation för SQL Server-autentisering, anger du värdet publisher_password för @property och det nya lösenordet för @value. Upprepa steg 2 och ange värdet publisher_login för @property och den nya inloggningen för @value.

    Anmärkning

    När du har ändrat en agentinloggning eller ett lösenord måste du stoppa och starta om agenten innan ändringen börjar gälla.

    Viktigt!

    När du konfigurerar en utgivare med en fjärransluten distributör skickas de värden som anges för alla egenskaper, inklusive merge_job_login och merge_job_password, till distributören som oformaterad text. Du bör kryptera anslutningen mellan Utgivaren och dess fjärranslutna distributör innan du kör den här lagrade proceduren. Mer information finns i Aktivera krypterade anslutningar till databasmotorn (SQL Server Configuration Manager).

Så här ändrar du säkerhetsinställningarna för sammanslagningsagenten för en pull-prenumeration

  1. Kör sp_helpmergepullsubscription på Prenumeranten och ange @publication. Detta returnerar prenumerationsegenskaper, inklusive säkerhetsinställningar för sammanslagningsagenten som körs hos prenumeranten.

  2. På prenumerantens databas kör du sp_change_subscription_properties, specificerar @publisher, @publisher_db, @publication, namnet på säkerhetsegenskapen för @property och det nya värdet för egenskapen för @value.

  3. Upprepa steg 2 för var och en av följande säkerhetsegenskaper som ändras:

    • Om du vill ändra det Windows-konto under vilket agenten körs eller bara lösenordet för det här kontot anger du värdet merge_job_password för @property och nytt lösenord för @value. När du ändrar själva kontot upprepar du steg 2 och anger värdet merge_job_login för @property och det nya Windows-kontot för @value.

    • Om du vill ändra säkerhetsläget som används vid anslutning till distributören anger du värdet distributor_security_mode för @property och värdet 1 (Windows-integrerad autentisering) eller 0 (SQL Server-autentisering) för @value.

    • När du ändrar distributörens säkerhetsläge till SQL Server-autentisering eller om du ändrar inloggningsinformation för SQL Server-autentisering anger du värdet distributor_password för @property och det nya lösenordet för @value. Upprepa steg 2 och ange värdet distributor_login för @property och den nya inloggningen för @value.

    • Om du vill ändra säkerhetsläget som används vid anslutning till utgivaren anger du värdet publisher_security_mode för @property och värdet 1 (Windows-integrerad autentisering) eller 0 (SQL Server-autentisering) för @value.

    • När du ändrar publisher-säkerhetsläget till SQL Server-autentisering eller om du ändrar inloggningsinformation för SQL Server-autentisering anger du värdet publisher_password för @property och det nya lösenordet för @value. Upprepa steg 2 och ange värdet publisher_login för @property och den nya inloggningen för @value.

    Anmärkning

    När du har ändrat en agentinloggning eller ett lösenord måste du stoppa och starta om agenten innan ändringen börjar gälla.

Så här ändrar du säkerhetsinställningarna för ögonblicksbildsagenten för att generera en filtrerad ögonblicksbild för en prenumerant

  1. På Publishern, kör sp_helpdynamicsnapshot_job och ange @publication. I resultatuppsättningen noterar du värdet job_name för prenumerantens partition som ska ändras.

  2. På Publisher kör du sp_changedynamicsnapshot_job, anger @publication, värdet som hämtats från steg 1 för dynamic_snapshot_jobname och ett nytt lösenord för @job_password eller inloggning och lösenord för det Windows-konto som agenten kör för @job_login och @job_password.

    Viktigt!

    När du konfigurerar en utgivare med en fjärransluten distributör skickas de värden som anges för alla parametrar, inklusive job_login och job_password, till distributören som oformaterad text. Du bör kryptera anslutningen mellan Utgivaren och dess fjärranslutna distributör innan du kör den här lagrade proceduren. Mer information finns i Aktivera krypterade anslutningar till databasmotorn (SQL Server Configuration Manager).

Så här ändrar du säkerhetsinställningarna för köläsaragenten

  1. På distributören kör du sp_helpqreader_agent. Detta returnerar det aktuella Windows-konto under vilket köläsaragenten körs.

    • På distributören kör du sp_changeqreader_agent och specificerar Windows-kontoinställningarna för @job_login och @job_password.

    Anmärkning

    När du har ändrat en agentinloggning eller ett lösenord måste du stoppa och starta om agenten innan ändringen börjar gälla. Det finns en Queue Reader-agent för varje distributionsdatabas. Om du ändrar säkerhetsinställningarna för agenten påverkas inställningarna för alla publikationer på alla utgivare som använder den här distributionsdatabasen.

  2. Köläsaragenten ansluter till prenumeranten med samma anslutningskontext som distributionsagenten för prenumerationen.

Så här ändrar du säkerhetsläge som används av en omedelbart uppdaterande prenumerant när den ansluter till Utgivaren

  1. Kör sp_link_publication på prenumerationsdatabasens prenumerant. Ange @publisher, @publication, namnet på publikationsdatabasen för @publisher_dboch något av följande värden för @security_mode:

    • 0 för att använda SQL Server-autentisering när du gör uppdateringar på Publisher. Det här alternativet kräver att du anger en giltig inloggning i Publisher för @login och @password.

    • 1 för att använda säkerhetskontexten för användaren som gör ändringar hos prenumeranten när han eller hon ansluter till utgivaren. Se sp_link_publication för begränsningar relaterade till det här säkerhetsläget.

    • 2 för att använda en befintlig, användardefinierad länkad serverinloggning som skapats med sp_addlinkedserver (Transact-SQL).

Så här ändrar du lösenordet för en fjärransluten distributör

  1. På distributören i distributionsdatabasen, kör sp_changedistributor_password och ange det nya lösenordet för denna inloggning för @password.

    Viktigt!

    Ändra inte lösenordet för distributor_admin direkt.

  2. På varje utgivare som använder den här fjärrdistributören, kör sp_changedistributor_password och ange lösenordet från steg 1 för @password.

Använda replikeringshanteringsobjekt (RMO)

Viktigt!

När det är möjligt uppmanar du användarna att ange säkerhetsautentiseringsuppgifter vid körning. Om du måste lagra autentiseringsuppgifter använder du de kryptografiska tjänster som tillhandahålls av Microsoft Windows .NET Framework.

Ändra alla instanser av ett lösenord som lagras på en replikeringsserver

  1. Skapa en anslutning till replikeringsservern med hjälp ServerConnection av klassen .

  2. Skapa en instans av ReplicationServer klassen med hjälp av anslutningen från steg 1.

  3. Anropa ChangeReplicationServerPasswords metoden. Ange följande parametrar:

    • security_mode – ett ReplicationSecurityMode värde som anger vilken typ av autentisering som alla instanser av lösenordet ändras för.

    • login – inloggningen som alla instanser av lösenordet ändras för.

    • password – det nya lösenordsvärdet.

      Viktigt!

      När det är möjligt uppmanar du användarna att ange säkerhetsautentiseringsuppgifter vid körning. Om du måste lagra autentiseringsuppgifter använder du de kryptografiska tjänster som tillhandahålls av Windows .NET Framework.

      Anmärkning

      Endast en medlem i den fasta serverrollen sysadmin kan anropa den här metoden.

  4. Upprepa steg 1–3 på varje server i replikeringstopologin där lösenordet måste uppdateras.

Ändra säkerhetsinställningarna för distributionsagenten för en push-prenumeration till en transaktionspublikation

  1. Skapa en anslutning till Publisher med hjälp av klassen ServerConnection.

  2. Skapa en instans av TransSubscription klassen.

  3. Ange egenskaperna PublicationName, DatabaseName, SubscriberName och SubscriptionDBName för prenumerationen och anslutningen från steg 1 för egenskapen ConnectionContext.

  4. Anropa metoden LoadProperties för att hämta objektets egenskaper. Om den här metoden returnerar false har antingen prenumerationsegenskaperna i steg 3 definierats felaktigt eller så finns inte prenumerationen.

  5. Ange en eller flera av följande säkerhetsegenskaper på instansen av TransSubscription:

  6. (Optional) Om du har angett värdet true för CachePropertyChanges, anropa metoden CommitPropertyChanges för att slutföra ändringar på servern. Om du har angett värdet false för CachePropertyChanges (standardvärdet) skickas ändringarna omedelbart till servern.

Ändra säkerhetsinställningarna för distributionsagenten för en pull-prenumeration till en transaktionspublikation

  1. Skapa en anslutning till prenumeranten ServerConnection med hjälp av klassen .

  2. Skapa en instans av TransPullSubscription klassen.

  3. Ange egenskaperna PublicationName, DatabaseName, PublisherName och PublicationDBName för prenumerationen och anslutningen från steg 1 för egenskapen ConnectionContext.

  4. Anropa metoden LoadProperties för att hämta objektets egenskaper. Om den här metoden returnerar false har antingen prenumerationsegenskaperna i steg 3 definierats felaktigt eller så finns inte prenumerationen.

  5. Ange en eller flera av följande säkerhetsegenskaper på instansen av TransPullSubscription:

  6. (Optional) Om du har angett värdet true för CachePropertyChanges, anropa metoden CommitPropertyChanges för att slutföra ändringar på servern. Om du har angett värdet false för CachePropertyChanges (standardvärdet) skickas ändringarna omedelbart till servern.

Ändra säkerhetsinställningarna för sammanslagningsagenten för en pull-prenumeration till en sammanslagningspublikation

  1. Skapa en anslutning till prenumeranten ServerConnection med hjälp av klassen .

  2. Skapa en instans av MergePullSubscription klassen.

  3. Ange egenskaperna PublicationName, DatabaseName, PublisherName och PublicationDBName för prenumerationen och anslutningen från steg 1 för egenskapen ConnectionContext.

  4. Anropa metoden LoadProperties för att hämta objektets egenskaper. Om den här metoden returnerar false har antingen prenumerationsegenskaperna i steg 3 definierats felaktigt eller så finns inte prenumerationen.

  5. Ange en eller flera av följande säkerhetsegenskaper på instansen av MergePullSubscription:

  6. (Optional) Om du har angett värdet true för CachePropertyChanges, anropa metoden CommitPropertyChanges för att slutföra ändringar på servern. Om du har angett värdet false för CachePropertyChanges (standardvärdet) skickas ändringarna omedelbart till servern.

Ändra säkerhetsinställningarna för sammanslagningsagenten för en push-prenumeration till en sammanslagningspublikation

  1. Skapa en anslutning till Publisher med hjälp av klassen ServerConnection.

  2. Skapa en instans av MergeSubscription klassen.

  3. Ange egenskaperna PublicationName, DatabaseName, SubscriberName och SubscriptionDBName för prenumerationen och anslutningen från steg 1 för egenskapen ConnectionContext.

  4. Anropa metoden LoadProperties för att hämta objektets egenskaper. Om den här metoden returnerar false har antingen prenumerationsegenskaperna i steg 3 definierats felaktigt eller så finns inte prenumerationen.

  5. Ange en eller flera av följande säkerhetsegenskaper på instansen av MergeSubscription:

  6. (Optional) Om du har angett värdet true för CachePropertyChanges, anropa metoden CommitPropertyChanges för att slutföra ändringar på servern. Om du har angett värdet false för CachePropertyChanges (standardvärdet) skickas ändringarna omedelbart till servern.

Så här ändrar du inloggningsinformationen som används av en omedelbar uppdateringsprenumerant när den ansluter till den transaktionsutgivaren

  1. Skapa en anslutning till prenumeranten ServerConnection med hjälp av klassen .

  2. Skapa en instans av ReplicationDatabase klassen för prenumerationsdatabasen. Ange Name och ServerConnection från steg 1 för ConnectionContext.

  3. Anropa metoden LoadProperties för att hämta objektets egenskaper. Om den här metoden returnerar false har antingen databasegenskaperna i steg 2 definierats felaktigt eller så finns inte prenumerationsdatabasen.

  4. LinkPublicationForUpdateableSubscription Anropa metoden och skicka följande parametrar:

    • Publisher – namnet på utgivaren.

    • PublisherDB – namnet på publikationsdatabasen.

    • Publikation – namnet på den publikation som den omedelbart uppdaterade prenumeranten prenumererar på.

    • Distributör – namnet på distributören.

    • PublisherSecurity – ett PublisherConnectionSecurityContext objekt som anger vilken typ av säkerhetsläge som används av den omedelbara uppdateringsprenumeranten när du ansluter till utgivaren och inloggningsuppgifterna för anslutningen.

Exempel (RMO)

Det här exemplet kontrollerar det angivna inloggningsvärdet och ändrar alla lösenord för den angivna Windows-inloggningen eller SQL Server-inloggningen som lagras av replikeringen på servern.

// 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[0] = @"\";

        // 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 occurred 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 occurred when changing agent login " + _
     " credentials on {0}.", serverName), ex)
Finally
    conn.Disconnect()
End Try

Följ upp: När du har modifierat säkerhetsinställningarna för replikering

När du har ändrat en agentinloggning eller ett lösenord måste du stoppa och starta om agenten innan ändringen börjar gälla.