疑難排解 Microsoft Entra 傳遞驗證

本文可協助您尋找有關 Microsoft Entra 傳遞驗證常見問題的疑難排解資訊。

重要

如果您遇到傳遞驗證的使用者登入問題,請勿停用此功能或卸載傳遞驗證代理程式,而不需擁有僅限雲端的全域管理員istrator 帳戶或混合式身分識別管理員istrator 帳戶。 瞭解如何 新增僅限雲端的全域管理員istrator 帳戶 。 執行此步驟非常重要,並確保您不會遭到租使用者鎖定。

一般問題

檢查功能和驗證代理程式的狀態

請確定您的租使用者上仍然 已啟用傳遞驗證功能,且驗證代理程式的狀態會顯示 [作用 中],而不是 [ 非使用中 ]。 您可以前往 Microsoft Entra 管理中心上的 [Microsoft Entra Connect] 刀鋒視窗來檢查狀態。

Screnshot shows Microsoft Entra admin center - Microsoft Entra Connect blade.

Screenhot shows Microsoft Entra admin center - Pass-through Authentication blade.

使用者面向的登入錯誤訊息

如果使用者無法使用傳遞驗證登入,他們可能會在 Microsoft Entra 登入畫面上看到下列其中一個使用者面臨的錯誤:

錯誤 描述 解決方案
AADSTS80001 無法連線到 Active Directory 請確定代理程式伺服器是與需要驗證其密碼且能夠連線到 Active Directory 的使用者相同的 AD 樹系成員。
AADSTS80002 連線到 Active Directory 時發生逾時 檢查以確定 Active Directory 可供使用,並回應來自代理程式的要求。
AADSTS80004 傳遞至代理程式的使用者名稱無效 請確定使用者嘗試以正確的使用者名稱登入。
AADSTS80005 驗證遇到無法預測的 WebException 暫時性錯誤。 重試要求。 如果繼續失敗,請連絡 Microsoft 支援服務。
AADSTS80007 與 Active Directory 通訊時發生錯誤 請檢查代理程式記錄以取得詳細資訊,並確認 Active Directory 如預期般運作。

使用者取得不正確使用者名稱/密碼錯誤

當使用者的內部部署 UserPrincipalName (UPN) 與使用者的雲端 UPN 不同時,就會發生這種情況。

若要確認這是問題,請先測試傳遞驗證代理程式是否正常運作:

  1. 建立測試帳戶。

  2. 在代理程式電腦上匯入 PowerShell 模組:

    Import-Module "C:\Program Files\Microsoft Azure AD Connect Authentication Agent\Modules\PassthroughAuthPSModule\PassthroughAuthPSModule.psd1"
    
  3. 執行叫用 PowerShell 命令:

    Invoke-PassthroughAuthOnPremLogonTroubleshooter 
    
  4. 當系統提示您輸入認證時,請輸入用來登入 ( https://login.microsoftonline.com ) 的相同使用者名稱和密碼。

如果您收到相同的使用者名稱/密碼錯誤,這表示傳遞驗證代理程式正常運作,問題可能是內部部署 UPN 無法路由傳送。 若要深入瞭解,請參閱 設定替代登入識別碼

重要

如果 Microsoft Entra 連線伺服器未加入網域,Microsoft Entra 連線:必要條件 提及的需求,就會發生不正確使用者名稱/密碼問題。

Microsoft Entra 系統管理中心 登入失敗原因(需要進階版授權)

如果您的租使用者有與其相關聯的 Microsoft Entra ID P1 或 P2 授權,您也可以查看 Microsoft Entra 系統管理中心 登入活動報告 。

Screenshot shows Microsoft Entra admin center - Sign-ins report,

流覽至 [ Microsoft Entra 系統管理中心 ] 上的 [Microsoft Entra ID - > Sign-ins ], https://portal.azure.com/ 然後按一下特定使用者的登入活動。 尋找 [登入錯誤碼] 欄位。 使用下表,將該欄位的值對應至失敗的原因和解決方式:

登入錯誤碼 登入失敗原因 解決方法
50144 使用者的 Active Directory 密碼已到期。 重設內部部署的 Active Directory中的使用者密碼。
80001 沒有可用的驗證代理程式。 安裝並註冊驗證代理程式。
80002 驗證代理程式的密碼驗證要求已逾時。 檢查是否可以從驗證代理程式連線到您的 Active Directory。
80003 驗證代理程式收到無效的回應。 如果問題在多個使用者之間持續重現,請檢查您的 Active Directory 設定。
80004 登入要求中使用的使用者主體名稱 (UPN) 不正確。 要求使用者以正確的使用者名稱登入。
80005 驗證代理程式:發生錯誤。 暫時性錯誤。 請稍後再試一次。
80007 驗證代理程式無法連線至 Active Directory。 檢查是否可以從驗證代理程式連線到您的 Active Directory。
80010 驗證代理程式無法連線將密碼解密。 如果問題持續重現,請安裝並註冊新的驗證代理程式。 然後卸載目前的。
80011 驗證代理程式無法擷取解密金鑰。 如果問題持續重現,請安裝並註冊新的驗證代理程式。 然後卸載目前的。
80014 驗證要求在超過已耗用時間上限後才回應。 驗證代理程式逾時。使用錯誤碼、相互關聯識別碼和時間戳記開啟支援票證,以取得此錯誤的詳細資料

重要

傳遞驗證代理程式會藉由呼叫 Win32 LogonUser API ,驗證其使用者名稱和密碼給 Active Directory 來驗證 Microsoft Entra 使用者。 因此,如果您已在 Active Directory 中設定 [登入至] 設定來限制工作站登入存取,則必須將裝載傳遞驗證代理程式的伺服器新增至 [登入至] 伺服器清單。 若無法這麼做,將會封鎖您的使用者登入 Microsoft Entra ID。

驗證代理程式安裝問題

發生未預期的錯誤

從伺服器收集代理程式記錄 ,並連絡Microsoft 支援服務您的問題。

驗證代理程式註冊問題

由於連接埠遭到封鎖,所以驗證代理程式註冊失敗。

請確定已安裝驗證代理程式的伺服器可以與此處 所列 的服務 URL 和埠通訊。

因為權杖或帳戶授權錯誤,所以驗證代理程式註冊失敗。

請確定您針對所有 Microsoft Entra 連線 或獨立驗證代理程式安裝和註冊作業,使用僅限雲端的全域管理員istrator 帳戶或混合式身分識別管理員istrator 帳戶。 啟用 MFA 的全域管理員帳戶有一個已知的問題,請暫時關閉 MFA (只是為了完成作業) 作為因應措施。

發生未預期的錯誤

從伺服器收集代理程式記錄 ,並連絡Microsoft 支援服務您的問題。

驗證代理程式解除安裝問題

卸載 Microsoft Entra 連線時的警告訊息

如果您已在租用戶上啟用傳遞驗證,但您嘗試解除安裝 Microsoft Entra Connect,它會顯示下列警告訊息: 「除非您在其他伺服器上有安裝其他傳遞驗證代理程式,否則使用者將無法登入 Microsoft Entra ID。」

在您解除安裝 Microsoft Entra Connect 之前,請確認您的設定為高可用性,以避免中斷使用者登入。

啟用此功能的問題

啟用功能失敗,因為沒有可用的驗證代理程式

您必須至少有一個作用中的驗證代理程式,才能在租使用者上啟用傳遞驗證。 您可以藉由安裝 Microsoft Entra 連線或獨立驗證代理程式來安裝驗證代理程式。

啟用功能失敗,因為埠遭到封鎖

請確定已安裝 Microsoft Entra 連線 的伺服器可以與此處 所列 的服務 URL 和埠通訊。

啟用功能失敗,因為權杖或帳戶授權錯誤

請確定您在啟用此功能時,使用僅限雲端的全域管理員istrator 帳戶。 啟用多重要素驗證 (MFA) 的全域管理員istrator 帳戶有已知問題;暫時關閉 MFA(僅完成作業)作為因應措施。

收集傳遞驗證代理程式記錄

視您可能擁有的問題類型而定,您必須在不同的位置查看傳遞驗證代理程式記錄。

Microsoft Entra 連線記錄

如需與安裝相關的錯誤,請檢查 位於 %ProgramData%\AADConnect\trace-*.log 的 Microsoft Entra 連線記錄。

驗證代理程式事件記錄

如需與驗證代理程式相關的錯誤,請開啟伺服器上的事件檢視器應用程式,並於 Application and Service Logs\Microsoft\AzureAdConnect\AuthenticationAgent\Admin 下查看。

如需詳細的分析,請啟用「會話」記錄檔(在事件檢視器應用程式內按一下滑鼠右鍵以尋找此選項)。 不要使用正常作業期間啟用的記錄檔執行驗證代理程式,此記錄檔只適用於進行疑難排解。 只有在再次停用記錄檔之後,才會顯示記錄內容。

詳細的追蹤記錄

若要針對使用者登入失敗進行疑難排解,請在 %ProgramData%\Microsoft\Azure AD 連線 Authentication Agent\Trace\ 尋找追蹤記錄 。 這些記錄包括特定使用者使用傳遞驗證功能登入失敗的原因。 這些錯誤也會對應至先前登入失敗原因數據表中顯示的登入失敗原因。 以下是記錄專案的範例:

    AzureADConnectAuthenticationAgentService.exe Error: 0 : Passthrough Authentication request failed. RequestId: 'df63f4a4-68b9-44ae-8d81-6ad2d844d84e'. Reason: '1328'.
        ThreadId=5
        DateTime=xxxx-xx-xxTxx:xx:xx.xxxxxxZ

您可以開啟命令提示字元並執行下列命令,以取得錯誤的描述性詳細資料 (注意:將 '1328' 取代為您在記錄中看到的實際錯誤號碼):

Net helpmsg 1328

Pass-through Authentication

傳遞驗證登入記錄

如果已啟用稽核記錄,您可以在傳遞驗證服務器的安全性記錄中找到其他資訊。 查詢登入要求的簡單方法是使用下列查詢來篩選安全性記錄:

    <QueryList>
    <Query Id="0" Path="Security">
    <Select Path="Security">*[EventData[Data[@Name='ProcessName'] and (Data='C:\Program Files\Microsoft Azure AD Connect Authentication Agent\AzureADConnectAuthenticationAgentService.exe')]]</Select>
    </Query>
    </QueryList>

效能監視器計數器

監視驗證代理程式的另一種方法是追蹤安裝驗證代理程式之每部伺服器上的特定效能監視器計數器。 使用下列全域計數器 ( # PTA 驗證 #PTA 驗證失敗 ,以及 #PTA 成功驗證 )和錯誤計數器 ( # PTA 驗證錯誤 ):

Pass-through Authentication Performance Monitor counters

重要

傳遞驗證會使用多個驗證代理程式來提供高可用性,而不是 負載平衡。 根據您的設定, 並非所有 的驗證代理程式都會收到大致 相等 的要求數目。 特定驗證代理程式可能完全不會收到任何流量。