Aprovisionamiento para la administración de dispositivos

Los administradores de TI pueden implementar dispositivos para usuarios corporativos con servicios en la nube, códigos QR o aprovisionamiento de comunicación de campo cercano (NFC). Para comenzar, descarga el APK de NfcProvisioning y el APK de Android-DeviceOwner. Para obtener una lista completa de requisitos, consulta Cómo implementar la administración de dispositivos.

Actualizaciones de Android 12

  • ACTION_PROVISION_MANAGED_DEVICE ya no está disponible.

  • ACTION_PROVISION_MANAGED_PROFILE solo es compatible con el aprovisionamiento de perfiles de trabajo centrado en el DPC, en el que los usuarios finales pueden aprovisionar un perfil de trabajo después de descargar el DPC.

  • Los desarrolladores de DPC que deseen admitir códigos QR o algún otro método de aprovisionamiento deben implementar controladores para las acciones de intent DevicePolicyManager#ACTION_GET_PROVISIONING_MODE y DevicePolicyManager#ACTION_ADMIN_POLICY_COMPLIANCE. Si el DPC no implementa estos controladores, el aprovisionamiento falla.

  • El controlador ACTION_GET_PROVISIONING_MODE de DPC incluye una nueva EXTRA_PROVISIONING_ALLOWED_PROVISIONING_MODES adicional. El DPC debe establecer el elemento EXTRA_PROVISIONING_MODE adicional en su intent resultante con un valor que pertenezca a esa lista. Si el DPC muestra un valor que no está en esa lista, el aprovisionamiento falla.

  • Para aumentar aún más la estabilidad, la capacidad de mantenimiento y la simplicidad de los flujos que se producen durante el asistente de configuración, no se puede iniciar la configuración del DPC después de que finaliza el asistente de configuración. Los DPC que usan la categoría android.intent.category.PROVISIONING_FINALIZATION con la acción de intent ADMIN_POLICY_COMPLIANCE para solicitar explícitamente su configuración antes de que finalice el asistente de configuración pueden quitar esa categoría, ya que ahora se hace de forma predeterminada.

Aprovisionamiento administrado

El aprovisionamiento administrado es un flujo de IU del framework que garantiza que los usuarios estén informados de manera adecuada sobre las implicaciones de configurar un propietario del dispositivo o un perfil administrado. Los dispositivos que habilitan la encriptación predeterminada ofrecen un flujo de aprovisionamiento de administración de dispositivos mucho más simple y rápido.

Durante el aprovisionamiento administrado, el componente de aprovisionamiento administrado realiza las siguientes actividades:

  • Encripta el dispositivo.
  • Crea el perfil administrado.
  • Inhabilita las apps que no son obligatorias.
  • Establece la app de administración de movilidad empresarial (EMM) como propietario del perfil o del dispositivo.

A su vez, la app de administración de movilidad empresarial (EMM) realiza las siguientes actividades:

  • Agrega cuentas de usuario.
  • Aplica el cumplimiento de los dispositivos.
  • Habilita cualquier app del sistema adicional.

Durante el aprovisionamiento administrado, el framework copia la app de EMM en el perfil administrado. Una vez que se completa el aprovisionamiento, se llama al controlador de intents ADMIN_POLICY_COMPLIANCE de la app de EMM en el usuario del perfil de trabajo (para el aprovisionamiento de perfiles de trabajo) o en el usuario del propietario del dispositivo (para el aprovisionamiento del propietario del dispositivo). Luego, el EMM agrega cuentas y aplica políticas, después de lo cual llama a setProfileEnabled() para hacer visibles los íconos de selector.

Aprovisionamiento del propietario del perfil

El aprovisionamiento del propietario del perfil permite que el usuario tenga un perfil de trabajo (perfil administrado) y un perfil personal en un dispositivo. Para habilitar el aprovisionamiento del propietario del perfil, debes enviar un intent con los extras adecuados. Por ejemplo, instala la app de TestDPC (descárgala de Google Play o compila desde GitHub) en el dispositivo, iníciala desde el selector y, luego, sigue las instrucciones de la app. El aprovisionamiento se completa cuando aparecen íconos con insignias en el panel lateral del selector.

La app de DPC de EMM activa la creación del perfil administrado enviando un intent con la acción DevicePolicyManager.ACTION_PROVISION_MANAGED_PROFILE. El siguiente comando es un intent de muestra que activa la creación del perfil administrado y establece DeviceAdminSample como el propietario del perfil:

adb shell am start \
  -a android.app.action.PROVISION_MANAGED_PROFILE \
  -c android.intent.category.DEFAULT \
  -e wifiSsid $(printf '%q' \"WifiSSID\") \
  -e deviceAdminPackage "com.google.android.deviceadminsample" \
  -e android.app.extra.deviceAdminPackageName $(printf '%q'.DeviceAdminSample\$DeviceAdminSampleReceiver) \
  -e android.app.extra.DEFAULT_MANAGED_PROFILE_NAME "My Organisation"

Aprovisionamiento del propietario del dispositivo con NFC

Puedes usar NFC o los servicios en la nube para configurar el aprovisionamiento del propietario del dispositivo (DO) durante el proceso de configuración listo para usar de un dispositivo.

Cuando usas NFC, aprovisionas dispositivos en modo DO con NFC Bump durante el paso inicial de configuración del dispositivo. Este método requiere más inicio automático, pero es de bajo contacto y controla la configuración de Wi-Fi, la instalación del DPC y la configuración del DPC como propietario del dispositivo.

Un paquete de NFC típico incluye lo siguiente:

EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_NAME
EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_LOCATION
EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_CHECKSUM
EXTRA_PROVISIONING_WIFI_SSID
EXTRA_PROVISIONING_WIFI_SECURITY_TYPE

Los dispositivos deben tener configurado el NFC para aceptar el tipo de MIME de aprovisionamiento administrado desde la experiencia de configuración. Para configurar, asegúrate de que /packages/apps/Nfc/res/values/provisioning.xml contenga las siguientes líneas:

<bool name="enable\_nfc\_provisioning">true</bool>
<item>application/com.android.managedprovisioning</item>

Aprovisionamiento con servicios en la nube

Puedes aprovisionar dispositivos con un propietario del dispositivo o un propietario del perfil (perfil de trabajo) mediante servicios en la nube. El dispositivo recopila y usa credenciales (o tokens) para realizar una búsqueda en un servicio en la nube, que luego se puede usar para iniciar el proceso de aprovisionamiento.

Beneficios de la administración de movilidad empresarial

Una app de administración de movilidad empresarial (EMM) puede ayudarte a realizar las siguientes tareas:

  • Aprovisionando el perfil administrado
  • Aplicar políticas de seguridad
    • Establece la complejidad de la contraseña.
    • Bloqueos, como inhabilitar capturas de pantalla, que se comparten desde el perfil administrado
  • Configura la conectividad empresarial.
    • Usa WifiEnterpriseConfig para configurar la red Wi-Fi corporativa.
    • Configura la VPN en el dispositivo.
    • Usa DPM.setApplicationRestrictions() para configurar la VPN corporativa.
  • Habilita el inicio de sesión único (SSO) de la app empresarial.
    • Instala las apps corporativas seleccionadas.
    • Usa DPM.installKeyPair() para instalar certificados de cliente corporativos de forma silenciosa.
    • Usa DPM.setApplicationRestrictions() para configurar nombres de host y alias de certificados de apps corporativas.

El aprovisionamiento administrado es solo una parte del flujo de trabajo de extremo a extremo de la EMM, cuyo objetivo final es permitir que las apps del perfil administrado o del dispositivo administrado accedan a los datos corporativos. Para obtener orientación sobre las pruebas, consulta Cómo configurar las pruebas de dispositivos.