Inscribe y aprovisiona un dispositivo

El aprovisionamiento es el proceso de configurar un dispositivo para que lo administre mediante policies una enterprise. Durante el proceso, un dispositivo instala Android Device Policy, que se usa para recibir y aplicar policies. Si el aprovisionamiento se realiza correctamente, la API crea un devices objeto que vincula el dispositivo a una empresa.

La API de Android Management usa tokens de inscripción para activar el proceso de aprovisionamiento. El token de inscripción y el método de aprovisionamiento que uses establecen la propiedad del dispositivo (personal o empresarial) y el modo de administración (perfil de trabajo o dispositivo administrado).

Un sistema de cuotas controla cuántos dispositivos puede administrar cada proyecto. Debes solicitar la cuota inicial de dispositivos antes de poder aprovisionar tu primer dispositivo.

Dispositivos personales

Android 5.1 o versiones posteriores

Los dispositivos que son propiedad de los empleados se pueden configurar con un perfil de trabajo. Un perfil de trabajo proporciona un espacio independiente para las apps y los datos laborales, separados de las apps y los datos personales. La mayoría de las policies de administración de apps, datos y otros elementos solo se aplican al perfil de trabajo, mientras que las apps y los datos personales del empleado permanecen privados.

Para configurar un perfil de trabajo en un dispositivo personal, crea un token de inscripción (asegúrate de que allowPersonalUsage esté configurado como PERSONAL_USAGE_ALLOWED) y usa uno de los siguientes métodos de aprovisionamiento:

Dispositivos empresariales para uso personal y laboral

Android 8 o versiones posteriores

Configurar un dispositivo empresarial con un perfil de trabajo permite que el dispositivo se use para fines personales y laborales. En los dispositivos empresariales con perfiles de trabajo, sucede lo siguiente:

Para configurar un dispositivo empresarial con un perfil de trabajo, crea un token de inscripción (asegúrate de que allowPersonalUsage esté configurado como PERSONAL_USAGE_ALLOWED) y usa uno de los siguientes métodos de aprovisionamiento:

Dispositivos empresariales solo para uso laboral

Android 5.1 o versiones posteriores

La administración completa de dispositivos es adecuada para dispositivos empresariales cuyo uso sea únicamente para trabajo. Las empresas pueden administrar todas las apps del dispositivo y aplicar todo el espectro de políticas y comandos de la API de Android Management.

También es posible bloquear un dispositivo (a través de una política) en una sola app o en un pequeño conjunto de apps para que cumpla un propósito o caso de uso específico. Este subconjunto de dispositivos completamente administrados se conoce como dispositivos dedicados. Los tokens de inscripción para estos dispositivos deben tener allowPersonalUsage configurado como PERSONAL_USAGE_DISALLOWED_USERLESS.

Para configurar la administración completa en un dispositivo empresarial, crea un token de inscripción, asegúrate de que allowPersonalUsage esté configurado como PERSONAL_USAGE_DISALLOWED o PERSONAL_USAGE_DISALLOWED_USERLESS, y usa uno de los siguientes métodos de aprovisionamiento.

Las políticas pueden afectar la generación de la IU durante la provisión de dispositivo. Estas políticas son las siguientes:

Si quieres que los pasos de la contraseña se muestren junto con la instalación de las apps de trabajo y las tarjetas de registro del dispositivo durante la provisión de dispositivo, te recomendamos que actualices tus políticas para retrasar el inicio de la generación de la IU manteniendo el dispositivo en un estado de cuarentena, lo que ocurre si se inscribe sin una política asociada, hasta que se especifique la política final seleccionada para la configuración del dispositivo con elementos relevantes para tus necesidades de configuración. Una vez que se complete el aprovisionamiento del dispositivo, puedes cambiar la política según sea necesario.


Crea un token de inscripción

Descripción general de Android Management
Figura 1. Crea un token que inscriba y aplique "policy1" a los dispositivos. Después de 1,800 segundos (30 minutos), el token vence.

Necesitas un token de inscripción para cada dispositivo que quieras inscribir (puedes usar el mismo token para varios dispositivos). Para solicitar un token de inscripción, llama a enterprises.enrollmentTokens.create. Los tokens de inscripción vencen después de una hora de forma predeterminada, pero puedes especificar un tiempo de vencimiento personalizado (duration) de hasta aproximadamente 10,000 años.

Una solicitud exitosa muestra un objeto enrollmentToken que contiene un enrollmentTokenId y un qrcode que los administradores de TI y los usuarios finales pueden usar para aprovisionar dispositivos.

Especifica una política

Es posible que también quieras especificar un policyName en la solicitud para aplicar una política al mismo tiempo que se inscribe un dispositivo. Si no especificas un policyName, consulta Inscribe un dispositivo sin una política.

Especifica el uso personal

allowPersonalUsage determina si se puede agregar un perfil de trabajo al dispositivo durante el aprovisionamiento. Configura PERSONAL_USAGE_ALLOWED para permitir que un usuario cree un perfil de trabajo (obligatorio para dispositivos personales y opcional para dispositivos empresariales).


Acerca de los códigos QR

Los códigos QR funcionan como un método eficiente de provisión de dispositivos para las empresas que mantienen muchas políticas diferentes. El código QR que se muestra en enterprises.enrollmentTokens.create se compone de una carga útil de pares clave-valor que contiene un token de inscripción y toda la información necesaria para que Android Device Policy aprovisione un dispositivo.

Ejemplo de paquete de código QR

El paquete incluye la ubicación de descarga de Android Device Policy y un token de inscripción.

{
    "android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME": "com.google.android.apps.work.clouddpc/.receivers.CloudDeviceAdminReceiver",
    "android.app.extra.PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM": "I5YvS0O5hXY46mb01BlRjq4oJJGs2kuUcHvVkAPEXlg",
    "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION": "https://play.google.com/managed/downloadManagingApp?identifier=setup",
    "android.app.extra.PROVISIONING_ADMIN_EXTRAS_BUNDLE":{
        "com.google.android.apps.work.clouddpc.EXTRA_ENROLLMENT_TOKEN": "{enrollment-token}"
    }
}

Puedes usar el código QR que se muestra en enterprises.enrollmentTokens.create directamente o personalizarlo. Para obtener una lista completa de las propiedades que puedes incluir en un paquete de código QR, consulta Crea un código QR.

Para convertir la cadena qrcode en un código QR escaneable, usa un generador de códigos QR como ZXing.


Métodos de aprovisionamiento

En esta sección, se describen diferentes métodos para aprovisionar un dispositivo.

Agregar un perfil de trabajo desde "Configuración"

Android 5.1 o versiones posteriores

Para configurar un perfil de trabajo en su dispositivo, un usuario puede hacer lo siguiente:

  1. Ir a Configuración > Google > Configurar y restablecer.
  2. Presionar Configurar tu perfil de trabajo.

Estos pasos inician un asistente de configuración que descarga Android Device Policy en el dispositivo. A continuación, se le solicitará al usuario que escanee un código QR o que ingrese manualmente un token de inscripción para completar la configuración del perfil de trabajo.

Descargar Android Device Policy

Android 5.1 o versiones posteriores

Para configurar un perfil de trabajo en su dispositivo, un usuario puede descargar Android Device Policy desde Google Play Store. Una vez que se instale la app, se le solicitará al usuario que escanee un código QR o que ingrese manualmente un token de inscripción para completar la configuración del perfil de trabajo.

Android 5.1 o versiones posteriores

Con el token de inscripción que se muestra en enrollmentTokens.create o el signinEnrollmentToken de la empresa, genera una URL con el siguiente formato:

https://enterprise.google.com/android/enroll?et=<enrollmentToken>

Puedes proporcionar esta URL a los administradores de TI, quienes pueden proporcionársela a sus usuarios finales. Cuando un usuario final abra el vínculo desde su dispositivo, se lo guiará por la configuración del perfil de trabajo.

URL de acceso

Con este método, los usuarios se dirigen a una página para ingresar cualquier información adicional necesaria para completar el aprovisionamiento. Según la información que ingrese el usuario, puedes calcular la política adecuada para el usuario antes de continuar con el aprovisionamiento del dispositivo. Por ejemplo:

  1. Especifica tu URL de acceso en enterprises.signInDetails[]. Configura allowPersonalUsage como PERSONAL_USAGE_ALLOWED si quieres permitir que un usuario cree un perfil de trabajo (obligatorio para dispositivos personales y opcional para dispositivos empresariales).

    Agrega el signinEnrollmentToken resultante como aprovisionamiento adicional a un código QR, una carga útil de NFC o una configuración de inscripción automática. Como alternativa, puedes proporcionar el signinEnrollmentToken directamente a los usuarios.

  2. Elige una opción:

    1. Dispositivos empresariales: Después de encender un dispositivo nuevo o restablecido a la configuración de fábrica, pasa el signinEnrollmentToken al dispositivo (a través de un código QR, una transmisión de NFC, etc.) o pide a los usuarios que ingresen el token de forma manual. El dispositivo abrirá la URL de acceso especificada en el paso 1.
    2. Dispositivos personales: Pide a los usuarios que agreguen un perfil de trabajo desde "Configuración". Cuando se le solicite, el usuario escaneará un código QR que contenga el signinEnrollmentToken o ingresará el token de forma manual. El dispositivo abrirá la URL de acceso especificada en el paso 1.
    3. Dispositivos personales: Proporciona a los usuarios un vínculo de token de inscripción, en el que el token de inscripción es el signinEnrollmentToken. El dispositivo abrirá la URL de acceso especificada en el paso 1.
  3. Verifica si Google ya autenticó al usuario. Obtén la información de aprovisionamiento del dispositivo (durante la inscripción del dispositivo) con el parámetro GET provisioningInfo y busca un valor para el campo authenticatedUserEmail. Si hay un valor en este campo, Google ya autenticó correctamente al usuario y puedes usar esta identidad sin más autenticación.

  4. Si Google aún no autenticó al usuario, tu URL de acceso debería solicitar a los usuarios que ingresen sus credenciales. Según su identidad, puedes determinar la política adecuada y obtener la información de provisión de dispositivo (durante la inscripción del dispositivo) con el parámetro GET provisioningInfo.

  5. Llama a enrollmentTokens.create y especifica el policyId adecuado según las credenciales del usuario.

  6. Muestra el token de inscripción generado en el paso 5 con el redireccionamiento de URL, en el formato https://enterprise.google.com/android/enroll?et=<token>.

Método de código QR

Android 7.0 o versiones posteriores

Para aprovisionar un dispositivo empresarial, puedes generar un código QR y mostrarlo en tu consola de EMM:

  1. En un dispositivo nuevo o restablecido a la configuración de fábrica, el usuario (por lo general, un administrador de TI) presiona la pantalla seis veces en el mismo lugar. Esto hace que el dispositivo le solicite al usuario que escanee un código QR.
  2. El usuario escanea el código QR que muestras en tu consola de administración (o aplicación similar) para inscribir y aprovisionar el dispositivo.

Método de NFC

Android 6.0 o versiones posteriores

Este método requiere que crees una app de programador de NFC que contenga el token de inscripción, las políticas iniciales y la configuración de Wi-Fi, los parámetros de configuración y todos los demás detalles de aprovisionamiento que requiere tu cliente para aprovisionar un dispositivo completamente administrado o de uso específico. Cuando tú o tu cliente instalan la app de programador de NFC en un dispositivo que ejecute Android, ese dispositivo se convierte en el dispositivo programador.

En la documentación para desarrolladores de la API de Play EMM, se incluye una guía detallada sobre cómo admitir el método de NFC. El sitio también incluye código de muestra de los parámetros predeterminados que se envían a un dispositivo en una transmisión de NFC. Para instalar Android Device Policy, configura la ubicación de descarga del paquete de administrador de dispositivos como:

https://play.google.com/managed/downloadManagingApp?identifier=setup

Método de identificador de DPC

Si no se puede agregar Android Device Policy con un código QR o NFC, un usuario o administrador de TI puede seguir estos pasos para aprovisionar un dispositivo empresarial:

  1. Sigue el asistente de configuración en un dispositivo nuevo o restablecido a la configuración de fábrica.
  2. Ingresa los detalles de acceso a Wi-Fi para conectar el dispositivo a Internet.
  3. Cuando se te solicite acceder, ingresa afw#setup, que descarga Android Device Policy.
  4. Escanea un código QR o ingresa manualmente un token de inscripción para aprovisionar el dispositivo.

Inscripción sin contacto

Android 8.0 o versiones posteriores (Pixel 7.1 o versiones posteriores)

Los dispositivos comprados a un revendedor autorizado de inscripción sin contacto son aptos para la inscripción sin contacto, un método optimizado para configurar previamente los dispositivos para que se aprovisionen automáticamente en el primer inicio.

Las organizaciones pueden crear configuraciones que contengan detalles de aprovisionamiento para sus dispositivos de inscripción sin contacto, ya sea a través del portal de inscripción sin contacto o con tu consola de EMM (consulta la API de cliente para la inscripción sin contacto). En el primer inicio, un dispositivo de inscripción automática verifica si se le asignó una configuración. Si es así, el dispositivo descarga Android Device Policy, que luego completa la configuración del dispositivo con los extras de aprovisionamiento especificados en su configuración asignada.

Si tus clientes usan el portal de inscripción sin contacto, deben seleccionar Android Device Policy como el DPC de EMM para cada configuración que creen. En el Centro de ayuda de Android Enterprise, se incluyen instrucciones detalladas para usar el portal, incluida la forma de crear y asignar configuraciones a los dispositivos.

Si prefieres que tus clientes configuren y asignen configuraciones directamente desde tu consola de EMM, debes realizar la integración con la API de cliente para la inscripción automática. Cuando creas una configuración, especificas extras de aprovisionamiento en el dpcExtras campo. El siguiente fragmento de JSON muestra un ejemplo básico de lo que se debe incluir en dpcExtras, con un token de acceso agregado.

{
   "android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME":"com.google.android.apps.work.clouddpc/.receivers.CloudDeviceAdminReceiver",
   "android.app.extra.PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM":"I5YvS0O5hXY46mb01BlRjq4oJJGs2kuUcHvVkAPEXlg",
   "android.app.extra.PROVISIONING_ADMIN_EXTRAS_BUNDLE":{
      "com.google.android.apps.work.clouddpc.EXTRA_ENROLLMENT_TOKEN":"{Sign In URL token}"
   }
}

Inicia una app durante la configuración

setupaction
Figura 2. Usa setupActions para iniciar una app durante la configuración.

En policies, puedes especificar una app para que Android Device Policy la inicie durante la configuración del dispositivo o del perfil de trabajo. Por ejemplo, puedes iniciar una app de VPN para que los usuarios puedan configurar los parámetros de configuración de VPN como parte del proceso de configuración. La app debe mostrar RESULT_OK para indicar que se completó y permitir que Android Device Policy complete el aprovisionamiento del dispositivo o del perfil de trabajo. Para iniciar una app durante la configuración, haz lo siguiente:

Asegúrate de que el installType de la app sea REQUIRED_FOR_SETUP. Si no se puede instalar o iniciar la app en el dispositivo, fallará el aprovisionamiento.

{
   "applications":[
      {
         "packageName":"com.my.vpnapp.",
         "installType":"REQUIRED_FOR_SETUP"
      }
   ]
}

Agrega el nombre del paquete de la app a setupActions. Usa title y description para especificar instrucciones para el usuario.

{
   "setupActions":[
      {
         "title":{
            "defaultMessage":"Configure VPN"
         },
         "description":{
            "defaultMessage":"Enable your VPN client to access corporate resources."
         },
         "launchApp":{
            "packageName":"com.my.vpnapp."
         }
      }
   ]
}

Para distinguir que una app se inicia desde launchApp, la actividad que se inicia primero como parte de la app contiene el extra de intent booleano com.google.android.apps.work.clouddpc.EXTRA_LAUNCHED_AS_SETUP_ACTION (configurado como true). Este extra te permite personalizar tu app según si se inicia desde setupActions o por un usuario.

Después de que la app muestre RESULT_OK, Android Device Policy completa los pasos restantes necesarios para aprovisionar el dispositivo o el perfil de trabajo.

Cancela la inscripción durante la configuración

La app que se inicia como SetupAction puede cancelar la inscripción y mostrar RESULT_FIRST_USER.

Si se cancela la inscripción, se restablece un dispositivo empresarial o se borra el perfil de trabajo en un dispositivo personal.

Nota: Si se cancela la inscripción, se activa la acción sin un diálogo de confirmación del usuario. Es responsabilidad de la app mostrar un diálogo de error adecuado al usuario antes de devolver RESULT_FIRST_USER.

Aplica una política a los dispositivos recién inscritos

El método que uses para aplicar políticas a los dispositivos recién inscritos depende de ti y de los requisitos de tus clientes. Estos son los diferentes enfoques que puedes usar:

  • (Recomendado) Cuando creas un token de inscripción, puedes especificar el nombre de la política (policyName) que se vinculará inicialmente al dispositivo. Cuando inscribes un dispositivo con el token, la política se aplica automáticamente al dispositivo.

  • Establece una política como la política predeterminada para una empresa. Si no se especifica ningún nombre de política en el token de inscripción y hay una política con el nombre enterprises/<enterprise_id>/policies/default, cada dispositivo nuevo se vincula automáticamente a la política predeterminada en el momento de la inscripción.

  • Suscríbete a un tema de Cloud Pub/Sub para recibir notificaciones sobre los dispositivos recién inscritos. En respuesta a un ENROLLMENT notificación, llama a enterprises.devices.patch para vincular el dispositivo con una política.

Inscribe un dispositivo sin una política

Si se inscribe un dispositivo sin una política válida, se coloca en cuarentena. Los dispositivos en cuarentena están bloqueados de todas las funciones del dispositivo hasta que se vinculan a una política.

Si un dispositivo no está vinculado a una política en cinco minutos, falla la inscripción del dispositivo y se restablece la configuración de fábrica. El estado de cuarentena del dispositivo te brinda la oportunidad de implementar verificaciones de licencias o cualquier otro proceso de validación de inscripción como parte de tu solución.

Ejemplo de flujo de trabajo de verificación de licencias

  1. Se inscribe un dispositivo sin una política predeterminada ni una política específica.
  2. Verifica cuántas licencias le quedan a la empresa.
  3. Si hay licencias disponibles, usa devices.patch para adjuntar una política al dispositivo y, luego, disminuye el recuento de licencias. Si no hay licencias disponibles, usa devices.patch para inhabilitar el dispositivo. Como alternativa, la API restablece la configuración de fábrica de cualquier dispositivo que no esté adjunto a una política dentro de los cinco minutos posteriores a la inscripción.