設定 Azure Multi-Factor Authentication Server 以搭配 Windows Server 中的 AD FS 運作
如果您使用 Active Directory 同盟服務 (AD FS),而且想要保護雲端或內部部署資源,您可以設定 Azure Multi-factor Authentication Server 以搭配 AD FS 運作。 此組態會觸發高價值端點的雙步驟驗證。
在本文中,我們將探討如何搭配使用 Azure Multi-Factor Authentication Server 和從 Windows Server 2016 開始的 AD FS。 如需詳細資訊,請參閱 搭配 AD FS 2.0 使用 Azure Multi-Factor Authentication Server 來保護雲端和內部部署資源。
重要
2022 年 9 月,Microsoft 宣佈淘汰 Azure MFA 伺服器。 自 2024 年 9 月 30 日起,Azure Multi-Factor Authentication Server 的部署將不再為多重要素驗證 (MFA) 要求提供服務,這可能會導致您的組織驗證失敗。 若要確保驗證服務不中斷,並保持支援狀態,組織應該使用最新 Azure MFA 伺服器更新中包含的最新移轉公用程式,移轉使用者的驗證資料至雲端式 Azure MFA 服務。 如需詳細資訊,請參閱 Azure MFA 伺服器移轉。
若要開始使用雲端架構的 MFA,請參閱教學課程:使用 Azure 多重要素驗證保護使用者登入事件。
如果使用的是雲端架構的 MFA,請參閱使用 Microsoft Entra 多重要素驗證和 AD FS 保護雲端資源。
在 2019 年 7 月 1 日前已啟用 MFA 伺服器的現有客戶,將能夠下載最新版本及未來的更新,並如常產生啟用認證。
使用 Azure Multi-Factor Authentication Server 保護 Windows Server AD FS
安裝 Azure Multi-Factor Authentication Server 時,您有下列選項:
- 在與 AD FS 相同的伺服器本機上安裝 Azure Multi-Factor Authentication Server
- 在 AD FS 伺服器本機上安裝 Azure 多重要素驗證配接器,然後在另一部電腦上安裝 Multi-Factor Authentication Server
開始之前,請留意下列項目:
- 您不必在 AD FS 伺服器上安裝 Azure Multi-Factor Authentication Server。 不過,您必須在執行 AD FS 的 Windows Server 2012 R2 或 Windows Server 2016 上安裝適用於 AD FS 的多重要素驗證配接器。 如果您在 AD FS 同盟伺服器上個別安裝 AD FS 配接器,則可以在不同的電腦上安裝伺服器。 請參閱下列程序,以了解如何個別安裝配接器。
- 如果您的組織使用簡訊或行動應用程式驗證方法,則在 [公司設定] 中定義的字串,會包含預留位置 <$應用程式名稱$>。 在 MFA Server v7.1 中,您可以提供要取代此預留位置的應用程式名稱。 在 v7.0 或更舊版本中,使用 AD FS 配接器時並不會自動取代此預留位置。 對於這些較舊的版本,請在保護 AD FS 時,從適當的字串中移除此預留位置。
- 用來登入的帳戶必須具有在 Active Directory 服務中建立安全性群組的使用者權限。
- 多重要素驗證 AD FS 配接器安裝精靈會在 Active Directory 執行個體中建立名為 PhoneFactor Admins 的安全性群組。 然後將 Federation Service 的 AD FS 服務帳戶新增至這個群組。 確認確實已在網域控制站上建立 PhoneFactor Admins 群組,而且 AD FS 服務帳戶是此群組的成員。 如有必要,請以手動方式將 AD FS 服務帳戶加入至網域控制站上的 PhoneFactor Admins 群組。
- 如需透過使用者入口網站安裝 Web 服務 SDK 的資訊,請參閱部署 Azure Multi-Factor Authentication Server 的使用者入口網站。
在 AD FS 伺服器本機上安裝 Azure Multi-Factor Authentication Server
在 AD FS 伺服器上下載並安裝 Azure Multi-Factor Authentication Server。 如需安裝資訊,請參閱 開始使用 Azure Multi-Factor Authentication Server。
在 Azure Multi-Factor Authentication Server 管理主控台中,按一下 [AD FS] 圖示。 選取 [允許使用者註冊] 和 [允許使用者選取方法] 選項。
選取您想要為您的組織指定的任何其他選項。
按一下 [安裝 AD FS 配接器] 。
如果顯示 [Active Directory] 視窗,這代表兩件事情。 您的電腦已加入網域,而且用於保護 AD FS 配接器與多重要素驗證服務間通訊的 Active Directory 組態尚未完成。 按 [下一步] 自動完成此設定,或選取 [略過自動 Active Directory 設定並手動進行設定] 核取方塊。 按一下 [下一步] 。
如果出現 [本機群組] 視窗,代表兩件事。 您的電腦未加入網域,而且用於保護 AD FS 配接器與多重要素驗證服務間通訊的本機群組組態尚未完成。 按 [下一步] 自動完成此設定,或選取 [略過自動本機群組設定並手動進行設定] 核取方塊。 按一下 [下一步] 。
在安裝精靈中按 [下一步] 。 Azure Multi-Factor Authentication Server 會建立 PhoneFactor Admins 群組並將 AD FS 服務帳戶加入至 PhoneFactor Admins 群組。
在 [啟動安裝程式] 頁面上,按 [下一步]。
在多重要素驗證 AD FS 配接器安裝程式中,按 [下一步]。
在安裝完成時按一下 [關閉] 。
現已安裝配接器,您必須向 AD FS 進行登錄。 開啟 Windows PowerShell,然後執行下列命令:
C:\Program Files\Multi-Factor Authentication Server\Register-MultiFactorAuthenticationAdfsAdapter.ps1
若要使用最近登錄的配接器,請編輯 AD FS 中的通用驗證原則。 在 AD FS 管理主控台中,移至 [驗證原則] 節點。 在 [多重要素驗證] 區段中,按一下 [全域設定] 區段旁邊的 [編輯] 連結。 在 [編輯通用驗證原則] 視窗中,選取 [多重要素驗證] 作為其他驗證方法,然後按一下 [確定]。 此配接器會登錄為 WindowsAzureMultiFactorAuthentication。 重新啟動 AD FS 服務,以讓登錄生效。
此時,Multi-Factor Authentication Server 已設定為要搭配 AD FS 使用的其他驗證提供者。
使用 Web 服務 SDK 安裝 AD FS 配接器的獨立執行個體
- 在執行 Multi-Factor Authentication Server 的伺服器上安裝 Web 服務 SDK。
- 從 \Program Files\Multi-Authentication Server 目錄將下列檔案複製到您計劃安裝 AD FS 配接器的伺服器︰
- MultiFactorAuthenticationAdfsAdapterSetup64.msi
- Register-MultiFactorAuthenticationAdfsAdapter.ps1
- Unregister-MultiFactorAuthenticationAdfsAdapter.ps1
- MultiFactorAuthenticationAdfsAdapter.config
- 執行 MultiFactorAuthenticationAdfsAdapterSetup64.msi 安裝檔案。
- 在多重要素驗證 AD FS 配接器安裝程式中,按 [下一步] 來啟動安裝。
- 在安裝完成時按一下 [關閉] 。
編輯 MultiFactorAuthenticationAdfsAdapter.config 檔案
請遵循下列步驟來編輯 MultiFactorAuthenticationAdfsAdapter.config 檔案:
- 將 UseWebServiceSdk 節點設定為 true。
- 將 WebServiceSdkUrl 的值設定為多重要素驗證 Web 服務 SDK 的 URL。 例如︰https://contoso.com/<certificatename>/MultiFactorAuthWebServiceSdk/PfWsSdk.asmx,其中的 <certificatename> 是您憑證的名稱。
- 編輯 Register-MultiFactorAuthenticationAdfsAdapter.ps1 指令碼,方法是將
-ConfigurationFilePath <path>
新增至Register-AdfsAuthenticationProvider
命令的結尾,其中 <path> 是 MultiFactorAuthenticationAdfsAdapter.config 檔案的完整路徑。
以使用者名稱和密碼設定 Web 服務 SDK
有兩個選項可供設定 Web 服務 SDK。 第一個是利用使用者名稱和密碼,第二個是利用用戶端憑證。 若要使用第一個選項,請遵循下列步驟,或加以略過直接跳到第二個選項。
- 將 WebServiceSdkUsername 的值設定為屬於 PhoneFactor Admins 安全性群組的帳戶。 使用 <網域>\<使用者名稱> 的格式。
- 將 WebServiceSdkPassword 的值設定為適當的帳戶密碼。 WebServiceSdkPassword 中無法使用特殊字元 "&"。
以用戶端憑證設定 Web 服務 SDK
如果您不想要使用使用者名稱和密碼,請遵循下列步驟來以用戶端憑證設定 Web 服務 SDK。
- 從執行 Web 服務 SDK 之伺服器的憑證授權單位取得用戶端憑證。 了解如何 取得用戶端憑證。
- 將用戶端憑證匯入執行 Web 服務 SDK 的伺服器上的本機電腦個人憑證存放區。 請確定憑證授權單位的公開憑證是在受信任的根憑證存放區中。
- 將用戶端憑證的公開和私密金鑰匯出至 .pfx 檔案。
- 將 Base64 格式的公開金鑰匯出至 .cer 檔案。
- 在 [伺服器管理員] 中,確認已安裝網頁伺服器 (IIS)\網頁伺服器\安全性\IIS 用戶端憑證對應驗證功能。 如果未安裝,請選擇 [新增角色及功能] 來新增此功能。
- 在 [IIS 管理員] 中,按兩下包含 Web 服務 SDK 虛擬目錄之網站中的 [設定編輯器] 。 請務必選取網站,而非虛擬目錄。
- 移至 system.webServer/security/authentication/iisClientCertificateMappingAuthentication 區段。
- 將 enabled 設定為 true。
- 將 oneToOneCertificateMappingsEnabled 設定為 true。
- 按一下 oneToOneMappings 旁邊的 [...] 按鈕,然後按一下 [新增] 連結。
- 開啟稍早匯出的 Base64 .cer 檔案。 移除 -----BEGIN CERTIFICATE-----、-----END CERTIFICATE-----,以及任何分行符號。 複製產生的字串。
- 將 certificate 設定為在上一個步驟中複製的字串。
- 將 enabled 設定為 true。
- 將 userName 設定為屬於 PhoneFactor Admins 安全性群組成員的帳戶。 使用 <網域>\<使用者名稱> 的格式。
- 將密碼設定為適當的帳戶密碼,然後關閉 [設定編輯器]。
- 按一下 [套用] 連結。
- 在 Web 服務 SDK 虛擬目錄中,按兩下 [驗證] 。
- 確認 [ASP.NET 模擬] 和 [基本驗證] 已設為 [已啟用],而所有其他項目則已設為 [已停用]。
- 在 Web 服務 SDK 虛擬目錄中,按兩下 [SSL 設定] 。
- 將 [用戶端憑證] 設定為 [接受],然後按一下 [套用]。
- 將稍早匯出的 .pfx 檔案複製到執行 AD FS 配接器的伺服器。
- 將 .pfx 檔案匯入至本機電腦個人憑證存放區。
- 按一下滑鼠右鍵並選取 [管理私密金鑰] ,然後將讀取權授與用來登入 AD FS 服務的帳戶。
- 開啟用戶端憑證,並從 [詳細資料] 索引標籤複製憑證指紋。
- 在 MultiFactorAuthenticationAdfsAdapter.config 檔案中,將 WebServiceSdkCertificateThumbprint 設定為在上一個步驟中複製的字串。
最後,若要登錄配接器,請在 PowerShell 中執行 \Program Files\Multi-Factor Authentication Server\Register-MultiFactorAuthenticationAdfsAdapter.ps1 指令碼。 此配接器會登錄為 WindowsAzureMultiFactorAuthentication。 重新啟動 AD FS 服務,以讓登錄生效。
使用 AD FS 保護 Microsoft Entra 資源
若要保護雲端資源,請設定宣告規則,以便在使用者成功執行雙步驟驗證時,Active Directory Federation Services 會發出 multipleauthn 宣告。 此宣告會傳遞至 Microsoft Entra ID。 遵循此程序來逐步執行各個步驟︰
開啟 AD FS 管理。
在左側選取 [信賴憑證者信任]。
以滑鼠右鍵按一下 [Microsoft Office 365 身分識別平台],然後選取 [編輯宣告規則...]
在 [發佈轉換規則] 上,按一下 [新增規則]
在 [新增轉換宣告規則精靈] 上,從下拉式清單選取 [通過或篩選傳入宣告],然後按 [下一步]。
為您的規則命名。
選取 [驗證方法參考] 做為傳入宣告類型。
選擇傳遞所有宣告值。
按一下完成。 關閉 AD FS 管理主控台。
針對記錄進行疑難排解
若要協助針對 MFA Server AD FS 配接器問題進行疑難排解,請使用下列步驟來啟用額外的記錄功能。
- 在 MFA Server 介面中,開啟 [AD FS] 區段並勾選 [啟用記錄] 核取方塊。
- 在每部 AD FS 伺服器上,使用 regedit.exe 來建立字串值登錄機碼
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Positive Networks\PhoneFactor\InstallPath
,其值為C:\Program Files\Multi-Factor Authentication Server\
(或您選擇的其他目錄)。 請注意,尾端反斜線很重要。 - 建立
C:\Program Files\Multi-Factor Authentication Server\Logs
目錄 (或步驟 2 中參考的其他目錄)。 - 將 Logs 目錄的修改存取權授予 AD FS 服務帳戶。
- 重新啟動 AD FS 服務。
- 確認
MultiFactorAuthAdfsAdapter.log
檔案已建立於 Logs 目錄中。
相關主題
如需疑難排解說明,請參閱 Azure 多重要素驗證常見問題集