BizTalk Server 部署的安全性建議
本節包含高階、非特定功能的建議,以保護您的 Microsoft BizTalk Server 環境的安全。
拓撲層級的建議
使用通道層級加密。 依照預設,BizTalk Server 中各元件之間的網路資料流是純文字。 若擔心訊息從一台電腦傳送到另一台電腦時遭到探查或竄改,建議您使用通道層級加密,例如網際網路通訊協定安全性 (IPSec) 或安全通訊端層 (SSL)。 因為依照預設,BizTalk Server 不會設定通道層級加密,所以 BizTalk Server 不會把加密金鑰和密碼之類的重要資料以純文字傳遞。 SSO 資料庫管理敏感性資訊的方式是使用主要密碼伺服器提供的主要密碼 (加密金鑰) 以加密的格式儲存。 依照預設,SSO 資料庫以加密的格式接收、儲存和傳送敏感性資訊。
如需 SSL 的詳細資訊,請參閱 https://go.microsoft.com/fwlink/p/?LinkId=189708 。
協助確保伺服器的實體安全性。 您也必須考慮伺服器、裝置、網路、纜線、電源供應和其他元件的實體安全性。 您應該將電腦放置在安全的環境中,並限制存取含有企業重要資訊的電腦,像是資料庫。
僅安裝要使用的元件。 若需要在環境中 (在周邊網路的電腦上或在執行 HTTP 和 SOAP 配接器的電腦中) 安裝 Internet Information Services (IIS),您不需要安裝 IIS 的「檔案傳輸通訊協定」(FTP)、WebDAV 和「簡易郵件傳送通訊協定」(SMTP) 子元件。 同樣地,請確定您僅安裝和設定環境所需的 BizTalk Server 功能。 例如,僅設定您要使用的「BizTalk 訊息佇列」配接器。 如此可協助您降低環境中潛在的攻擊介面。
如果使用 Internet Explorer,建議您開啟 Internet Explorer 的增強安全性。
安裝 Service Pack 和更新。 建議您一律在所有具有BizTalk Server資源的伺服器上安裝最新的產品 Service Pack 和 Microsoft 更新,包括SQL Server。
請勿將密碼以純文字儲存在指令碼或繫結檔案中。 您應該將指令碼儲存在具有強式判別存取控制清單 (DACL) 的位置,如此只有 BizTalk Server 系統管理員具有檢視、修改和執行這些指令碼的權限。 當指令碼和繫結檔案需要密碼時,務必要在使用指令碼組態或部署時遮罩密碼。 請勿將密碼以純文字保留在這些檔案中。
使用強式判別存取控制清單 (DACL)。 確定您僅將資源的存取權給與使用它的使用者和帳戶,而且僅給與執行工作所需的最小權限。 將組態指令碼放置在具有 DACL 的 BizTalk Server 系統管理員的位置,請勿將純文字密碼放置在指令碼中。 確定 BizTalk Server 使用的所有服務帳戶之暫存目錄都有 DACL,如此只有該服務帳戶和 BizTalk 系統管理員具有存取權。
當您有自訂配接器時,建議您將介面卡擴充元件儲存在具有強式 DACL 的位置,因此只有BizTalk Server系統管理員具有這些元件的寫入權限。
請勿將 BizTalk Server 放在周邊網路中。 無論公司的規模大小,將 BizTalk Server 放在周邊網路中都會使伺服器暴露於網際網路的直接攻擊和周邊網路中其他伺服器的攻擊,而可能受到危害。 由於BizTalk Server與資料網域中的 Microsoft SQL Server 資料庫通訊,因此惡意使用者可以利用遭入侵BizTalk Server竄改重要的商務處理和設定資料。
BizTalk Server 群組和帳戶
使用具有最小權限和使用者權限的帳戶。 BizTalk Server 系統中的所有帳戶都應具有執行工作所需的最小使用者權限。 例如,您用來處理伺服器的服務帳戶不應該具有 BizTalk Server、SQL Server 或 Windows Server 的管理使用者權限。 如需帳戶在BizTalk Server中執行工作所需的最低安全性許可權和使用者權限的詳細資訊,請參閱最低安全性使用者權限。 如需BizTalk Server使用之群組和帳戶的詳細資訊,請參閱BizTalk Server 中的 Windows 群組和使用者帳戶。
不同功能使用不同帳戶。 為了協助保留BizTalk Server環境的安全性,建議您為環境中執行的每個主機實例建立不同的服務帳戶。 這樣也可以在密碼更新期間配置更佳的可用性。 我們建議一個服務帳戶不是多個 Windows 群組的成員,BizTalk Server。
此外,我們建議您針對每個 BizTalk 主機使用不同的 Windows 群組,而且屬於某個群組成員的服務帳戶不是另一部主機的 Windows 群組成員。 這樣可為每個 BizTalk 主控件提供強式安全隔離。
建議您只針對追蹤主機建立 Windows 群組,並針對追蹤主機實例使用此群組中的服務帳戶。 請勿將此服務帳戶用於其他服務,也不要使用 BizTalk 系統管理員帳戶來追蹤主控件執行個體。
不同功能使用不同主控件。 建議您只建立主機以進行追蹤。 設定為「主控件追蹤」的主控件擁有 MessageBox 資料庫中追蹤資料表與追蹤資料庫中資料表的讀取和寫入存取權限。 因此,在該主控件追蹤的主控件中執行的任何物件,也會擁有這些資料表的讀取和寫入存取權限。 若要封鎖從管線和協調流程等使用者專案存取可能敏感的追蹤資料,建議您建立專用主機來追蹤不會處理、傳送或接收訊息。
此外,我們建議您使用不同的主機來處理、接收和傳送訊息。 然後您可以獨立出需要存取公司私密憑證的服務帳戶。 在這些帳戶之下執行的指令碼越少,透過漏洞危害帳戶的可能性就越低,便可降低危害私密憑證的風險。
定期變更密碼。 您必須定期變更服務帳戶的密碼。 考量到您的主控件執行個體可能有多個服務帳戶,您必須變更這些服務帳戶的密碼。
警告
您必須在 BizTalk 管理主控台中變更主機實例的服務帳戶密碼。 在「電腦管理」主控台中變更主控件執行個體服務帳戶的密碼會導致組態問題。
限制 BizTalk 系統管理員群組的成員資格。 BizTalk Server 系統管理員具有跨越 BizTalk Server 環境的使用者權限,包括對大部分資料 (不論加密與否) 的存取權。 因此,BizTalk 系統管理員失誤所造成的不正確組態會暴露出重要的安全性漏洞。 行為不當的 BizTalk 系統管理員會對系統造成無限的危害,包括客戶資料的機密、完整性和可用性。
若開發人員在生產環境中直接將協調流程部署到電腦,網域系統管理員必須授與開發人員 BizTalk 系統管理員使用者權限。 基於前述理由,不建議這樣做。
限制 COM+ 系統管理員群組的成員資格。 由於各種架構性因素,COM+ 系統管理員具有數個 BizTalk Server 元件的系統管理員使用者權限。 基於所有實務上的目的,您必須假設在電腦上的 COM+ 系統管理員也是 BizTalk 系統管理員,而且應該限制 BizTalk 實際伺服器中此群組的成員資格。
僅給與使用者執行需要存取的服務之電腦的存取權。 並非所有帳戶都需要所有電腦的權限。 BizTalk 主控件執行個體將敏感性資訊保留在記憶體中。 這些可能是像密碼或商務資訊等的重要資料。 在這些電腦上應該要設定非常嚴密的本機使用者原則。 例如,僅將這些電腦上的本機登入權限授與需要這些權限來維護部署的個人。 如此可減輕存取交換檔和損毀傾印所造成的威脅。
限制 Power Users 群組的權限,或將它移除。 Power Users 群組的預設權限給與此群組的成員修改全電腦設定的使用者權限,包括在全域組件快取 (GAC) 中註冊的 BizTalk 組件。 每部電腦都有 GAC,包含一或多個應用程式共用的組件。 建議您從 Power Users 群組中移除變更元件的許可權,或從生產 BizTalk Server 中刪除 Power Users 群組。