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ší