Sdílet prostřednictvím


Osvědčené postupy zabezpečení replikace

platí pro:SQL Server

Replikace přesouvá data v distribuovaných prostředích od intranetů v jedné doméně až po aplikace, které přistupují k datům mezi nedůvěryhodnými doménami a přes internet. Je důležité pochopit nejlepší přístup pro zabezpečení připojení replikace za těchto různých okolností.

Následující informace jsou relevantní pro replikaci ve všech prostředích:

  • Zašifrujte připojení mezi počítači v topologii replikace pomocí standardní metody, jako jsou virtuální privátní sítě (VPN), protokol TLS (Transport Layer Security), dříve označovaný jako SSL (Secure Sockets Layer) nebo IPSEC (Ip Security). Další informace najdete v tématu Povolení šifrovaných připojení k databázovému stroji (SQL Server Configuration Manager). Informace o použití sítě VPN a TLS pro replikaci dat přes internet naleznete v tématu Zabezpečení replikace přes internet.

    Pokud k zabezpečení připojení mezi počítači v topologii replikace používáte protokol TLS, zadejte hodnotu 1 nebo 2 pro parametr -EncryptionLevel každého agenta replikace (doporučuje se hodnota 2 ). Hodnota 1 určuje, že se používá šifrování, ale agent neověře, že certifikát serveru TLS/SSL je podepsaný důvěryhodným vystavitelem; hodnota 2 určuje, že je certifikát ověřený. Parametry agenta je možné zadat v profilech agenta a na příkazovém řádku. Další informace najdete tady:

  • Spusťte každého agenta replikace pod jiným účtem Windows a pro všechna připojení agenta replikace použijte ověřování systému Windows. Další informace o zadávání účtů najdete v tématu Identita a řízení přístupu pro replikaci.

  • Udělte každému agentu jenom požadovaná oprávnění. Další informace naleznete v části Oprávnění vyžadovaná agenty v modelu zabezpečení agenta replikace.

  • Ujistěte se, že všechny účty agenta sloučení a distribučního agenta jsou v přístupovém seznamu publikace (PAL). Další informace naleznete v tématu Zabezpečení vydavatele.

  • Postupujte podle principu nejnižšího oprávnění tím, že povolíte účtům v pal jenom oprávnění, která potřebují k provádění úloh replikace. Nepřidávejte přihlášení k žádným pevným rolím serveru, které nejsou vyžadovány pro replikaci.

  • Nakonfigurujte sdílenou složku snímků tak, aby umožňovala přístup pro čtení všemi agenty sloučení a distribučními agenty. V případě snímků publikací s parametrizovanými filtry se ujistěte, že je každá složka nakonfigurovaná tak, aby umožňovala přístup pouze k příslušným účtům agenta sloučení.

  • Nakonfigurujte sdílenou složku snímků tak, aby umožňovala přístup k zápisu agentem snímků.

  • Pokud používáte předplatná vyžádané replikace, použijte sdílenou síťovou složku místo místní cesty ke složce snímku.

Pokud vaše topologie replikace zahrnuje počítače, které nejsou ve stejné doméně nebo jsou v doménách, které nemají vztahy důvěryhodnosti mezi sebou, můžete pro připojení vytvořená agenty použít ověřování systému Windows nebo ověřování SQL Serveru (Další informace o doménách najdete v dokumentaci k Systému Windows). Doporučuje se jako osvědčený postup zabezpečení, abyste používali ověřování systému Windows.

  • Použití ověřování systému Windows:

    • Přidejte místní účet Systému Windows (ne účet domény) pro každého agenta na příslušných uzlech (použijte stejný název a heslo na každém uzlu). Například distribuční agent pro nabízené předplatné běží na distributoru a zajišťuje připojení k distributoru a odběrateli. Windows účet pro Distribučního agenta by měl být přidán k Distributorovi a Subscriberovi.

    • Ujistěte se, že se daný agent (například distribuční agent pro předplatné) spouští na každém počítači pod stejným účtem.

  • Použití ověřování SQL Serveru:

    • Přidejte účet SQL Serveru pro každého agenta na příslušných uzlech (použijte stejný název účtu a heslo na každém uzlu). Například distribuční agent pro pushové předplatné běží na distributoru a vytváří připojení k distributorovi a odběrateli. Účet SQL Server pro distribučního agenta by měl být přidán k distributorovi a odběrateli.

    • Ujistěte se, že daný agent (například distribuční agent pro předplatné) provádí připojení ve stejném účtu na každém počítači.

    • V situacích, které vyžadují ověřování SQL Serveru, často není dostupný přístup ke sdíleným složkám se snapshoty UNC (například přístup může být blokován bránou firewall). V takovém případě můžete snímek přenést předplatitelům přes protokol FTP (File Transfer Protocol). Další informace naleznete v tématu Přenos snímků přes FTP.

Vylepšení stavu zabezpečení pomocí hlavního klíče databáze

Při použití ověřování SQL Serveru pro replikaci se tajné kódy, které zadáte při konfiguraci replikace, ukládají v RÁMCI SQL Serveru – konkrétně v distribuční databázi a pro odběry vyžádaných změn, také v databázi odběratelů.

Pokud chcete zvýšit stav zabezpečení pro replikaci, před zahájením konfigurace replikace:

  • Vytvořte hlavní klíč databáze (DMK) v distribuční databázi serveru, který je hostitelem distributora.
  • Pro vyžádaná předplatná, vytvořte také DMK v databázi odběratele.

Pokud byla replikace vytvořena před DMK, nejprve vytvořte DMK a pak aktualizujte tajné kódy replikace aktualizací hesel pro úlohy replikace. Úlohu můžete aktualizovat stejným heslem nebo můžete použít nové heslo.

Pokud chcete aktualizovat tajné kódy replikace, použijte jednu z následujících uložených procedur k aktualizaci hesel pro úlohy replikace:

Konfigurace transakční replikace bez DMK může vést k upozornění 14130 SQL Serveru na:

  • Azure SQL Managed Instance (Spravovaná instance SQL na Azure)
  • SQL Server 2022 CU18 a novější
  • SQL Server 2019 CU31 a novější