防禦環境的高可用性和災害復原考量

本文說明為 Privileged Access Management (PAM) 部署 Active Directory 網域服務 (AD DS) 和 Microsoft Identity Manager 2016 (MIM) 時,針對高可用性和災害復原的考量。

企業專注於 Windows Server、SQL Server 和 Active Directory 的工作負載高可用性和災害復原。 但是,Privileged Access Management 的防禦環境穩定可用性也很重要。 防禦環境是組織 IT 基礎結構的重要部分,因為使用者與元件互動是為了擔任系統管理角色。 如需一般高可用性的詳細資訊,您可以下載 Microsoft High Availability Overview (Microsoft 高可用性概觀) 白皮書。

高可用性和災害復原案例

在規劃高可用性和災害復原時,請考量下列問題︰

  • 哪些功能會受中斷影響?
  • 哪些功能對商務和/或 IT 營運至為關鍵?
  • 什麼樣的風險會導致這些系統中斷?

這些考量的範圍會影響部署和作業的總成本,所以組織可能會更為看重某些功能,也能接受重要性較低功能的暫時中斷風險。 下表列出組織可能會使用的潛在排名︰

防禦樹系功能 復原期間的相對優先順序 功能若無法使用可降低風險
建立信任 等到防禦環境還原
降低使用者和群組風險 等到防禦環境還原
MIM 系統管理 等到防禦環境還原
啟用特殊權限角色 中型 以手動方式將使用者新增至系統管理群組的智慧卡支援專用帳戶
資源管理 以手動方式將使用者新增至系統管理群組的智慧卡支援專用帳戶
監視現有樹系中的使用者和群組 等到防禦環境還原

現在讓我們一一查看這些防禦樹系的每項功能。

建立信任

現有樹系的網域和防禦環境樹系之間需要有樹系信任。 這樣,使用者對防禦環境的驗證才可以系統管理現有樹系的資源。 可能需要其他設定,例如,允許使用者從舊版 Windows Server 的現有網域移轉。

建立信任需要有在線上的現有樹系網域控制站,以及防禦環境的 MIM 與 AD 元件。 如果在建立信任期間,這些項目有任何一項發生中斷,系統管理員都可以在處理完中斷後重試。 假如現有的樹系網域控制站或防禦環境在中斷後復原,MIM 也會包含 PowerShell Cmdlet Test-PAMTrustTest-PAMDomainConfiguration,用來驗證信任是否仍在。

移轉使用者和群組

一旦建立信任,就可在防禦環境中建立陰影群組,以及這些群組和核准者成員的使用者帳戶。 這會讓這些使用者得以啟用特殊權限角色,並重新獲得有效的群組成員資格。

使用者和群組移轉需要有在線上的現有樹系網域控制站,以及防禦環境的 MIM 與 AD 元件。 如果無法連接現有的樹系網域控制站,則其他使用者和群組就無法加入防禦環境中,但現有的使用者和群組不受影響。 如有任一元件在移轉期間發生中斷,系統管理員都可以在處理完中斷後重試。

MIM 系統管理

只要使用者和群組完成移轉,系統管理員就可在 MIM 中進一步設定將使用者連結為候選項目的角色指派以啟用角色。 他們也可以設定 MIM 原則以進行核准。

MIM 系統管理需要有在線上的防禦環境 MIM 和 AD 元件。

啟用特殊權限角色

當使用者想要啟用特殊權限角色時,必須驗證防禦環境網域,並向 MIM 提交要求。 MIM 包含 SOAP 和 REST API,以及 PowerShell 和網頁的使用者介面。

特殊權限角色啟用需要有在線上的防禦環境 MIM 和 AD 元件。 此外,如果 MIM 已設定為使用 Azure MFA 來啟用 選取的角色,則需要網際網路存取權,才能連絡 Azure MFA 服務。

資源管理

只要有使用者成功啟用角色,網域控制站就可以為其產生可供現有網域之網域控制站使用的 Kerberos 票證,並且可以識別使用者的新暫存群組成員資格。

資源管理需要有在線上的資源網域網域控制站,以及在防禦環境中的網域控制站。 一旦啟用使用者,發出其 Kerberos 票證就不需要防禦環境有在線上的 MIM 或 SQL。 請注意,這需要 MIM PAM 和 Windows Server 使用Windows Server 2016或更新版本作為防禦環境的功能等級,讓 AD DS 可以移除暫時成員資格。)

監視現有樹系中的使用者和群組

MIM 也包含 PAM 監視服務,定期檢查現有網域的使用者與群組,並據以更新 MIM 資料庫與 AD。 啟用角色或在資源管理期間,不需要此服務在線上。

監視需要有在線上的現有樹系網域控制站,以及防禦環境的 MIM 與 AD 元件。

部署選項

環境概觀示範適合學習不追求高可用性技術的基本拓撲。 本節說明如何擴充該拓撲,為具有單一網站的組織以及具有多個現有網站的組織提供高可用性。

網路功能

在防禦環境中,電腦之間的網路流量應與現有網路隔離,例如使用不同的實體或虛擬網路。 電腦之間可能也需要有獨立的實體互連,視防禦環境的風險而定。 某些容錯移轉叢集技術對網路介面有其他要求。

防禦環境中,裝載 Active Directory 網域服務的電腦和裝載 MIM 服務的電腦,都需要有現有樹系資源的雙向連線,以︰

  • 由 PRIV 樹系網域控制站驗證使用者
  • 讓使用者要求啟用
  • 讓使用者擁有現有樹系資源使用的 Kerberos 票證
  • 讓 MIM 監視現有的樹系網域
  • 讓 MIM 透過現有樹系中的郵件伺服器傳送電子郵件。

最小高可用性拓樸

組織可以使用下列條件約束,選取其防禦環境中需要高可用性的功能︰

  • 防禦環境所提供,適合任何功能的高可用性,至少需要兩個網域控制站。
  • 啟用要求的高可用性,至少需要兩部裝載 MIM 服務的電腦,也需要 SQL Server 高可用性。
  • 有容錯移轉叢集的 SQL Server 高可用性,至少需要兩部提供 SQL Server 的伺服器,且它們不能和網域控制站相同。
  • 為減少每部伺服器的攻擊面,MIM 服務不應安裝在網域控制站。

防禦環境中適合所有功能的最小高可用性拓樸,至少包含四部伺服器和共用存放裝置。 兩部伺服器必須設定為網域控制站,提供 Active Directory 網域服務。 其他兩部伺服器可以設定為提供SQL Server的容錯移轉叢集,並提供 MIM 服務。

此外,一般的防禦環境部署也包含特殊權限系統管理工作站以管理這些伺服器及監視元件。

下圖說明一種可能的架構︰

防禦拓撲 - 圖表

其他的伺服器可設定為供這些功能使用,以在負載情況下或為地理備援提供更高的效能,如下所述。

支援多個網站的部署

根據三個因素選擇正確的部署拓撲,供部署在多個網站的資源使用︰

  • 高可用性和災害復原的目標及風險
  • 裝載防禦環境的硬體功能
  • 每個網站的系統管理工作模型。

最簡單的方法之一,是在特定網站裝載防禦環境。 在一般情況下,使用者會連接到該網站防禦環境中的 MIM 部署並要求啟用,而啟用應該對各網站的資源都有效。 萬一網路連線已中斷,或無法使用裝載防禦環境的網站,可以存取另一個網站的離線認證,以執行暫存系統管理工作,直到重新連接網路。 這個方法可能適合特定網站的本機系統管理,例如分公司辦公室,這種情況極少見,而且只有在重新連線到組織網路其餘部分網站時才可能出現。

多網站的單一防禦拓樸 - 圖表

針對跨網站的高可用性和災害復原,也可以在每個網站部署防禦環境的元件,共用通用的 PRIV 目錄和通用的 SQL 資料庫。 在此拓撲中,倘若網路連結中斷,每個網站的使用者都可以繼續獨立操作。

多網站的多防禦拓樸 - 圖表

這種部署方法的一個條件約束是,SQL Server 需要跨越兩個網站的叢集,部署可能會很複雜。 在此情況下,請考慮替代方案:只複寫防禦環境的 Active Directory (PRIV 樹系)。 如果網站之間的網路中斷,網站 B 中先前已啟用其特殊權限角色的使用者將能夠繼續操作以管理網站 B 的資源。

多網站複寫防禦拓樸 - 圖表

如果每個網站都代表不同的系統管理範圍,也可以部署多個獨立的防禦環境。 雖然每個防禦環境都會有相同的軟體,但會有不同的網域名稱,而且每個防禦環境的目錄和資料庫之間沒有共通性。 想要管理特定網站資源的使用者,可以啟用該網站防禦環境中的使用者帳戶。

多網站獨立防禦拓樸 - 圖表

最後,也可能有更複雜的部署,因為多防禦環境可以獨立方式設定,以管理特定網域中的資源。

多網站的複雜防禦拓樸 - 圖表

託管的防禦環境

有些組織也曾考慮建立與其全部現有網站隔開的防禦環境。 防禦環境軟體可裝載於虛擬平台上,可位於組織網路內部或外部的託管服務提供者。 評估這種方法時,請牢記︰

  • 為避免源自現有網域的攻擊,防禦環境的管理必須與現有網域的系統管理帳戶隔開。
  • 防禦環境需要現有網域的網域控制站 TCP/IP 連線。 如需連接埠清單,請參閱如何設定網域和信任的防火牆
  • 虛擬化的 Active Directory 網域服務部署,需要虛擬平台的特定功能,如虛擬網域控制站的部署與設定中所述。
  • MIM 服務的 SQL Server 高可用性部署需要特定的存放裝置設定,如下文的 SQL Server 資料庫儲存體一節中所述。 目前並非所有的託管服務提供者都能提供適合 SQL Server 容錯移轉叢集的含磁碟設定 Windows Server 裝載。

部署準備和復原程序

準備防禦環境的高可用性或災害復原部署,需要考量如何安裝 Windows Server Active Directory、SQL Server 及其共用存放裝置上的資料庫,以及 MIM 服務和 PAM 元件。

Windows Server

Windows Server 包含內建的高可用性功能,能讓多部電腦像容錯移轉叢集一樣共同運作。 叢集伺服器透過實體纜線和軟體連接。 如果其中一或多個叢集節點失敗,其他節點即會透過稱為「容錯移轉」的程序開始提供服務。 如需詳細資訊,請參閱容錯移轉叢集概觀

請確定防禦環境中的作業系統和應用程式收到安全性問題的更新。 其中有些更新可能需要重新啟動伺服器,所以請協調各伺服器套用更新的時間,以免發生延伸中斷。 其中一種方法是針對 Windows Server 容錯移轉叢集中的伺服器使用 叢集感知更新

防禦環境中的伺服器會加入網域,並相依於網域服務。 請確定沒有無意間將它們設成和某特定網域控制站有相依性,以取得 DNS 等服務。

附禦環境 Active Directory

Windows Server Active Directory 網域服務原本就支援高可用性和災害復原。

準備

一般 Privileged Access Management 生產環境部署的防禦環境中至少包含兩個網域控制站。 部署文章步驟 2 Prepare the PRIV domain controller (準備 PRIV 網域控制站) 中,包含設定防禦環境第一個網域控制站的指示。

新增其他網域控制站的程序,請參閱在現有網域中安裝複本 Windows Server 2012 網域控制站 (等級 200)

注意

如果網域控制站要裝載在 HYPER-V 等虛擬平台上,請參閱虛擬網域控制站的部署與設定中的警告。

復原

發生中斷後,請先確定防禦環境中至少有一個網域控制站可用,再重新啟動其他伺服器。

在網域中,Active Directory 會在各網域控制站中散發彈性單一主機操作 (FSMO) 角色,如 How Operations Masters Work (操作主機如何運作) 中所述。 若網域控制站失敗,可能必須傳送一或多個該網域控制站獲派的網域控制站角色。

決定某個網域控制站不會傳回到生產環境後,請務必檢查是否曾有任何角色指派給該網域控制站,如有需要請重新指派。 如需指示,請參閱 View the Current Operations Master Role Holders (檢視目前的操作主機角色持有者) 及相關文章。

也建議您檢查加入防禦環境的電腦 DNS 設定,以及與該網域控制站有信任關係之 CORP 網域的網域控制站,確定它們都沒有以硬式編碼方式與該網域控制站電腦的 IP 位址建立相依性。

SQL Server 資料庫儲存體

高可用性部署需要 SQL Server 容錯移轉叢集,而 SQL Server 容錯移轉叢集執行個體則依賴資料庫和記錄檔儲存體所有節點之間的共用存放裝置。 共用存放裝置的形式可以是 Windows Server 容錯移轉叢集的叢集磁碟、存放區域網路 (SAN) 的磁碟,或 SMB 伺服器上的檔案共用。 請注意,它們必須專供防禦環境使用,不建議和防禦環境之外的其他工作負載共用存放裝置,因為這樣可能危及防禦環境的完整性。

SQL Server

MIM 服務在防禦環境中需要部署 SQL Server。 為獲得高可用性,SQL 可以使用容錯移轉叢集執行個體 (FCI) 加以部署。 不同於獨立的執行個體,在 FCI 中,SQL Server 的高可用性受到 FCI 重複出現的節點所保護。 如果發生失敗或依規劃升級,資源群組的擁有權就會移至另一個 Windows Server 容錯移轉叢集節點。

如果您只需要支援災害復原,不支援高可用性,則可使用記錄傳送、複寫交易、快照式複寫或資料庫鏡像,而非使用容錯移轉叢集。

準備

當您在防禦環境中安裝 SQL Server 時,它必須和 CORP 樹系中已有的任何 SQL Server 不相干涉。 另建議您將 SQL Server 部署在專用的伺服器上,和網域控制站不在同一伺服器上。 詳細資訊請參閱 AlwaysOn 容錯移轉叢集執行個體 (SQL Server) 的 SQL Server 指南。

復原

如果 SQL Server 已設定為使用記錄傳送處理災害復原,則必須在復原期間採取動作,以更新 SQL Server。 而且需要重新啟動每項 MIM 服務執行個體。

如果 SQL Server 失敗,或 SQL Server 和 MIM 服務之間中斷連線,在還原 SQL Server 之後,建議重新啟動每項 MIM 服務。 這可確保 MIM 服務重新建立與 SQL Server 的連線。

MIM 服務

需有 MIM 服務才能處理啟用要求。 為使裝載 MIM 服務的電腦能在繼續收到啟用要求時進行停機維護,您可以部署多部 MIM 服務電腦。 請注意,一旦使用者加入群組,MIM 服務即不涉及 Kerberos 作業。

準備

建議您在加入 PRIV 網域的多部伺服器上部署 MIM 服務。 如需高可用性,請參閱 Windows Server 文件以了解容錯移轉叢集硬體需求及存放選項Creating a Windows Server 2012 Failover Cluster (建立 Windows Server 2012 容錯移轉叢集)。

針對多伺服器的生產環境部署,您可以使用網路負載平衡 (NLB) 來分散處理負載。 您也應該要有單一別名 (例如,A 或 CNAME 記錄),可以公開給使用者的一般名稱。

重要

如果您使用 Windows Server 2012 R2 或更新版本中 NLB 功能以外的負載平衡技術,請確定您的解決方案會將一個會話重新導向至相同的伺服器,而不是隨機伺服器。

在多伺服器的 MIM 部署中,每項 MIM 服務都會有外部主機名稱、服務名稱和服務磁碟分割區名稱。 服務名稱的預設值是電腦名稱,外部主機名稱和服務磁碟分割區名稱的預設值則是在 MIM 服務安裝期間,在要求 MIM 服務伺服器位址的畫面中設定。 這三個名稱會儲存在 %ProgramFiles%\Microsoft Forefront Identity Manager\Service\Microsoft.ResourceManagementService.exe.config 檔案,作為 resourceManagementService 設定節點的 externalHostNameserviceNameservicePartitionName 屬性。

當 MIM 服務收到要求時,服務磁碟分割區名稱會當成屬性儲存在該要求上。 接下來,只有具有相同服務磁碟分割區名稱的其他 MIM 服務安裝才能與該要求進行互動。 最後,如果 PAM 案例包含手動核准或其他長期的要求處理,請確定每項 MIM 服務在該設定檔中都有相同的 servicePartitionName 屬性。

復原

發生中斷後,請先確定防禦環境中至少有一個 Active Directory 網域控制站和 SQL Server 可供使用,再重新啟動 MIM 服務。

工作流程執行個體只能由和啟動它的 MIM 服務伺服器具有相同服務磁碟分割區名稱和服務名稱的 MIM 服務伺服器完成。 如果裝載正在處理要求之 MIM 服務的特定電腦失敗,且該電腦不會傳回至服務,則有必要在新電腦上安裝 MIM 服務。 在安裝好的新 MIM 服務上,編輯 resourcemanagementservice.exe.config 檔案,並將新 MIM 部署的 serviceNameservicePartitionName 屬性設定成和失敗電腦相同的主機名稱和服務磁碟分割區名稱。

MIM PAM 元件

MIM 服務和入口網站安裝程式也會納入其他 PAM 元件,包括 PowerShell 模組和兩項服務。

準備

Privileged Access Management 元件應該安裝在已安裝 MIM 服務的防禦環境中的每部電腦上。 它們無法日後再加入。

復原

從中斷復原後,請確定 MIM 服務至少在一部伺服器上執行。 亦請使用 net start "PAM Monitoring service" 確定 MIM PAM 監視服務也在該伺服器上執行。

如果防禦環境樹系功能等級不在 Windows Server 2012 R2,請使用 命令 net start "PAM Component service" ,確定 MIM PAM 元件服務也會在該伺服器上執行。