Solución de problemas de Windows AutoPilotTroubleshooting Windows Autopilot

Se aplica a: Windows 10Applies to: Windows 10

Windows AutoPilot está diseñado para simplificar todas las partes del ciclo de vida de los dispositivos de Windows, pero siempre hay situaciones en las que pueden surgir problemas.Windows Autopilot is designed to simplify all parts of the Windows device lifecycle, but there are always situations where issues may arise. Revise la información siguiente para obtener ayuda con los esfuerzos de solución de problemas.Review the following information to assist with troubleshooting efforts.

Proceso de solución de problemasTroubleshooting process

Tanto si va a realizar implementaciones controladas por el usuario como para implementar dispositivos de forma automática, el proceso de solución de problemas es el mismo.Whether you're performing user-driven or self-deploying device deployments, the troubleshooting process is about the same. Resulta útil comprender el flujo de un dispositivo específico:It's useful to understand the flow for a specific device:

  1. Se establece una conexión de red.A network connection is established. La conexión puede ser una conexión inalámbrica (Wi-Fi) o cableada (Ethernet).The connection can be a wireless (Wi-fi) or wired (Ethernet) connection.
  2. Se descarga el perfil de Windows AutoPilot.The Windows Autopilot profile is downloaded. Cuando se usa una conexión cableada, o se establece manualmente una conexión inalámbrica, el perfil se descarga desde el servicio de implementación de AutoPilot en cuanto se realiza la conexión de red.When you use a wired connection, or manually establish a wireless connection, the profile downloads from the Autopilot deployment service as soon as the network connection is in place.
  3. Se produce la autenticación del usuario.User authentication occurs. Al realizar una implementación controlada por el usuario, el usuario escribirá sus credenciales de Azure Active Directory, que se validarán.When performing a user-driven deployment, the user will enter their Azure Active Directory credentials, which will be validated.
  4. Se produce Azure Active Directory combinación.Azure Active Directory join occurs. En el caso de las implementaciones controladas por el usuario, el dispositivo se unirá a Azure AD con las credenciales de usuario especificadas.For user-driven deployments, the device will be joined to Azure AD using the specified user credentials. En el caso de los escenarios de auto-implementación, el dispositivo se unirá sin especificar ninguna credencial de usuario.For self-deploying scenarios, the device will be joined without specifying any user credentials.
  5. Se produce la inscripción automática de MDM.Automatic MDM enrollment occurs. Como parte del proceso de unión de Azure AD, el dispositivo se inscribe en el servicio MDM configurado en Azure AD (por ejemplo, Microsoft Intune).As part of the Azure AD join process, the device will enroll in the MDM service configured in Azure AD (for example, Microsoft Intune).
  6. Se aplica la configuración.Settings are applied. Si está configurada la Página estado de inscripción , la mayoría de las opciones se aplicarán mientras se muestra la página estado de inscripción.If the enrollment status page is configured, most settings will be applied while the enrollment status page is displayed. Si no está configurado o disponible, se aplicará la configuración después de que el usuario haya iniciado sesión.If not configured or available, settings will be applied after the user is signed in.

Para solucionar problemas, las actividades clave que se deben realizar son las siguientes:For troubleshooting, key activities to perform are:

Solución de problemas de importación de dispositivos AutoPilotTroubleshooting Autopilot Device Import

Al hacer clic en importar después de seleccionar CSV no hace nada, aparece el error "400" en el seguimiento de red con el cuerpo del error "no se puede convertir el literal" [DEVICEHASH] "al tipo esperado" EDM. binary ""Clicking Import after selecting CSV does nothing, '400' error appears in network trace with error body "Cannot convert the literal '[DEVICEHASH]' to the expected type 'Edm.Binary'"

Este error apunta al hash del dispositivo con un formato incorrecto.This error points to the device hash being incorrectly formatted. Cualquier cosa que dañe el hash recopilado puede producir este error.Anything that corrupts the collected hash can cause this error. Una posibilidad es que el propio hash (incluso si es válido) no se pueda descodificar.One possibility is that the hash itself (even if it's valid) fails to be decoded.

El hash del dispositivo es Base64.The device hash is Base64. En el nivel de dispositivo, se codifican como Base64 sin rellenar, pero el piloto automático espera que los códigos base de Base64 estén rellenados.At the device level, it's encoded as unpadded Base64, but Autopilot expects padded Base64. Normalmente, la carga no requiere relleno y el proceso funciona.Usually, the payload doesn't require padding and the process works. Sin embargo, a veces, la carga no se alinea correctamente y es necesario el relleno.Sometimes, however, the payload doesn't line up cleanly and padding is necessary. En este caso, obtendrá el error mostrado anteriormente.In this case, you get the error displayed above. El descodificador de Base64 de PowerShell también espera que se rellene el código Base64, por lo que podemos usar este descodificador para validar que el hash está correctamente rellenado.PowerShell's Base64 decoder also expects padded Base64, so we can use this decoder to validate that the hash is properly padded.

Los caracteres "A" al final del hash son datos realmente vacíos.The "A" characters at the end of the hash are effectively empty data. Cada carácter de Base64 es de 6 bits, un en Base64 es de 6 bits igual a 0.Each character in Base64 is 6 bits, A in Base64 is 6 bits equal to 0. La eliminación o adición de s al final no cambia los datos de cargareales.Deleting or adding As at the end doesn't change the actual payload data.

Para corregir este problema, es necesario modificar el hash y, a continuación, probar el nuevo valor hasta que PowerShell sea correcto al descodificar el hash.To fix this issue, we'll need to modify the hash, then test the new value, until PowerShell succeeds in decoding the hash. El resultado es principalmente ilegible, que es correcto.The result is mostly illegible, which is fine. Solo estamos buscando para no producir el error "longitud no válida para una matriz de caracteres de base 64 o cadena".We're just looking for it to not throw the error "Invalid length for a Base-64 char array or string".

Para probar Base64, puede usar el siguiente PowerShell:To test the base64, you can use the following PowerShell:

[System.Text.Encoding]::ascii.getstring( [System.Convert]::FromBase64String("DEVICE HASH"))

Por lo tanto, como ejemplo (esto no es un hash de dispositivo, pero no está alineado con base64 sin rellenar, por lo que es adecuado para pruebas):So, as an example (this isn't a device hash, but it's misaligned unpadded Base64 so it's good for testing):

[System.Text.Encoding]::ascii.getstring( [System.Convert]::FromBase64String("Q29udG9zbwAAA"))

Ahora para las reglas de relleno.Now for the padding rules. El carácter de relleno es "=".The padding character is "=". El carácter de relleno solo puede estar al final del hash y solo puede haber un máximo de dos caracteres de relleno.The padding character can only be at the end of the hash, and there can only be a maximum of two padding characters. Esta es la lógica básica.Here's the basic logic.

  • ¿Se produce un error al descodificar el hash?Does decoding the hash fail?
  • Sí: ¿son los dos últimos caracteres "="?Yes: Are the last two characters "="?
    • Sí: reemplace "=" por un solo carácter "A" e inténtelo de nuevo.Yes: Replace both "=" with a single "A" character, then try again
    • No: agregue otro carácter "=" al final e inténtelo de nuevo.No: Add another "=" character at the end, then try again
  • No: ese hash es válidoNo: That hash is valid

Al recorrer la lógica anterior en el hash de ejemplo anterior, se obtienen las siguientes permutaciones:Looping the logic above on the previous example hash, we get the following permutations:

  • Q29udG9zbwAAAQ29udG9zbwAAA
  • Q29udG9zbwAAA =Q29udG9zbwAAA=
  • Q29udG9zbwAAA = =Q29udG9zbwAAA==
  • Q29udG9zbwAAAAQ29udG9zbwAAAA
  • Q29udG9zbwAAAA =Q29udG9zbwAAAA=
  • Q29udG9zbwAAAA = = (este tiene un relleno válido)Q29udG9zbwAAAA== (This one has valid padding)

Reemplace el hash recopilado por este nuevo hash rellenado e intente realizar de nuevo la importación.Replace the collected hash with this new padded hash then try to import again.

Solución de problemas de OOBE de AutoPilotTroubleshooting Autopilot OOBE issues

Cuando OOBE incluye un comportamiento inesperado de AutoPilot, resulta útil comprobar si el dispositivo ha recibido un perfil de AutoPilot.When OOBE includes unexpected Autopilot behavior, it's useful to check if the device received an Autopilot profile. Si es así, Compruebe la configuración que contiene el perfil.If so, check the settings that the profile contained. Dependiendo de la versión de Windows 10, hay diferentes mecanismos disponibles para hacerlo.Depending on the Windows 10 release, there are different mechanisms available to do that.

Windows 10 versión 1803 y versiones posterioresWindows 10 version 1803 and above

La versión 1803 y posteriores de Windows 10 agrega entradas del registro de eventos.Windows 10 version 1803 and above adds event log entries. Puede usar las entradas del registro para ver los detalles relacionados con la configuración del perfil de AutoPilot y el flujo de OOBE.You can use the log entries to see details related to the Autopilot profile settings and OOBE flow. Estas entradas se pueden ver mediante Visor de eventos.These entries can be viewed using Event Viewer. Revise la información en registros de aplicaciones y servicios: > Microsoft – > Windows – > provisioning-Diagnostics-Provider – > AutoPilot para las versiones anteriores a 1903.Review the information at Application and Services Logs –> Microsoft –> Windows –> Provisioning-Diagnostics-Provider –> Autopilot for versions before 1903. Para la versión 1903 y versiones posteriores, consulte registros de aplicaciones y servicios: > Microsoft – > Windows – > ModernDeployment-Diagnostics-Provider – > AutoPilot.For version 1903 and later, see Application and Services Logs –> Microsoft –> Windows –> ModernDeployment-Diagnostics-Provider –> Autopilot. Se pueden registrar los siguientes eventos, en función del escenario y de la configuración del perfil:The following events may be recorded, depending on the scenario and profile configuration:

Id. de eventoEvent ID TipoType DescripciónDescription
100100 AdvertenciaWarning "No se encontró la Directiva de AutoPilot [nombre]."“Autopilot policy [name] not found.” Este error suele ser un problema temporal, mientras que el dispositivo está esperando a que se descargue un perfil de AutoPilot.This error is typically a temporary problem, while the device is waiting for an Autopilot profile to be downloaded.
101101 InformaciónInfo "AutopilotGetPolicyDwordByName Succeeded: nombre de la Directiva = [nombre de la configuración]; valor de Directiva = [valor]. "“AutopilotGetPolicyDwordByName succeeded: policy name = [setting name]; policy value = [value].” Este mensaje muestra la recuperación y el procesamiento automático de la configuración de OOBE.This message shows Autopilot retrieving and processing numeric OOBE settings.
103103 InformaciónInfo "AutopilotGetPolicyStringByName Succeeded: nombre de la Directiva = [nombre]; valor = [valor]. "“AutopilotGetPolicyStringByName succeeded: policy name = [name]; value = [value].” Este mensaje muestra la recuperación y el procesamiento automático de cadenas de configuración de OOBE como el nombre del inquilino de Azure AD.This message shows Autopilot retrieving and processing OOBE setting strings such as the Azure AD tenant name.
109109 InformaciónInfo "AutopilotGetOobeSettingsOverride Succeeded: configuración de OOBE [nombre de configuración]; Estado = [Estado]. "“AutopilotGetOobeSettingsOverride succeeded: OOBE setting [setting name]; state = [state].” Este mensaje muestra la recuperación y el procesamiento automáticos de la configuración de OOBE relacionada con el estado.This message shows Autopilot retrieving and processing state-related OOBE settings.
111111 InformaciónInfo "AutopilotRetrieveSettings Succeeded".“AutopilotRetrieveSettings succeeded.” Este mensaje significa que la configuración almacenada en el perfil AutoPilot que controla el comportamiento de OOBE se ha recuperado correctamente.This message means that the settings stored in the Autopilot profile that control the OOBE behavior have been retrieved successfully.
153153 InformaciónInfo "AutopilotManager comunicó el Estado cambió de [estado original] a [nuevo estado]."“AutopilotManager reported the state changed from [original state] to [new state].” Normalmente, este mensaje debería decir "ProfileState_Unknown" a "ProfileState_Available".Usually, this message should say “ProfileState_Unknown” to “ProfileState_Available”. Este caso indica que un perfil estaba disponible y se ha descargado para el dispositivo.This case indicates that a profile was available and downloaded for the device. Por lo tanto, el dispositivo está listo para realizar la implementación mediante AutoPilot.So, the device is ready to deploy using Autopilot.
160160 InformaciónInfo "AutopilotRetrieveSettings a partir de la adquisición".“AutopilotRetrieveSettings beginning acquisition.” Este mensaje muestra que AutoPilot está listo para descargar la configuración de Perfil de AutoPilot necesaria.This message shows that Autopilot is getting ready to download the needed Autopilot profile settings.
161161 InformaciónInfo "AutopilotManager recuperar la configuración correctamente."“AutopilotManager retrieve settings succeeded.” El perfil AutoPilot se descargó correctamente.The Autopilot profile was successfully downloaded.
163163 InformaciónInfo "No se requiere la descarga definida por AutopilotManager y el dispositivo ya está aprovisionado.“AutopilotManager determined download isn't required and the device is already provisioned. Limpie o restablezca el dispositivo para cambiar esto ".Clean or reset the device to change this.” Este mensaje indica que un perfil de AutoPilot está residente en el dispositivo; normalmente solo lo quitaría el proceso Sysprep/generalize .This message indicates that an Autopilot profile is resident on the device; it typically would only be removed by the Sysprep /Generalize process.
164164 InformaciónInfo "AutopilotManager determinó que Internet está disponible para intentar la descarga de la Directiva".“AutopilotManager determined Internet is available to attempt policy download.”
171171 ErrorError "AutopilotManager no pudo establecer la identidad de TPM confirmada.“AutopilotManager failed to set TPM identity confirmed. HRESULT = [código de error]. "HRESULT=[error code].” Este mensaje indica un problema al realizar la atestación de TPM, necesario para completar el proceso del modo de implementación automática.This message indicates an issue performing TPM attestation, needed to complete the self-deploying mode process.
172172 ErrorError "AutopilotManager no pudo establecer el perfil de AutoPilot como disponible.“AutopilotManager failed to set Autopilot profile as available. HRESULT = [código de error]. "HRESULT=[error code].” Este error suele estar relacionado con el ID. de evento 171.This error is typically related to event ID 171.

Además de las entradas del registro de eventos, el registro y las opciones de seguimiento de ETW funcionan con la versión 1803 y posteriores de Windows 10.In addition to the event log entries, the registry and ETW trace options below work with Windows 10 version 1803 and above.

Windows 10 versión 1709 y versiones posterioresWindows 10 version 1709 and above

La configuración del perfil de AutoPilot recibida del servicio de implementación de AutoPilot se almacena en el registro del dispositivo.Autopilot profile settings received from the Autopilot deployment service are stored in the device's registry. Esta información puede encontrarse en HKLM\SOFTWARE\Microsoft\Provisioning\Diagnostics\Autopilot.This information can be found at HKLM\SOFTWARE\Microsoft\Provisioning\Diagnostics\Autopilot. Entre las entradas del registro disponibles se incluyen:Available registry entries include:

ValueValue DescripciónDescription
AadTenantIdAadTenantId GUID del inquilino de Azure AD en el que el usuario inició sesión.The GUID of the Azure AD tenant the user signed into. El usuario recibe un error si esta entrada no coincide con el inquilino que se usó para registrar el dispositivo.The user receives an error if this entry doesn't match the tenant that was used to register the device.
CloudAssignedTenantDomainCloudAssignedTenantDomain El Azure AD inquilino con el que se ha registrado el dispositivo, por ejemplo, "contosomn.onmicrosoft.com".The Azure AD tenant the device has been registered with, for example, “contosomn.onmicrosoft.com.” Si el dispositivo no está registrado con AutoPilot, este valor estará en blanco.If the device isn't registered with Autopilot, this value will be blank.
CloudAssignedTenantIdCloudAssignedTenantId GUID del inquilino de Azure AD con el que se registró el dispositivo.The GUID of the Azure AD tenant the device registered with. El GUID corresponde al dominio del inquilino del valor del registro CloudAssignedTenantDomain.The GUID corresponds to the tenant domain from the CloudAssignedTenantDomain registry value. Si el dispositivo no está registrado con AutoPilot, este valor estará en blanco.If the device isn’t registered with Autopilot, this value will be blank.
IsAutopilotDisabledIsAutopilotDisabled Si se establece en 1, este valor del registro indica que el dispositivo no está registrado con AutoPilot.If set to 1, this registry value indicates that the device isn't registered with Autopilot. Este estado también puede indicar que no se pudo descargar el perfil AutoPilot debido a problemas de conectividad de red o de firewall, o a tiempos de espera de red.This state could also indicate that the Autopilot profile couldn't be downloaded because of network connectivity or firewall issues, or network timeouts.
TenantMatchedTenantMatched Esta entrada se establece en 1 si el identificador de inquilino del usuario coincide con el identificador de inquilino con el que se registró el dispositivo.This entry is set to 1 if the user's tenant ID matches the tenant ID that the device was registered with. Si el valor del registro es 0, se mostrará un error al usuario y se forzará a que se inicie de nuevo.If this registry value is 0, the user would be shown an error and forced to start over.
CloudAssignedOobeConfigCloudAssignedOobeConfig Un mapa de bits que muestra qué configuración de AutoPilot se configuró.A bitmap that shows which Autopilot settings were configured. Los valores incluyen: SkipCortanaOptIn = 1, OobeUserNotLocalAdmin = 2, SkipExpressSettings = 4, SkipOemRegistration = 8, SkipEula = 16Values include: SkipCortanaOptIn = 1, OobeUserNotLocalAdmin = 2, SkipExpressSettings = 4, SkipOemRegistration = 8, SkipEula = 16

Versiones compatibles con el canal semianual de Windows 10Windows 10 semi-annual channel supported versions

En los dispositivos que ejecutan una versión compatible del canal semianual de Windows 10, puede usar el seguimiento de ETW para obtener información detallada de los componentes relacionados con el autopiloto y los relacionados.On devices running a supported version of Windows 10 semi-annual channel, you can use ETW tracing to get detailed information from Autopilot and related components. Los archivos de seguimiento de ETW se pueden ver mediante el analizador de rendimiento de Windows o herramientas similares.The ETW trace files can be viewed using the Windows Performance Analyzer or similar tools. Para obtener más información, consulte el blog de solución de problemas avanzada.For more information, see the advanced troubleshooting blog.

Solución de problemas de Azure AD joinTroubleshooting Azure AD Join issues

El problema más común al unir un dispositivo a Azure AD está relacionado con Azure AD permisos.The most common issue joining a device to Azure AD is related to Azure AD permissions. Asegúrese de que la configuración correcta esté en vigor para que los usuarios puedan unir dispositivos a Azure ad.Make sure that the correct configuration is in place to allow users to join devices to Azure AD. También se pueden producir errores si el usuario supera el número de dispositivos que pueden unirse.Errors can also happen if the user exceeds the number of devices that they're allowed to join. Este límite se configura en Azure AD.This limit is configured in Azure AD.

Después de la importación, se crea un dispositivo Azure AD.An Azure AD device is created upon import. Es importante que este objeto no se elimine.It's important this object isn't deleted. El objeto actúa como delimitador de AutoPilot en Azure AD para la pertenencia a grupos y los destinos (incluido el perfil).The object acts as Autopilot's anchor in Azure AD for group membership and targeting (including the profile). La eliminación puede provocar errores de combinación.Deleting it may lead to join errors. Si se elimina este objeto, puede corregir el problema eliminando y reimportando este hash de AutoPilot para que pueda volver a crear el objeto asociado.If this object is deleted, you can fix the issue by deleting and reimporting this autopilot hash so it can recreate the associated object.

El código de error 801C0003 normalmente se inscribirá en una página de error titulada "algo salió mal".Error code 801C0003 will typically be reported on an error page titled "Something went wrong". Este error significa que se produjo un error en la combinación de Azure AD.This error means that the Azure AD join failed.

Solución de problemas de inscripción de IntuneTroubleshooting Intune enrollment issues

Consulte este artículo de Knowledge Base para obtener ayuda con los problemas de inscripción de Intune.See this knowledge base article for assistance with Intune enrollment issues. Entre los problemas comunes se incluyen "Common issues can include"

  • licencias incorrectas o que faltan asignadas al usuario.incorrect or missing licenses assigned to the user.
  • demasiados dispositivos inscritos para el usuario.too many devices enrolled for the user.

El código de error 80180018 normalmente se inscribirá en una página de error titulada "algo salió mal".Error code 80180018 will typically be reported on an error page titled "Something went wrong". Este error significa que se produjo un error en la inscripción de MDM.This error means that the MDM enrollment failed.

Si se produce un error al restablecer el piloto automático inmediatamente con el error . Inicie sesión con una cuenta de administrador para ver por qué y restablecer manualmente. para obtener más ayuda, consulte solución de problemas de restablecimiento de AutoPilot .If Autopilot Reset fails immediately with the error Ran into trouble. Please sign in with an administrator account to see why and reset manually, see Troubleshoot Autopilot Reset for more help.

Descarga de perfilesProfile download

Cuando se inicia un dispositivo de Windows 10 conectado a Internet, intentará conectarse al servicio AutoPilot y descargar un perfil de AutoPilot.When an Internet-connected Windows 10 device boots up, it will attempt to connect to the Autopilot service and download an Autopilot profile. Nota: es importante que exista un perfil en esta fase para que un perfil en blanco no se almacene en caché localmente en el equipo.Note: It's important that a profile exists at this stage so that a blank profile isn't cached locally on the PC. Para quitar el perfil local actualmente almacenado en caché en la versión 1803 y anteriores de Windows 10, es necesario volver a generalizar el sistema operativo con Sysprep/generalize/Oobe, volver a instalar el sistema operativo o volver a crear la imagen del equipo.To remove the currently cached local profile in Windows 10 version 1803 and earlier, it's necessary to re-generalize the OS using sysprep /generalize /oobe, reinstall the OS, or re-image the PC. En Windows 10 versión 1809 y versiones posteriores, puede recuperar un nuevo perfil reiniciando el equipo.In Windows 10 version 1809 and later, you can retrieve a new profile by rebooting the PC.

Cuando se descarga un perfil, depende de la versión de Windows 10 que se esté ejecutando en el equipo.When a profile is downloaded depends upon the version of Windows 10 that is running on the PC. Vea la siguiente tabla.See the following table.

Versión de Windows 10Windows 10 version Comportamiento de descarga de perfilesProfile download behavior
17091709 El perfil se descarga después de la página de conexión de red de OOBE.The profile is downloaded after the OOBE network connection page. Esta página no se muestra cuando se usa una conexión con cable.This page isn't displayed when using a wired connection. En este caso, el perfil se descarga antes de la pantalla de CLUF.In this case, the profile is downloaded before the EULA screen.
18031803 El perfil se descarga lo antes posible.The profile is downloaded as soon as possible. Si está conectado, se descarga al principio de OOBE.If wired, it's downloaded at the start of OOBE. Si es inalámbrica, se descarga después de la página de conexión de red.If wireless, it's downloaded after the network connection page.
18091809 El perfil se descarga lo antes posible (igual que 1803) y de nuevo después de cada reinicio.The profile is downloaded as soon as possible (same as 1803), and again after each reboot.

Si necesita reiniciar un equipo durante OOBE:If you need to reboot a computer during OOBE:

  • Presione Mayús + F10 para abrir un símbolo del sistema.Press Shift-F10 to open a command prompt.
  • Escriba shutdown/r/t 0 para reiniciarlo inmediatamente o cierre/s/t 0 para cerrarlo inmediatamente.Enter shutdown /r /t 0 to restart immediately, or shutdown /s /t 0 to shut down immediately.

Para más información, consulte Opciones de la línea de comandos del programa de instalación de Windows.For more information, see Windows Setup Command-Line Options.

Windows AutoPilot: problemas conocidosWindows Autopilot - known issues
Diagnóstico de errores de MDM en Windows 10Diagnose MDM failures in Windows 10