準備和部署 Active Directory 同盟服務 - 內部部署密鑰信任
本文說明適用於下列專案的 Windows Hello 企業版功能或案例:
Windows Hello 企業版專門搭配 Windows Server 隨附的 Active Directory 同盟服務 (AD FS) 角色運作。 內部部署密鑰信任部署模型會使用 AD FS 進行 金鑰註冊 和 裝置註冊。
下列指引說明如何使用 Windows 資訊資料庫 (WID) 作為設定資料庫來部署新的 AD FS 實例。
WID 非常適合擁有不超過 30 部同盟伺服器 且信 賴憑證者信任不超過 100 個的環境。 如果您的環境超過上述任一因素,或需要提供 SAML成品解析、 令牌重新執行偵測,或需要AD FS作為同盟提供者角色運作,則部署需要使用SQL作為設定資料庫。
若要使用 SQL 作為其設定資料庫來部署 AD FS,請檢閱 部署同盟伺服器數位 檢查清單。
新的AD FS 伺服器陣列至少應有兩部同盟伺服器,以進行適當的負載平衡,這可透過外部網路周邊來完成,或使用Windows Server 中包含的網路負載平衡角色來完成。
安裝和 更新 兩部 Windows Server,以準備 AD FS 部署。
註冊 TLS 伺服器驗證憑證
一般而言,同盟服務是面向邊緣的角色。 不過,搭配 Windows Hello 企業版內部部署使用的同盟服務和執行個體不需要網際網路連線。
AD FS 角色需要同盟服務的 伺服器驗證 憑證,而且您可以使用企業所簽發的憑證 (內部) CA。 如果您為同盟伺服器陣列中的每個節點要求個別憑證,伺服器驗證憑證應該會包含下列名稱:
- 主體名稱:同盟伺服器的內部 FQDN
- 主體替代名稱:同盟服務名稱 (例如 sts.corp.contoso.com) 或適當的通配符專案 (例如 *.corp.contoso.com)
設定AD FS角色時,會設定同盟服務名稱。 您可以選擇任何名稱,但該名稱必須與伺服器或主機的名稱不同。 例如,您可以將主機伺服器命名 為adfs 和同盟服務 sts。 在此範例中,主機的 FQDN 是 adfs.corp.contoso.com ,而同盟服務的 FQDN 是 sts.corp.contoso.com。
您也可以為伺服器陣列中的所有主機發行一個憑證。 如果您選擇此選項,請將主體名稱 保留空白,並在建立憑證要求時,在主體替代名稱中包含所有名稱。 所有名稱都應該包含陣列中每部主機的 FQDN 及同盟服務名稱。
建立通配符憑證時,將私鑰標示為可匯出,以便在 AD FS 伺服器數位內的每個同盟伺服器和 Web 應用程式 Proxy 上部署相同的憑證。 請注意,憑證必須受信任 (鏈結至受信任的根 CA)。 一旦您成功要求並在一個節點上註冊伺服器驗證憑證,就可以使用「憑證管理員」主控台匯出憑證和私密金鑰至 PFX 檔案。 接著可以再將憑證匯入 AD FS 陣列中的其餘節點上。
請務必將憑證註冊或匯入AD FS 伺服器的電腦證書存儲。 此外,確認陣列中的所有節點都有適當的 TLS 伺服器驗證憑證。
AD FS 驗證憑證註冊
使用網 域系統管理員 對等認證登入同盟伺服器。
- 啟動本機計算機 憑證管理員 (certlm.msc)
- 展開瀏覽窗格中的 [ 個人 ] 節點
- 以滑鼠右鍵按一下 [個人]。 選 取 [所有工作 > 要求新憑證]
- 在 [開始之前] 頁面上選取 [下一步]
- 在 [選取憑證註冊原則] 頁面上選取 [下一步]
- 在 [ 要求憑證] 頁面上,選取 [ 內部 Web 伺服器] 複選框
- 選取 ⚠️ 需要更多資訊才能註冊此憑證。按這裏設定設定 連結 [
- 在 [主體名稱] 底下,從 [類型] 清單選取 [一般名稱]。 輸入裝載 AD FS 角色之電腦的 FQDN,然後選取 [ 新增]
- 在 [替代名稱] 底下,從 [類型] 清單選取 [DNS]。 輸入您將用於同盟服務的名稱 FQDN, (sts.corp.contoso.com) 。 您在此處使用的名稱必須符合您在設定 AD FS 伺服器角色時所使用的名稱。 完成時選取 [新增] 和 [確定]
- 選 取 [註冊]
伺服器驗證憑證應該會出現在計算機的個人證書存儲中。
部署AD FS角色
重要
在陣列中的第一部伺服器上完成整個 AD FS 設定,再新增第二部伺服器至 AD FS 陣列。 完成之後,第二部伺服器會在新增 AD FS 陣列時,透過共用的設定資料庫接收設定。
使用 企業系統管理員 對等認證登入同盟伺服器。
- 啟動 [伺服器管理員]。 在瀏覽窗格中選取 [ 本地伺服器 ]
- 選 取 [管理 > 新增角色和功能]
- 在 [開始之前] 頁面上選取 [下一步]
- 在 [ 選取安裝類型] 頁面上,選取 [角色型或功能型安裝 > 下一步]
- 在 [選取目的地伺服器] 頁面上,選擇 [從伺服器集區選取伺服器]。 從 [ 伺服器集 區] 列表中選取同盟伺服器,然後選取 [下一步]
- 在 [選取伺服器角色] 頁面上,選取 [Active Directory 同盟服務],然後選取 [下一步]
- 在 [選取功能] 頁面上選取 [下一步]
- 在 [Active Directory 同盟服務] 頁面上選取 [下一步]
- 選 取 [安裝 ] 以啟動角色安裝
檢閱以驗證AD FS部署
在繼續部署前,先檢閱下列項目驗證部署進度:
- 確認AD FS 伺服器陣列使用正確的資料庫設定
- 確認AD FS 伺服器陣列具有足夠的節點數目,並已針對預期的負載適當地進行負載平衡
- 確認伺服器陣列中 的所有 AD FS 伺服器都已安裝最新的更新
- 確認所有 AD FS 伺服器都有有效的伺服器驗證憑證
裝置註冊服務帳戶必要條件
使用群組受控服務帳戶 (GMSA) 是針對支援這些帳戶的服務部署服務帳戶的慣用方式。 GMSA 比一般用戶帳戶具有安全性優勢,因為 Windows 會處理密碼管理。 這表示,密碼長度長、複雜且定期變更。 AD FS 支援 GMSA,而且應該使用它們來進行設定,以取得額外的安全性。
GSMA 會使用位於域控制器上的 Microsoft金鑰散發服務 。 您必須先為服務建立根金鑰,才能建立 GSMA。 如果環境已使用 GSMA,您可以跳過此步驟。
建立 KDS 根金鑰
使用 企業系統管理員 對等認證登入域控制器。
啟動提升許可權的 PowerShell 控制台,並執行下列命令:
Add-KdsRootKey -EffectiveTime (Get-Date).AddHours(-10)
設定 Active Directory 同盟服務角色
使用下列程式來設定AD FS。
使用網 域系統管理員 對等認證登入同盟伺服器。 這些程序假設您在同盟伺服器陣列中設定第一部同盟伺服器。
- 啟動 伺服器管理員
- 選取右上角的通知旗標,然後選取 [ 設定此伺服器上的同盟服務]
- 在 [ 歡迎使用 ] 頁面上,選取 [ 建立第一個同盟伺服器陣 > 列下一步]
- 在 [ 連線到 Active Directory 網域服務 ] 頁面上,選取 [ 下一步]
- 在 [指定服務內容] 頁面上,從 [SSL 憑證] 清單選取最近註冊或匯入的憑證。 憑證可能會以您的同盟服務命名,例如 sts.corp.contoso.com
- 從 [同盟服務名稱] 列表中選取同盟服務名稱
- 在文字框中輸入同盟 服務顯示名稱 。 這是使用者登入時看見的名稱。 選取 [下一步]
- 在 [指定服務帳戶] 頁面上,選取 [建立群組受管理服務帳戶]。 在 [ 帳戶名稱] 方塊中,輸入 adfssvc
- 在 [ 指定設定資料庫 ] 頁面上,選取 [使用 Windows 內部資料庫在此伺服器上建立資料庫 ],然後選取 [ 下一步]
- 在 [ 檢閱選項] 頁面上,選取 [ 下一步]
- 在 [ 必要條件檢查 ] 頁面上,選取 [ 設定]
- 當程式完成時,選取 [ 關閉]
將 AD FS 服務帳戶新增至 Key Admins 群組
在 Windows Hello 企業版註冊期間,公鑰會在 Active Directory 中使用者對象的屬性中註冊。 若要確保 AD FS 服務可以新增和移除金鑰是其一般工作流程的一部分,它必須是 Key Admins 全域群組的成員。
使用網域系統 管理員 對等認證登入域控制器或管理工作站。
- 開啟 \[Active Directory 使用者和電腦\]。
- 在瀏覽窗格中選取 [使用者 ] 容器
- 以滑鼠右鍵按下詳細資料窗格中的 [ 金鑰管理員 ],然後選取 [ 屬性]
- 選取 [成員 > 新增...]
- 在 [輸入物件名稱來選取] 文字方塊中,輸入 adfssvc。 選取 [確定]
- 選取 [確定 ] 以返回 [Active Directory 使用者和計算機]
- 變更為裝載AD FS角色的伺服器並重新啟動
設定裝置註冊服務
使用 企業系統管理員 對等認證登入同盟伺服器。 這些指示假設您在同盟伺服器陣列中設定第一部同盟伺服器。
- 開啟 AD FS管理 主控台
- 在瀏覽窗格中,展開 [服務]。 選 取裝置註冊
- 在詳細數據窗格中,選取 [ 設定裝置註冊]
- 在 [ 設定裝置註冊 ] 對話框中,選取 [確定]
從 AD FS 觸發裝置註冊,在 Active Directory 組態分割區中建立服務連接點 (SCP) 。 SCP 可用來儲存 Windows 用戶端會自動探索的裝置註冊資訊。
檢閱以驗證 AD FS 和 Active Directory 設定
在繼續部署前,先檢閱下列項目驗證部署進度:
- 記錄 AD FS 憑證的相關信息,並在到期前至少六周設定更新提醒。 相關資訊包括:憑證序號、指紋、一般名稱、主體替代名稱、實體主機伺服器的名稱、發行日期、到期日,以及在非Microsoft憑證 (發行 CA 廠商)
- 確認您已將AD FS服務帳戶新增至KeyAdmins群組
- 確認您已啟用裝置註冊服務
其他同盟伺服器
組織應在其同盟陣列中部署一部以上的同盟伺服器,以提供高可用性。 您的 AD FS 陣列中至少應該有兩項同盟服務,不過大多數組織可能擁有更多。 這主要取決於使用 AD FS 陣列所提供服務的裝置和使用者數目。
伺服器驗證憑證
您新增至 AD FS 陣列的每一部伺服器都必須有適當的伺服器驗證憑證。 請參考本文件的註冊 TLS 伺服器驗證憑證一節,判斷伺服器驗證憑證的需求。 如前面所述,單純用於 Windows Hello 企業版內部部署的 AD FS 伺服器可以使用企業伺服器驗證憑證,而非公開憑證授權單位所發行的伺服器驗證憑證。
安裝其他伺服器
將同盟伺服器新增至現有的AD FS 伺服器陣列,從確保伺服器已完全修補開始,以包含支援 Windows Hello 企業版部署所需的 Windows Server 2016 Update (https://aka.ms/whfbadfs1703) 。 接著在其他伺服器上安裝 Active Directory 同盟服務角色,然後設定伺服器做為現有陣列中的其他伺服器。
負載平衡 AD FS
許多環境使用硬體裝置達到負載平衡。 沒有硬體負載平衡功能的環境可以利用 Windows Server 隨附的網路負載平衡功能,讓同盟陣列中的 AD FS 伺服器達到負載平衡。 在所有參與需要負載平衡之 AD FS 陣列的所有節點上安裝 Windows 網路負載平衡功能。
在 AD FS 伺服器上安裝網路負載平衡功能
使用 企業系統管理員 對等認證登入同盟伺服器。
- 啟動 [伺服器管理員]。 在瀏覽窗格中選取 [ 本地伺服器 ]
- 選 取 [管理 ],然後選取 [新增角色和功能]
- 在 [開始之前] 頁面上選取 [下一步]
- 在 [ 選取安裝類型] 頁面上,選取 [角色型或功能型安裝] ,然後選取 [ 下一步]
- 在 [選取目的地伺服器] 頁面上,選擇 [從伺服器集區選取伺服器]。 從 [伺服器集區] 清單中選取同盟伺服器。 選取 [下一步]
- 在 [ 選取伺服器角色 ] 頁面上,選取 [ 下一步]
- 在 [選取功能] 頁面上選取網络負載平衡
- 選 取 [安裝 ] 以開始安裝功能
針對 AD FS 設定網路負載平衡
您必須先建立新的負載平衡叢集,才能讓 AD FS 陣列中的所有節點達到負載平衡。 建立叢集之後,您就可以新增節點至該叢集。
使用系統 管理員 對等認證登入同盟伺服器陣列的節點。
- 從系統管理工具開啟網路負載平衡管理員
- 以滑鼠右鍵按兩下 [網络負載平衡叢集],然後選取 [ 新增叢集]
- 若要連線到要成為新叢集一部分的主機,請在 [ 主 機] 文本框中輸入主機的名稱,然後選取 [ 連線]
- 選取您要與叢集搭配使用的介面,然後選取 [ 下一步 (介面裝載虛擬IP位址並接收用戶端流量以平衡負載)
- 在 [主機參數] 中選取 [優先順序 (唯一主機識別碼)] 中的值。 此參數會指定每部主機的單一識別碼。 目前叢集成員中數字優先順序最低的主機會處理所有連接埠規則未涵蓋的叢集網路流量。 選取 [下一步]
- 在 [ 叢集 IP 位址] 中,選取 [新增 ],然後輸入叢集中每個主機共用的叢集 IP 位址。 NLB 會將此 IP 位址新增至所有選定要成為叢集一部分的主機的所選取介面上的 TCP/IP 堆疊。 選取 [下一步]
- 在 [叢集參數] 中的 [IP 位址] 和 [子網路遮罩] 中選取值 (若是 IPv6 位址,則不需要子網路遮罩值)。 輸入使用者將用來存取此 NLB 叢集的完整因特網名稱
- 在 [叢集作業模式] 中,選取 [Unicast ] 來指定應該將單播媒體訪問控制 (MAC) 位址用於叢集作業。 在單點傳播模式下,叢集的 MAC 位址會指派至電腦的網路介面卡,而不使用網路介面卡的內建 MAC 位址。 我們建議您接受單點傳播預設設定。 選取 [下一步]
- 在 [埠規則] 中,選取 [編輯] 以修改預設埠規則以使用埠 443
其他 AD FS 伺服器
- 若要將更多主機新增至叢集,請以滑鼠右鍵按下新叢集,然後選取 [ 將主機新增至叢集]
- 依照您用來設定初始主機的指示,設定其他主機的主機參數 (包括主機優先順序、專用 IP 位址和負載權數)。 因為您要將主機新增至已設定的叢集,所以所有叢集範圍的參數都會維持不變
設定裝置註冊的 DNS
使用網域系統管理員對等認證登入域控制器或系統管理工作站。
您需要 同盟服務 名稱才能完成這項工作。 您可以從 AD FS 管理控制台的 [動作] 窗格中選取 [編輯同盟服務屬性],或在 AD FS 伺服器上使用 (Get-AdfsProperties).Hostname.
(PowerShell) 來檢視同盟服務名稱。
- 開啟 DNS 管理 主控台
- 在瀏覽窗格中,展開域控制器名稱節點和 正向對應區域
- 在瀏覽窗格中,選取具有內部 Active Directory 功能變數名稱名稱的節點
- 在瀏覽窗格中,以滑鼠右鍵按下功能變數名稱節點,然後選 取 [新增主機 (A 或 AAAA)
- 在 [名稱] 方塊中,輸入同盟服務的名稱。 在 [IP 位址] 方塊中,輸入您的同盟伺服器的 IP 位址。 選取 [新增主機]
- 以滑鼠右鍵按鍵按鍵按鍵,
<domain_name>
然後選 取 [新增別名 (CNAME) - 在 [新增資源記錄] 對話方塊的 [別名名稱] 方塊中輸入
enterpriseregistration
- 在目標主機方 塊 (FQDN) 的完整域名 中,輸入
federation_service_farm_name.<domain_name_fqdn
,然後選取 [確定] - 關閉 DNS 管理主控台
注意
如果您的樹系有多個 UPN 後綴,請確定 enterpriseregistration.<upnsuffix_fqdn>
每個後綴都有 。
設定內部網路區域以包含同盟服務
Windows Hello 佈建會呈現來自同盟服務的網頁。 設定內部網路區域以包含同盟服務,可讓使用者使用整合式驗證對同盟服務進行驗證。 若沒有此設定,Windows Hello 佈建期間連線至同盟服務時,會提示使用者進行驗證。
建立內部網路區域群組原則
使用 Domain Admin 對等認證登入域控制器或系統管理工作站:
- 啟動 組策略管理主控台 (
gpmc.msc
) - 展開網域,然後在瀏覽窗格中選取 [ 組策略物件 ] 節點
- 在 [群組原則物件] 上按一下滑鼠右鍵,並選取 [新增]。
- 在名稱方塊中輸入 內部網路區域設定 ,然後選取 [ 確定]
- 在內容窗格中,以滑鼠右鍵按兩下 [ 內部網路區域設定 ] 組策略對象,然後選取 [ 編輯]
- 在瀏覽窗格中,展開 [計算機設定] 底下的原則
- 展開 [ 系統管理範 > 本] [Windows 元件 > 因特網總管 > ] [因特網控制面板 >] 安全性頁面。 開 啟網站到區域指派清單
- 選 取 [啟用 > 顯示]。 在 [值名稱] 欄中,輸入開頭為 https 的同盟服務 URL。 在 [值] 欄中,輸入數字 1。 選取 [確定] 兩次,然後關閉 [組策略管理編輯器]
部署內部網路區域群組原則物件
- 啟動群組原則管理主控台 (gpmc.msc)
- 在瀏覽窗格中,展開網域,然後以滑鼠右鍵按兩下具有 Active Directory 功能變數名稱的節點,然後選取 [鏈接現有的 GPO...]
- 在 [ 選取 GPO] 對話框中,選取 [ 內部網络區域設定 ] 或您先前建立的 Windows Hello 企業版組策略物件名稱,然後選取 [ 確定]
驗證和部署多重要素驗證 (MFA)
Windows Hello 企業版要求用戶在註冊服務之前,先執行多重要素驗證 (MFA) 。 內部部署可以作為 MFA 選項使用:
- 證書
注意
使用此選項時,必須將憑證部署給使用者。 例如,使用者可以使用其智慧卡或虛擬智慧卡作為憑證驗證選項。
- AD FS 的非Microsoft驗證提供者
- AD FS 的自定義驗證提供者
重要
自 2019 年 7 月 1 日起,Microsoft將不再為新的部署提供 MFA Server。 想要向使用者要求多重要素驗證的新客戶,應該使用雲端式Microsoft多重要素驗證。 在 7 月 1 日之前啟用 MFA Server 的現有客戶將能夠下載最新版本、未來的更新,並如往常般產生啟用認證。
如需可用非Microsoft驗證方法的資訊, 請參閱設定AD FS的其他驗證方法。 如需建立自定義驗證方法,請參閱 在 Windows Server 中建置 AD FS 的自定義驗證方法
請遵循您所選驗證提供者的整合和部署指南,將它整合並部署至 AD FS。 請確定已在AD FS驗證原則中選取驗證提供者作為多重要素驗證選項。 如需設定 AD FS 驗證原則的資訊,請參閱設定 驗證原則。
檢閱以驗證設定
在繼續部署前,先檢閱下列項目驗證部署進度:
- 確認所有 AD FS 伺服器都有有效的伺服器驗證憑證。 憑證的主體是主機的一般名稱 (FQDN) 或萬用字元名稱。 憑證的替代名稱包含萬用字元或同盟服務的 FQDN。
- 確認AD FS 伺服器陣列具有足夠的節點數目,並已針對預期的負載適當地進行負載平衡
- 確認您已重新啟動AD FS服務
- 確認您已建立同盟服務的 DNS A 記錄,而且所使用的 IP 位址是負載平衡的 IP 位址
- 確認您已建立並部署內部網路區域設定,以防止對同盟伺服器進行雙重驗證
- 確認您已部署AD FS的 MFA 解決方案