共用方式為


疑難排解 Microsoft Entra 傳遞驗證

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

重要

如果傳遞驗證發生使用者登入的問題,請不要在沒有可切換回的僅限雲端的混合式身分識別管理員帳戶情況下,停用此功能或解除安裝傳遞驗證代理程式。

一般問題

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

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

顯示 Microsoft Entra 系統管理中心中 - Microsoft Entra 連線窗格的螢幕擷取畫面。

顯示 Microsoft Entra 系統管理中心 - 傳遞驗證刀鋒的螢幕擷取畫面。

使用者看到的登入錯誤訊息

如果使用者無法登入使用傳遞驗證,他們可能會在 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 Connect 伺服器未加入網域,而這是 Microsoft Entra Connect:必要條件中所述的需求,便會發生無效的使用者名稱/密碼問題。

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

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

顯示 Microsoft Entra 系統管理中心 - 登入活動報告的螢幕擷取畫面,

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

登入錯誤碼 登入失敗原因 解決方法
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 Connect 或獨立驗證代理程式安裝和註冊作業中,使用僅限雲端的混合式身分識別管理員帳戶。 啟用 MFA 的混合式身分識別管理員帳戶有一個已知的問題,請暫時關閉 MFA (僅為了完成作業) 作為因應措施。

發生未預期的錯誤

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

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

解除安裝 Microsoft Entra Connect 時出現的警告訊息

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

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

啟用此功能的問題

因為沒有任何可用的驗證代理程式,所以啟用此功能失敗。

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

因為連接埠遭到封鎖,所以啟用功能失敗。

確認已安裝 Microsoft Entra Connect 的伺服器能與我們的服務 URL 和連接埠通訊,如這裡所列。

由於權杖或帳戶授權錯誤,啟用功能失敗。

請確定您在啟用此功能時,使用僅限雲端的混合式身分識別管理員帳戶。 啟用 Multi-Factor Authentication (MFA) 的混合式身分識別管理員帳戶有一個已知的問題;請暫時關閉 MFA (僅為了完成作業) 作為因應措施。

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

根據發生的問題類型,您需要在不同的位置尋找傳遞驗證代理程式記錄。

Microsoft Entra Connect 記錄

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

驗證代理程式事件記錄

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

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

詳細的追蹤記錄

若要針對使用者登入失敗進行疑難排解,請查看追蹤記錄,其位於 %ProgramData%\Microsoft\Azure AD Connect 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'),以取得錯誤 (前例中為 '1328') 的描述性詳細資料:

Net helpmsg 1328

傳遞驗證

傳遞驗證登入失敗記錄

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

    <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 authentications#PTA failed authentications#PTA successful authentications) 和錯誤計數器 (# PTA authentication errors):

傳遞驗證效能監視器計數器

重要

傳遞驗證使用多個驗證代理程式,且 進行負載平衡,而提供了高可用性。 視您的設定而定, 並非 所有的驗證代理程式都會收到數目大約 相同 的要求。 特定的驗證代理程式可能完全不會收到流量。