使用 dsregcmd 命令針對裝置進行疑難排解

本文涵蓋如何使用 命令的 dsregcmd 輸出來瞭解Microsoft Entra識別碼中的裝置狀態。 此 dsregcmd /status 公用程式必須以網域使用者帳戶的形式執行。

裝置狀態

此區段會列出裝置加入狀態參數。 下表列出裝置在不同加入狀態中所需的準則:

AzureAdJoined Enterprise 加入 DomainJoined 裝置狀態
YES 已加入Microsoft Entra
YES 已加入網域
YES YES 已加入混合式Microsoft Entra
YES YES 內部部署 DRS 加入

注意

已加入工作場所 (Microsoft Entra 註冊) 狀態會顯示在[使用者狀態] 區段中。

  • AzureAdJoined:如果裝置已加入Microsoft Entra識別碼,請將狀態設定為[是]。 否則,請將狀態設為 [否]。
  • EnterpriseJoined:如果裝置已加入內部部署資料複寫服務 (DRS),請將狀態設為 [是]。 裝置不可同時為 EnterpriseJoined 和 AzureAdJoined。
  • DomainJoined:如果裝置已加入網域 (Active Directory),請將狀態設為 [是]。
  • DomainName:如果裝置已加入網域,請將狀態設為網域的名稱。

範例裝置狀態輸出

+----------------------------------------------------------------------+
| Device State                                                         |
+----------------------------------------------------------------------+
             AzureAdJoined : YES
          EnterpriseJoined : NO
              DomainJoined : YES
                DomainName : HYBRIDADFS
+----------------------------------------------------------------------+

裝置詳細資訊

只有在裝置 Microsoft Entra已加入或Microsoft Entra混合式聯結 (未Microsoft Entra註冊) 時,才會顯示狀態。 本節列出儲存在Microsoft Entra識別碼中的裝置識別詳細資料。

  • DeviceId:Microsoft Entra租使用者中裝置的唯一識別碼。
  • 指紋:裝置憑證的指紋。
  • DeviceCertificateValidity:裝置憑證的有效狀態。
  • KeyContainerId:與裝置憑證相關裝置私密金鑰的 containerId。
  • KeyProvider:用來儲存裝置私密金鑰的 KeyProvider (硬體/軟體)。
  • TpmProtected:如果裝置私密金鑰儲存在硬體的信賴平台模組 (TPM),則狀態會設為 [是]。
  • DeviceAuthStatus:執行檢查,以判斷Microsoft Entra識別碼中的裝置健康情況。 健康狀態為:
    • 如果裝置存在且在Microsoft Entra識別碼中啟用,則為 SUCCESS
    • 失敗。 裝置已停用或刪除 如果裝置已停用或刪除,則為 。 如需此問題的詳細資訊,請參閱Microsoft Entra裝置管理常見問題
    • 失敗。 ERROR 如果測試無法執行,則為 。 此測試需要Microsoft Entra識別碼的網路連線能力。

      注意

      DeviceAuthStatus 欄位已在 Windows 10 2021 年 5 月更新中新增 (21H1 版)。

範例裝置詳細資料輸出

+----------------------------------------------------------------------+
| Device Details                                                       |
+----------------------------------------------------------------------+

                  DeviceId : e92325d0-xxxx-xxxx-xxxx-94ae875dxxxx
                Thumbprint : D293213EF327483560EED8410CAE36BB67208179
 DeviceCertificateValidity : [ 2019-01-11 21:02:50.000 UTC -- 2029-01-11 21:32:50.000 UTC ]
            KeyContainerId : 13e68a58-xxxx-xxxx-xxxx-a20a2411xxxx
               KeyProvider : Microsoft Software Key Storage Provider
              TpmProtected : NO
          DeviceAuthStatus : SUCCESS
+----------------------------------------------------------------------+

租用戶詳細資料

只有在裝置 Microsoft Entra已加入或Microsoft Entra混合式加入時,才會顯示租使用者詳細資料,而不會Microsoft Entra註冊。 本節列出當裝置加入Microsoft Entra識別碼時顯示的一般租使用者詳細資料。

注意

如果此區段中的行動裝置管理 (MDM) URL 欄位為空白,則表示未設定 MDM,或目前的使用者不在 MDM 註冊範圍內。 檢查Microsoft Entra識別碼中的行動設定,以檢閱您的 MDM 組態。

注意

即使您看到 MDM URL,這並不表示裝置是由 MDM 管理。 如果租用戶的 MDM 設為自動註冊,即使裝置本身未受管理,也會顯示此資訊。

範例租用戶詳細資料輸出

+----------------------------------------------------------------------+
| Tenant Details                                                       |
+----------------------------------------------------------------------+

                TenantName : HybridADFS
                  TenantId : 96fa76d0-xxxx-xxxx-xxxx-eb60cc22xxxx
                       Idp : login.windows.net
               AuthCodeUrl : https://login.microsoftonline.com/96fa76d0-xxxx-xxxx-xxxx-eb60cc22xxxx/oauth2/authorize
            AccessTokenUrl : https://login.microsoftonline.com/96fa76d0-xxxx-xxxx-xxxx-eb60cc22xxxx/oauth2/token
                    MdmUrl : https://enrollment.manage-beta.microsoft.com/EnrollmentServer/Discovery.svc
                 MdmTouUrl : https://portal.manage-beta.microsoft.com/TermsOfUse.aspx
          MdmComplianceUrl : https://portal.manage-beta.microsoft.com/?portalAction=Compliance
               SettingsUrl : eyJVxxxxIjpbImh0dHBzOi8va2FpbGFuaS5vbmUubWljcm9zb2Z0LmNvbS8iLCJodHRwczovL2thaWxhbmkxLm9uZS5taWNyb3NvZnQuY29tLyxxxx==
            JoinSrvVersion : 1.0
                JoinSrvUrl : https://enterpriseregistration.windows.net/EnrollmentServer/device/
                 JoinSrvId : urn:ms-drs:enterpriseregistration.windows.net
             KeySrvVersion : 1.0
                 KeySrvUrl : https://enterpriseregistration.windows.net/EnrollmentServer/key/
                  KeySrvId : urn:ms-drs:enterpriseregistration.windows.net
        WebAuthNSrvVersion : 1.0
            WebAuthNSrvUrl : https://enterpriseregistration.windows.net/webauthn/96fa76d0-xxxx-xxxx-xxxx-eb60cc22xxxx/
             WebAuthNSrvId : urn:ms-drs:enterpriseregistration.windows.net
    DeviceManagementSrvVer : 1.0
    DeviceManagementSrvUrl : https://enterpriseregistration.windows.net/manage/96fa76d0-xxxx-xxxx-xxxx-eb60cc22xxxx/
     DeviceManagementSrvId : urn:ms-drs:enterpriseregistration.windows.net
+----------------------------------------------------------------------+

使用者狀態

此區段會針對目前登入裝置的使用者,列出各種屬性的狀態。

注意

命令必須在使用者內容中執行,才能擷取有效的狀態。

  • NgcSet:如果已針對目前登入的使用者設定 Windows Hello 金鑰,請將狀態設為 [是]。
  • NgcKeyId:如果已針對目前登入的使用者設定 Windows Hello 金鑰,則為金鑰的識別碼。
  • CanReset:表示使用者是否可以重設 Windows Hello 金鑰。
  • 可能的值:如果發生錯誤,則為 DestructiveOnly、NonDestructiveOnly、DestructiveAndNonDestructive 或 Unknown。
  • WorkplaceJoined:如果Microsoft Entra已註冊的帳戶已新增至目前 NTUSER 內容中的裝置,請將狀態設定為[是]。
  • WamDefaultSet:如果已針對登入的使用者建立 Web 帳戶管理員 (WAM) 預設值 WebAccount,請將狀態設為 [是]。 如果 dsregcmd /status 從提升權限的命令提示字元執行,此欄位可能會顯示錯誤。
  • WamDefaultAuthority:將狀態設定為組織Microsoft Entra識別碼。
  • WamDefaultId:一律用於 https://login.microsoft.com Microsoft Entra識別碼。
  • WamDefaultGUID:WAM 提供者針對預設 WAM WebAccount 的 (Azure AD/Microsoft 帳戶) GUID。

範例使用者狀態輸出

+----------------------------------------------------------------------+
| User State                                                           |
+----------------------------------------------------------------------+

                    NgcSet : YES
                  NgcKeyId : {FA0DB076-A5D7-4844-82D8-50A2FB42EC7B}
                  CanReset : DestructiveAndNonDestructive
           WorkplaceJoined : NO
             WamDefaultSet : YES
       WamDefaultAuthority : organizations
              WamDefaultId : https://login.microsoft.com
            WamDefaultGUID : { B16898C6-A148-4967-9171-64D755DA8520 } (AzureAd)

+----------------------------------------------------------------------+

SSO 狀態

您可以忽略已註冊Microsoft Entra裝置的本節。

注意

命令必須在使用者內容中執行,才能擷取使用者的有效狀態。

  • AzureAdPrt:如果已登入使用者的裝置上有主要重新整理權杖 (PRT),請將狀態設為 [是]。
  • AzureAdPrtUpdateTime:將狀態設為上次更新 PRT 時的國際標準時間 (UTC)。
  • AzureAdPrtExpiryTime:將狀態設為如果 PRT 未更新則會到期的時間 (UTC)。
  • AzureAdPrtAuthority:Microsoft Entra授權單位 URL
  • EnterprisePrt:如果裝置具有來自內部部署 Active Directory 同盟服務 (AD FS) 的 PRT,請將狀態設為 [是]。 針對Microsoft Entra混合式聯結裝置,裝置可以同時擁有來自Microsoft Entra識別碼和內部部署的 Active Directory的 PRT。 已加入內部部署的裝置只會有 Enterprise PRT。
  • EnterprisePrtUpdateTime:將狀態設定為上次更新 Enterprise PRT 時的時間 (UTC)。
  • EnterprisePrtExpiryTime:將狀態設為如果 PRT 未更新則會到期的時間 (UTC)。
  • EnterprisePrtAuthority:AD FS 授權單位 URL

注意

下列 PRT 診斷欄位已在 Windows 10 2021 年 5 月更新中新增 (21H1 版)。

注意

  • AzureAdPrt欄位中顯示的診斷資訊適用于Microsoft Entra PRT 擷取或重新整理,而EnterprisePrt欄位中顯示的診斷資訊適用于企業 PRT 取得或重新整理。
  • 只有在上次成功的 PRT 更新時間 (AzureAdPrtUpdateTime/EnterprisePrtUpdateTime) 之後發生擷取或重新整理失敗時,才會顯示診斷資訊。
    在共用裝置上,此診斷資訊可能來自不同使用者的登入嘗試。
  • AcquirePrtDiagnostics:如果記錄中有取得的 PRT 診斷資訊,請將狀態設為 [已存在]。
    如果沒有可用的診斷資訊,則會略過此欄位。
  • 先前的 PRT 嘗試:發生失敗 PRT 嘗試的當地時間 (UTC)。
  • 嘗試狀態:傳回的用戶端錯誤碼 (HRESULT)。
  • 使用者身分識別:發生 PRT 嘗試的使用者 UPN。
  • 認證類型:用來取得或重新整理 PRT 的認證。 常見的認證類型為密碼和新一代認證 (NGC) (適用於 Windows Hello)。
  • 相互關聯識別碼:伺服器針對失敗 PRT 嘗試所傳送的相互關聯識別碼。
  • 端點 URI:失敗前所存取的最後一個端點。
  • HTTP 方法:用來存取端點的 HTTP 方法。
  • HTTP 錯誤:WinHttp 傳輸錯誤碼。 取得額外的網路錯誤碼
  • HTTP 狀態:端點傳回的 HTTP 狀態。
  • 伺服器錯誤碼:來自伺服器的錯誤碼。
  • 伺服器錯誤描述:來自伺服器的錯誤訊息。
  • RefreshPrtDiagnostics:如果記錄中有取得的 PRT 診斷資訊,請將狀態設為 [已存在]。
    如果沒有可用的診斷資訊,則會略過此欄位。 診斷資訊欄位與 AcquirePrtDiagnostics 相同

注意

原始版本 21H2 Windows 11 () 已新增下列 Cloud Kerberos 診斷欄位。

  • OnPremTgt:如果雲端 Kerberos 票證存取已登入使用者的裝置上存在內部部署資源,請將狀態設定為 [是 ]。
  • CloudTgt:如果雲端 Kerberos 票證可存取已登入使用者的裝置上存在雲端資源,請將狀態設定為 [是 ]。
  • KerbTopLevelNames:Cloud Kerberos 的最上層 Kerberos 領域名稱稱清單。

SSO 狀態輸出範例

+----------------------------------------------------------------------+
| SSO State                                                            |
+----------------------------------------------------------------------+

                AzureAdPrt : NO
       AzureAdPrtAuthority : https://login.microsoftonline.com/96fa76d0-xxxx-xxxx-xxxx-eb60cc22xxxx
     AcquirePrtDiagnostics : PRESENT
      Previous Prt Attempt : 2020-07-18 20:10:33.789 UTC
            Attempt Status : 0xc000006d
             User Identity : john@contoso.com
           Credential Type : Password
            Correlation ID : 63648321-fc5c-46eb-996e-ed1f3ba7740f
              Endpoint URI : https://login.microsoftonline.com/96fa76d0-xxxx-xxxx-xxxx-eb60cc22xxxx/oauth2/token/
               HTTP Method : POST
                HTTP Error : 0x0
               HTTP status : 400
         Server Error Code : invalid_grant
  Server Error Description : AADSTS50126: Error validating credentials due to invalid username or password.
             EnterprisePrt : YES
   EnterprisePrtUpdateTime : 2019-01-24 19:15:33.000 UTC
   EnterprisePrtExpiryTime : 2019-02-07 19:15:33.000 UTC
    EnterprisePrtAuthority : https://fs.hybridadfs.nttest.microsoft.com:443/adfs
                 OnPremTgt : YES
                  CloudTgt : YES
         KerbTopLevelNames : .windows.net,.windows.net:1433,.windows.net:3342,.azure.net,.azure.net:1433,.azure.net:3342

+----------------------------------------------------------------------+

診斷資料

預先加入診斷

只有在裝置已加入網域且無法Microsoft Entra混合式聯結時,才會顯示此診斷區段。

本節會執行各種測試,以協助診斷加入失敗。 此資訊包括錯誤階段、錯誤碼、伺服器要求識別碼、伺服器回應 HTTP 狀態,以及伺服器回應錯誤訊息。

  • 使用者內容:執行診斷所在的內容。 可能的值:SYSTEM、UN-ELEVATED User、ELEVATED User。

    注意

    因為實際加入是在系統內容中執行,所以在 SYSTEM 內容中執行診斷最接近實際的加入案例。 若要在 SYSTEM 內容中執行診斷,dsregcmd /status 必須從提升權限的命令提示字元執行命令。

  • 用戶端時間:系統時間 (UTC)。

  • AD 連線能力測試:此測試會對網域控制站執行連線測試。 這項測試中的錯誤可能會導致在前置檢查階段發生加入錯誤。

  • AD 設定測試:此測試會讀取並驗證是否已在內部部署 Active Directory 樹系中正確設定服務連接點 (SCP) 物件。 這項測試中的錯誤可能會導致在探索階段發生加入錯誤,錯誤碼為 0x801c001d。

  • DRS 探勘測試:此測試會從探索中繼資料端點取得 DRS 端點,並執行使用者領域要求。 這項測試中的錯誤可能會導致在探索階段發生加入錯誤。

  • DRS 連線能力測試:此測試會對 DRS 端點執行基本的連線測試。

  • 權杖擷取測試:如果使用者租使用者是同盟,此測試會嘗試取得Microsoft Entra驗證權杖。 這項測試中的錯誤可能會導致在驗證階段發生加入錯誤。 如果驗證失敗,即會嘗試將同步加入視為遞補,除非已使用下列登錄機碼設定明確停用遞補:

    Keyname: Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\CDJ
    Value: FallbackToSyncJoin
    Type:  REG_DWORD
    Value: 0x0 -> Disabled
    Value: 0x1 -> Enabled
    Default (No Key): Enabled
    
  • 以同步加入遞補:如果上述驗證失敗時防止以同步加入遞補的登錄機碼不存在,請將狀態設為 [已啟用]。 此選項從 Windows 10 1803 和更新版本中提供。

  • 先前的註冊:先前發生加入嘗試的時間。 只會記錄失敗的加入嘗試。

  • 錯誤階段:已中止加入的階段。 可能的值為預先檢查、探索、驗證和加入。

  • 用戶端錯誤碼:傳回的用戶端錯誤碼 (HRESULT)。

  • 伺服器錯誤碼:當要求傳送到伺服器,且伺服器回應錯誤碼時,所顯示的伺服器錯誤碼。

  • 伺服器訊息:傳回的伺服器訊息以及錯誤碼。

  • HTTP 狀態:伺服器傳回的 HTTP 狀態。

  • 要求識別碼:傳送至伺服器的用戶端要求識別碼。 要求識別碼可用於與伺服器端記錄相互關聯。

範例預先加入診斷輸出

下列範例顯示發生探索錯誤的診斷測試失敗。

+----------------------------------------------------------------------+
| Diagnostic Data                                                       |
+----------------------------------------------------------------------+

     Diagnostics Reference : www.microsoft.com/aadjerrors
              User Context : SYSTEM
               Client Time : 2019-01-31 09:25:31.000 UTC
      AD Connectivity Test : PASS
     AD Configuration Test : PASS
        DRS Discovery Test : FAIL [0x801c0021/0x801c000c]
     DRS Connectivity Test : SKIPPED
    Token acquisition Test : SKIPPED
     Fallback to Sync-Join : ENABLED

     Previous Registration : 2019-01-31 09:23:30.000 UTC
               Error Phase : discover
          Client ErrorCode : 0x801c0021

+----------------------------------------------------------------------+

下列範例顯示診斷測試已通過,但註冊嘗試因為目錄錯誤而失敗,預期會進行同步加入。 Microsoft Entra Connect 同步處理作業完成之後,裝置就能夠加入。

+----------------------------------------------------------------------+
| Diagnostic Data                                                       |
+----------------------------------------------------------------------+

     Diagnostics Reference : www.microsoft.com/aadjerrors
              User Context : SYSTEM
               Client Time : 2019-01-31 09:16:50.000 UTC
      AD Connectivity Test : PASS
     AD Configuration Test : PASS
        DRS Discovery Test : PASS
     DRS Connectivity Test : PASS
    Token acquisition Test : PASS
     Fallback to Sync-Join : ENABLED

     Previous Registration : 2019-01-31 09:16:43.000 UTC
         Registration Type : sync
               Error Phase : join
          Client ErrorCode : 0x801c03f2
          Server ErrorCode : DirectoryError
            Server Message : The device object by the given id (e92325d0-7ac4-4714-88a1-94ae875d5245) isn't found.
              Https Status : 400
                Request Id : 6bff0bd9-820b-484b-ab20-2a4f7b76c58e

+----------------------------------------------------------------------+

預先加入診斷

此診斷區段會顯示已加入雲端裝置上所執行的例行性檢查輸出。

  • AadRecoveryEnabled:如果值為 [是],則無法使用儲存在裝置中的金鑰,且裝置會標示為要復原。 下一次登入將會觸發復原流程,並重新登錄裝置。
  • KeySignTest:如果值為 [通過],則裝置金鑰的健康情況良好。 如果 KeySignTest 失敗,裝置通常會標示為進行復原。 下一次登入將會觸發復原流程,並重新登錄裝置。 對於已加入混合式Microsoft Entra裝置,復原為無訊息。 當裝置已Microsoft Entra加入或Microsoft Entra註冊時,系統會視需要提示使用者驗證復原並重新註冊裝置。

    注意

    KeySignTest 需要較高的權限。

範例預先加入診斷輸出

+----------------------------------------------------------------------+
| Diagnostic Data                                                      |
+----------------------------------------------------------------------+

         AadRecoveryEnabled: NO
               KeySignTest : PASSED
+----------------------------------------------------------------------+

NGC 必要條件檢查。

此診斷區段會執行設定 Windows Hello 企業版 (WHFB) 的必要條件檢查。

注意

如果使用者已成功設定 WHFB,您可能不會在中 dsregcmd /status 看到 NGC 必要條件檢查詳細資料。

  • IsDeviceJoined:如果裝置已加入MICROSOFT ENTRA識別碼,請將狀態設定為YES
  • IsUserAzureAD:如果登入的使用者出現在Microsoft Entra識別碼中,請將狀態設定為[是]。
  • PolicyEnabled:如果裝置上已啟用 WHFB 原則,則將狀態設為 [是]。
  • PostLogonEnabled:如果平台會以原生方式觸發 WHFB 註冊,請將狀態設為 [是]。 如果狀態設定為 [否],則表示 Windows Hello 企業版是由自訂機制所觸發。
  • DeviceEligible:如果裝置符合使用 WHFB 註冊的硬體需求,請將狀態設為 [是]。
  • SessionIsNotRemote:如果目前的使用者是直接登入裝置而非從遠端登入,請將狀態設為 [是]。
  • CertEnrollment:這是 WHFB 憑證信任部署的專用設定,表示 WHFB 的憑證登錄授權單位。 如果 WHFB 原則的來源是群組原則,狀態會設定為 [登錄授權單位],或如果來源為 MDM,則會設為 [行動裝置管理]。 如果未套用任何來源,請將狀態設為 [無]。
  • AdfsRefreshToken:這是 WHFB 憑證信任部署的專用設定,且只有在 CertEnrollment 狀態為登錄授權單位時才存在。 此設定會指出裝置是否有使用者的企業 PRT。
  • AdfsRaIsReady:這是 WHFB 憑證信任部署的專用設定,且只有在 CertEnrollment 狀態為登錄授權單位時才存在。 如果 AD FS 在探索中繼資料中指出其支援 WHFB,且可以使用登入憑證範本,請將狀態設為 [是]。
  • LogonCertTemplateReady:是 WHFB 憑證信任部署的專用設定,且只有在 CertEnrollment 狀態為登錄授權單位時才存在。 如果登入憑證範本的狀態是有效的,請將狀態設為 [是],並協助疑難排解 AD FS 登錄授權單位 (RA)。
  • PreReqResult:提供所有 WHFB 必要條件評估的結果。 如果 WHFB 註冊會在使用者下次登入時以登入後工作的形式啟動,請設定要佈建的狀態。

注意

下列 Cloud Kerberos 診斷欄位已新增至 Windows 10 2021 年 5 月 2021 年 5 月更新 (21H1 版) 。

注意

在 Windows 11 23H2 版之前,OnPremTGT設定名為CloudTGT

  • OnPremTGT:此設定專屬於 Cloud Kerberos 信任部署,且只有在 CertEnrollment 狀態 為 none時才存在。 如果裝置有 Cloud Kerberos 票證可存取內部部署資源,請將狀態設定為 [是 ]。 在 Windows 11 23H2 版之前,此設定名為CloudTGT

範例 NGC 必要條件檢查輸出

+----------------------------------------------------------------------+
| Ngc Prerequisite Check                                               |
+----------------------------------------------------------------------+

            IsDeviceJoined : YES
             IsUserAzureAD : YES
             PolicyEnabled : YES
          PostLogonEnabled : YES
            DeviceEligible : YES
        SessionIsNotRemote : YES
            CertEnrollment : enrollment authority
          AdfsRefreshToken : YES
             AdfsRaIsReady : YES
    LogonCertTemplateReady : YES ( StateReady )
              PreReqResult : WillProvision
+----------------------------------------------------------------------+

後續步驟

移至 Microsoft 錯誤查詢工具