Dela via


Metodtips för replikeringssäkerhet

gäller för:SQL Server

Replikering flyttar data i distribuerade miljöer som sträcker sig från intranät på en enda domän till program som har åtkomst till data mellan ej betrodda domäner och via Internet. Det är viktigt att förstå den bästa metoden för att skydda replikeringsanslutningar under dessa olika omständigheter.

Följande information är relevant för replikering i alla miljöer:

  • Kryptera anslutningarna mellan datorer i en replikeringstopologi med hjälp av en branschstandardmetod, till exempel virtuella privata nätverk (VPN), TLS (Transport Layer Security), tidigare kallat Secure Sockets Layer (SSL) eller IPSec (IPSEC). Mer information finns i Aktivera krypterade anslutningar till databasmotorn (SQL Server Configuration Manager). Information om hur du använder VPN och TLS för replikering av data via Internet finns i Skydda replikering via Internet.

    Om du använder TLS för att skydda anslutningarna mellan datorer i en replikeringstopologi anger du värdet 1 eller 2 för parametern -EncryptionLevel för varje replikeringsagent (ett värde på 2 rekommenderas). Värdet 1 anger att kryptering används, men agenten verifierar inte att TLS/SSL-servercertifikatet har signerats av en betrodd utfärdare. värdet 2 anger att certifikatet är verifierat. Agentparametrar kan anges i agentprofiler och på kommandoraden. Mer information finns i:

  • Kör varje replikeringsagent under ett annat Windows-konto och använd Windows-autentisering för alla replikeringsagentanslutningar. Mer information om hur du anger konton finns i Identitets- och åtkomstkontroll för replikering.

  • Bevilja endast de behörigheter som krävs till varje agent. Mer information finns i avsnittet "Behörigheter som krävs av agenter" i Säkerhetsmodell för replikeringsagent.

  • Kontrollera att alla merge agent- och distributionsagentkonton finns i publikationens åtkomstlista (PAL). Mer information finns i Skydda utgivaren.

  • Följ principen om minsta behörighet genom att endast tillåta konton i PAL de behörigheter de behöver för att utföra replikeringsuppgifter. Lägg inte till inloggningarna till några fasta serverroller som inte krävs för replikering.

  • Konfigurera ögonblicksdelningen så att den tillåter läsåtkomst för alla sammanslagningsagenter och distributionsagenter. När det gäller ögonblicksbilder för publikationer med parametriserade filter kontrollerar du att varje mapp har konfigurerats för att endast tillåta åtkomst till lämpliga Merge Agent-konton.

  • Konfigurera ögonblicksbildsdelningen så att den tillåter skrivåtkomst av Ögonblicksbildsagenten.

  • Om du använder pull-prenumerationer använder du en nätverksresurs i stället för en lokal sökväg för ögonblicksbildmappen.

Om replikeringstopologin innehåller datorer som inte finns i samma domän eller finns i domäner som inte har förtroenderelationer med varandra, kan du använda Windows-autentisering eller SQL Server-autentisering för anslutningar som görs av agenter (Mer information om domäner finns i Windows-dokumentationen). Vi rekommenderar att du använder Windows-autentisering som bästa säkerhet.

  • Så här använder du Windows-autentisering:

    • Lägg till ett lokalt Windows-konto (inte ett domänkonto) för varje agent vid lämpliga noder (använd samma namn och lösenord på varje nod). Distributionsagenten för en push-prenumeration körs till exempel hos distributören och ansluter till distributören och prenumeranten. Windows-kontot för distributionsagenten ska läggas till i distributören och prenumeranten.

    • Se till att en viss agent (till exempel distributionsagenten för en prenumeration) körs under samma konto på varje dator.

  • Så här använder du SQL Server-autentisering:

    • Lägg till ett SQL Server-konto för varje agent vid lämpliga noder (använd samma kontonamn och lösenord vid varje nod). Distributionsagenten för en push-prenumeration körs till exempel hos distributören och ansluter till distributören och prenumeranten. SQL Server-kontot för distributionsagenten ska läggas till i distributören och prenumeranten.

    • Se till att en viss agent (till exempel distributionsagenten för en prenumeration) upprättar anslutningar under samma konto på varje dator.

    • I situationer som kräver SQL Server-autentisering är åtkomst till UNC-ögonblicksbildresurser ofta inte tillgänglig (till exempel kan åtkomst blockeras av en brandvägg). I det här fallet kan du överföra ögonblicksbilden till Prenumeranter via file transfer protocol (FTP). Mer information finns i Överföra ögonblicksbilder via FTP-.

Förbättra säkerhetsstatusen med databasens huvudnyckel

När du använder SQL Server-autentisering för replikering lagras hemligheter som du anger när du konfigurerar replikering i SQL Server – särskilt i distributionsdatabasen och, för pull-prenumerationer, även i prenumerantdatabasen.

För att förbättra säkerhetsstatusen för replikering innan du börjar konfigurera replikering:

  • Skapa en databashuvudnyckel (DMK) i distributionsdatabasen på den server som är värd för distributören.
  • För pull-prenumerationer skapar du även en DMK i prenumerantdatabasen.

Om replikeringen skapades före DMK skapar du först DMK och uppdaterar sedan replikeringshemligheter genom att uppdatera lösenord för replikeringsjobb. Du kan uppdatera jobbet med samma lösenord eller använda ett nytt lösenord.

Om du vill uppdatera replikeringshemligheter använder du någon av följande relevanta lagrade procedurer för att uppdatera lösenord för replikeringsjobb:

Om du konfigurerar transaktionsreplikering utan en DMK kan det resultera i SQL Server-varning 14130 på:

  • Hanterad instans i Azure SQL
  • SQL Server 2022 CU18 och senare
  • SQL Server 2019 CU31 och senare