更新訂閱的安全性考量

除了訂閱的一般性考量之外,還需要一些更新訂閱的考量。

立即更新訂閱

設定立即更新訂閱時,要指定「訂閱者」用來連接到「發行者」的帳戶。觸發程序會使用連接在訂閱者端引發,並將變更傳播到發行者。此連接類型有三個選項可用:

  • 複寫建立的連結伺服器;用您在設定時指定的認證來建立連接。

  • 複寫建立的連結伺服器;用在「訂閱者」端執行變更的使用者認證來建立連接。

  • 您已定義的連結伺服器或遠端伺服器。

重要事項重要事項

若要指定連接資訊,請使用 sp_link_publication (Transact-SQL) 預存程序。您也可以使用「新增訂閱精靈」的 [可更新訂閱的登入] 頁面,此頁面會呼叫 sp_link_publication。在某些情況下,如果「訂閱者」執行 SQL Server 2005 Service Pack 1 (SP1) 或更新版本,且「發行者」執行較舊的版本,此預存程序可能會失敗。如果在此情況下預存程序失敗,請將「發行者」升級為 SQL Server 2005 SP1 或更新版本。

如需詳細資訊,請參閱:

重要事項重要事項

為連接指定的帳戶只能授與插入、更新及刪除複寫在發行集資料庫中建立的檢視之資料的權限,而不能授與任何其他權限。對於您在各個「訂閱者」端設定的帳戶,則授與發行集資料庫中以 syncobj_<HexadecimalNumber> 形式命名之檢視的權限。

佇列更新訂閱

設定佇列更新訂閱時,請注意與安全性相關的兩方面:

  • 每個散發者只能有一個「佇列讀取器代理程式」。建議為每個「散發者」最多設定一個為佇列更新訂閱啟用的發行集。

  • 「佇列讀取器代理程式」可連接到「散發者」、「發行者」及各個「訂閱者」。

    • 代理程式執行和連接到「散發者」時所用的帳戶,會在您建立代理程式時指定 (如果使用「新增訂閱精靈」,則會在建立為更新訂閱啟用的發行集時建立代理程式)。

    • 代理程式連接到「發行者」時所用的帳戶,會在您為「發行者」設定散發時指定。指定代理程式執行時所用的 Windows 帳戶或 SQL Server 帳戶。

    • 代理程式連接到「訂閱者」時所用的帳戶,會在您建立訂閱時指定。

    重要事項重要事項

    使用「SQL Server 驗證」以連接到「訂閱者」,然後為每個「訂閱者」的連接指定不同帳戶。如果使用提取訂閱,複寫會永遠將連接設定為使用「Windows 驗證」(對於提取訂閱來說,複寫無法存取使用「SQL Server 驗證」所需的「訂閱者」端中繼資料)。在此情況下,請在設定訂閱後,將連接變更為使用「SQL Server 驗證」。

    如需詳細資訊,請參閱: