Provisioning per la gestione dei dispositivi

Gli amministratori IT possono distribuire i dispositivi agli utenti aziendali utilizzando servizi cloud, codice QR o provisioning Near Field Communication (NFC). Per iniziare, scarica l' APK NfcProvisioning e l' APK Android-DeviceOwner . Per un elenco completo dei requisiti, vedere Implementazione della gestione dei dispositivi .

Aggiornamenti di Android 12

  • ACTION_PROVISION_MANAGED_DEVICE è deprecato.

  • ACTION_PROVISION_MANAGED_PROFILE è supportato solo per il provisioning del profilo di lavoro DPC-first, in cui gli utenti finali possono eseguire il provisioning di un profilo di lavoro dopo aver scaricato il DPC.

  • Gli sviluppatori DPC che desiderano supportare il codice QR o altri metodi di provisioning devono implementare i gestori per le azioni di intent DevicePolicyManager#ACTION_GET_PROVISIONING_MODE e DevicePolicyManager#ACTION_ADMIN_POLICY_COMPLIANCE . Se il DPC non implementa questi gestori, il provisioning avrà esito negativo.

  • Il gestore DPC ACTION_GET_PROVISIONING_MODE include un nuovo extra EXTRA_PROVISIONING_ALLOWED_PROVISIONING_MODES . Il DPC deve impostare EXTRA_PROVISIONING_MODE extra sull'intento risultante con un valore che appartiene a tale elenco. Se il DPC restituisce un valore che non è presente nell'elenco, il provisioning avrà esito negativo.

  • Per aumentare ulteriormente la stabilità, la manutenibilità e la semplicità dei flussi che si verificano durante la configurazione guidata, la configurazione DPC non può essere avviata dopo la fine della configurazione guidata. I DPC che utilizzano la categoria android.intent.category.PROVISIONING_FINALIZATION con l'azione di intent ADMIN_POLICY_COMPLIANCE per richiedere esplicitamente la configurazione prima della fine della procedura guidata di configurazione possono rimuovere tale categoria poiché ora viene eseguita per impostazione predefinita.

Provisioning gestito

Il provisioning gestito è un flusso dell'interfaccia utente framework che garantisce che gli utenti siano adeguatamente informati sulle implicazioni dell'impostazione di un proprietario del dispositivo o di un profilo gestito. I dispositivi che abilitano la crittografia predefinita offrono un flusso di provisioning della gestione dei dispositivi notevolmente più semplice e veloce.

Durante il provisioning gestito, il componente di provisioning gestito esegue le seguenti attività:

  • Crittografa il dispositivo.
  • Crea il profilo gestito.
  • Disabilita le app non richieste.
  • Imposta l'app di gestione della mobilità aziendale (EMM) come proprietario del profilo o del dispositivo.

A sua volta, l'app Enterprise Mobility Management (EMM) esegue le seguenti attività:

  • Aggiunge account utente.
  • Impone la conformità del dispositivo.
  • Abilita eventuali app di sistema aggiuntive.

Durante il provisioning gestito, il framework copia l'app EMM nel profilo gestito. Una volta completato il provisioning, il gestore intent ADMIN_POLICY_COMPLIANCE dell'app EMM viene chiamato nell'utente del profilo di lavoro (per il provisioning del profilo di lavoro) o nell'utente del proprietario del dispositivo (per il provisioning del proprietario del dispositivo). L'EMM aggiunge quindi gli account e applica le policy, dopodiché chiama setProfileEnabled() per rendere visibili le icone di avvio.

Provisioning del proprietario del profilo

Il provisioning del proprietario del profilo consente all'utente di avere sia un profilo di lavoro (profilo gestito) che un profilo personale su un dispositivo. Per abilitare il provisioning del proprietario del profilo, devi inviare un intento con gli extra appropriati. Ad esempio, installa l'app TestDPC ( scarica da Google Play o crea da GitHub ) sul dispositivo, avvia l'app dal launcher, quindi segui le istruzioni dell'app. Il provisioning è completo quando le icone con badge vengono visualizzate nel drawer del launcher.

L'app EMM DPC attiva la creazione del profilo gestito inviando un intento con l'azione DevicePolicyManager.ACTION_PROVISION_MANAGED_PROFILE . Il comando seguente è un intento di esempio che attiva la creazione del profilo gestito e imposta DeviceAdminSample come proprietario del profilo:

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"

Provisioning del proprietario del dispositivo con NFC

È possibile utilizzare NFC o servizi cloud per configurare il provisioning del proprietario del dispositivo (DO) durante il processo di configurazione predefinita per un dispositivo.

Quando si utilizza NFC, si effettua il provisioning dei dispositivi in ​​modalità DO utilizzando NFC bump durante la fase iniziale di configurazione del dispositivo. Questo metodo richiede più bootstrap, ma è poco impegnativo e gestisce la configurazione del Wi-Fi, l'installazione del DPC e l'impostazione del DPC come proprietario del dispositivo.

Un tipico pacchetto NFC include quanto segue:

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

I dispositivi devono avere NFC configurato per accettare il tipo MIME di provisioning gestito dall'esperienza di configurazione. Per configurare, assicurati che /packages/apps/Nfc/res/values/provisioning.xml contenga le seguenti righe:

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

Provisioning tramite servizi cloud

Puoi effettuare il provisioning dei dispositivi con un proprietario del dispositivo o un proprietario del profilo (profilo di lavoro) utilizzando i servizi cloud. Il dispositivo raccoglie e utilizza credenziali (o token) per eseguire una ricerca su un servizio cloud, che può quindi essere utilizzato per avviare il processo di provisioning.

Vantaggi della gestione della mobilità aziendale

Un'app di gestione della mobilità aziendale (EMM) può essere d'aiuto svolgendo le seguenti attività:

  • Provisioning del profilo gestito.
  • Applicazione delle politiche di sicurezza.
    • Imposta la complessità della password.
    • Blocchi: disabilita screenshot, condivisione dal profilo gestito, ecc.
  • Configurazione della connettività aziendale.
    • Utilizza WifiEnterpriseConfig per configurare il Wi-Fi aziendale.
    • Configura la VPN sul dispositivo.
    • Utilizza DPM.setApplicationRestrictions() per configurare la VPN aziendale.
  • Abilitazione del Single Sign-On (SSO) dell'app aziendale.
    • Installa le app aziendali desiderate.
    • Utilizza DPM.installKeyPair() per installare in modalità invisibile i certificati client aziendali.
    • Utilizza DPM.setApplicationRestrictions() per configurare i nomi host e gli alias dei certificati delle app aziendali.

Il provisioning gestito è solo una parte del flusso di lavoro end-to-end EMM, con l'obiettivo finale di rendere i dati aziendali accessibili alle app nel profilo gestito o nel dispositivo gestito. Per indicazioni sul test, consulta Configurazione del test del dispositivo .

,

Gli amministratori IT possono distribuire i dispositivi agli utenti aziendali utilizzando servizi cloud, codice QR o provisioning Near Field Communication (NFC). Per iniziare, scarica l' APK NfcProvisioning e l' APK Android-DeviceOwner . Per un elenco completo dei requisiti, vedere Implementazione della gestione dei dispositivi .

Aggiornamenti di Android 12

  • ACTION_PROVISION_MANAGED_DEVICE è deprecato.

  • ACTION_PROVISION_MANAGED_PROFILE è supportato solo per il provisioning del profilo di lavoro DPC-first, in cui gli utenti finali possono eseguire il provisioning di un profilo di lavoro dopo aver scaricato il DPC.

  • Gli sviluppatori DPC che desiderano supportare il codice QR o altri metodi di provisioning devono implementare i gestori per le azioni di intent DevicePolicyManager#ACTION_GET_PROVISIONING_MODE e DevicePolicyManager#ACTION_ADMIN_POLICY_COMPLIANCE . Se il DPC non implementa questi gestori, il provisioning avrà esito negativo.

  • Il gestore DPC ACTION_GET_PROVISIONING_MODE include un nuovo extra EXTRA_PROVISIONING_ALLOWED_PROVISIONING_MODES . Il DPC deve impostare EXTRA_PROVISIONING_MODE extra sull'intento risultante con un valore che appartiene a tale elenco. Se il DPC restituisce un valore che non è presente nell'elenco, il provisioning avrà esito negativo.

  • Per aumentare ulteriormente la stabilità, la manutenibilità e la semplicità dei flussi che si verificano durante la configurazione guidata, la configurazione DPC non può essere avviata dopo la fine della configurazione guidata. I DPC che utilizzano la categoria android.intent.category.PROVISIONING_FINALIZATION con l'azione di intent ADMIN_POLICY_COMPLIANCE per richiedere esplicitamente la configurazione prima della fine della procedura guidata di configurazione possono rimuovere tale categoria poiché ora viene eseguita per impostazione predefinita.

Provisioning gestito

Il provisioning gestito è un flusso dell'interfaccia utente framework che garantisce che gli utenti siano adeguatamente informati sulle implicazioni dell'impostazione di un proprietario del dispositivo o di un profilo gestito. I dispositivi che abilitano la crittografia predefinita offrono un flusso di provisioning della gestione dei dispositivi notevolmente più semplice e veloce.

Durante il provisioning gestito, il componente di provisioning gestito esegue le seguenti attività:

  • Crittografa il dispositivo.
  • Crea il profilo gestito.
  • Disabilita le app non richieste.
  • Imposta l'app di gestione della mobilità aziendale (EMM) come proprietario del profilo o del dispositivo.

A sua volta, l'app Enterprise Mobility Management (EMM) esegue le seguenti attività:

  • Aggiunge account utente.
  • Impone la conformità del dispositivo.
  • Abilita eventuali app di sistema aggiuntive.

Durante il provisioning gestito, il framework copia l'app EMM nel profilo gestito. Una volta completato il provisioning, il gestore intent ADMIN_POLICY_COMPLIANCE dell'app EMM viene chiamato nell'utente del profilo di lavoro (per il provisioning del profilo di lavoro) o nell'utente del proprietario del dispositivo (per il provisioning del proprietario del dispositivo). L'EMM aggiunge quindi gli account e applica le policy, dopodiché chiama setProfileEnabled() per rendere visibili le icone di avvio.

Provisioning del proprietario del profilo

Il provisioning del proprietario del profilo consente all'utente di avere sia un profilo di lavoro (profilo gestito) che un profilo personale su un dispositivo. Per abilitare il provisioning del proprietario del profilo, devi inviare un intento con gli extra appropriati. Ad esempio, installa l'app TestDPC ( scarica da Google Play o crea da GitHub ) sul dispositivo, avvia l'app dal launcher, quindi segui le istruzioni dell'app. Il provisioning è completo quando le icone con badge vengono visualizzate nel drawer del launcher.

L'app EMM DPC attiva la creazione del profilo gestito inviando un intento con l'azione DevicePolicyManager.ACTION_PROVISION_MANAGED_PROFILE . Il comando seguente è un intento di esempio che attiva la creazione del profilo gestito e imposta DeviceAdminSample come proprietario del profilo:

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"

Provisioning del proprietario del dispositivo con NFC

È possibile utilizzare NFC o servizi cloud per configurare il provisioning del proprietario del dispositivo (DO) durante il processo di configurazione predefinita per un dispositivo.

Quando si utilizza NFC, si effettua il provisioning dei dispositivi in ​​modalità DO utilizzando NFC bump durante la fase iniziale di configurazione del dispositivo. Questo metodo richiede più bootstrap, ma è poco impegnativo e gestisce la configurazione del Wi-Fi, l'installazione del DPC e l'impostazione del DPC come proprietario del dispositivo.

Un tipico pacchetto NFC include quanto segue:

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

I dispositivi devono avere NFC configurato per accettare il tipo MIME di provisioning gestito dall'esperienza di configurazione. Per configurare, assicurati che /packages/apps/Nfc/res/values/provisioning.xml contenga le seguenti righe:

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

Provisioning tramite servizi cloud

Puoi effettuare il provisioning dei dispositivi con un proprietario del dispositivo o un proprietario del profilo (profilo di lavoro) utilizzando i servizi cloud. Il dispositivo raccoglie e utilizza credenziali (o token) per eseguire una ricerca su un servizio cloud, che può quindi essere utilizzato per avviare il processo di provisioning.

Vantaggi della gestione della mobilità aziendale

Un'app di gestione della mobilità aziendale (EMM) può essere d'aiuto svolgendo le seguenti attività:

  • Provisioning del profilo gestito.
  • Applicazione delle politiche di sicurezza.
    • Imposta la complessità della password.
    • Blocchi: disabilita screenshot, condivisione dal profilo gestito, ecc.
  • Configurazione della connettività aziendale.
    • Utilizza WifiEnterpriseConfig per configurare il Wi-Fi aziendale.
    • Configura la VPN sul dispositivo.
    • Utilizza DPM.setApplicationRestrictions() per configurare la VPN aziendale.
  • Abilitazione del Single Sign-On (SSO) dell'app aziendale.
    • Installa le app aziendali desiderate.
    • Utilizza DPM.installKeyPair() per installare in modalità invisibile i certificati client aziendali.
    • Utilizza DPM.setApplicationRestrictions() per configurare i nomi host e gli alias dei certificati delle app aziendali.

Il provisioning gestito è solo una parte del flusso di lavoro end-to-end EMM, con l'obiettivo finale di rendere i dati aziendali accessibili alle app nel profilo gestito o nel dispositivo gestito. Per indicazioni sul test, consulta Configurazione del test del dispositivo .