Eseguire il provisioning per la gestione dei dispositivi

Gli amministratori IT possono eseguire il deployment dei dispositivi per gli utenti aziendali utilizzando i servizi cloud, il codice QR o il provisioning NFC (Near Field Communication). Per iniziare, scarica l'APK NfcProvisioning e l'APK Android-DeviceOwner. Per un elenco completo dei requisiti, consulta 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 con DPC first, in cui gli utenti finali possono eseguire il provisioning di un profilo di lavoro dopo aver scaricato il DPC.

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

  • Il gestore DPC ACTION_GET_PROVISIONING_MODE include un nuovo nuovo extra EXTRA_PROVISIONING_ALLOWED_PROVISIONING_MODES. Il DPC deve impostare l'extra di EXTRA_PROVISIONING_MODE per l'intent risultante con un valore appartenente a quell'elenco. Se il DPC restituisce un valore non presente nell'elenco, il provisioning non va a buon fine.

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

Provisioning gestito

Il provisioning gestito è un flusso dell'interfaccia utente del framework che garantisce agli utenti di essere adeguatamente informati sulle implicazioni dell'impostazione di un proprietario del dispositivo o di un profilo gestito. I dispositivi che attivano la crittografia predefinita offrono un flusso di provisioning della gestione dei dispositivi molto più semplice e rapido.

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

  • Cripta il dispositivo.
  • Crea il profilo gestito.
  • Disattiva 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 di gestione della mobilità aziendale (EMM) esegue le seguenti attività:

  • Aggiunge account utente.
  • Garantisce la conformità dei dispositivi.
  • Attiva eventuali altre app di sistema.

Durante il provisioning gestito, il framework copia l'app EMM nel profilo gestito. Al termine del provisioning, l'ADMIN_POLICY_COMPLIANCE handleIntent dell'app EMM viene chiamato nell'utente del profilo di lavoro (per il provisioning del profilo di lavoro) o nell'utente proprietario del dispositivo (per il provisioning del proprietario del dispositivo). L'EMM aggiunge quindi gli account e applica le norme, dopodiché chiamasetProfileEnabled() per rendere visibili le icone del programma 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) sia un profilo personale su un dispositivo. Per attivare il provisioning del proprietario del profilo, devi inviare un'intent con gli extra appropriati. Ad esempio, installa l'app TestDPC (scaricala da Google Play o crea da GitHub) sul dispositivo, avviala dal programma di avvio e poi segui le istruzioni dell'app. Il provisioning è completato quando le icone con badge vengono visualizzate nel riquadro App.

L'app DPC EMM attiva la creazione del profilo gestito inviando un intento con l'azione DevicePolicyManager.ACTION_PROVISION_MANAGED_PROFILE. Il seguente comando è un'intenzione 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

Puoi utilizzare NFC o i servizi cloud per configurare il provisioning dei proprietari dei dispositivi (DO) durante il processo di configurazione iniziale di un dispositivo.

Quando utilizzi NFC, esegui il provisioning dei dispositivi in modalità DO utilizzando il contatto NFC durante il passaggio di configurazione iniziale del dispositivo. Questo metodo richiede più operazioni di bootstrap, ma è semplice e gestisce la configurazione del Wi-Fi, l'installazione del DPC e l'impostazione del DPC come proprietario del dispositivo.

Un tipico bundle 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

Nei dispositivi deve essere configurata la tecnologia NFC per accettare il tipo MIME del provisioning gestito dall'esperienza di configurazione. Per la configurazione, 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>

Eseguire il provisioning utilizzando i servizi cloud

Puoi eseguire 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 le credenziali (o i token) per eseguire una ricerca in un servizio cloud, che può essere poi utilizzato per avviare la procedura di provisioning.

Vantaggi della gestione della mobilità aziendale

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

  • Provisioning del profilo gestito.
  • Applicazione dei criteri di sicurezza.
    • Imposta la complessità della password.
    • Blocchi, ad esempio la disattivazione degli screenshot, condivisi dal profilo gestito
  • Configurazione della connettività aziendale in corso...
    • Usa WifiEnterpriseConfig per configurare il Wi-Fi aziendale.
    • Configura la VPN sul dispositivo.
    • Utilizza DPM.setApplicationRestrictions() per configurare la VPN aziendale.
  • Attivazione del Single Sign-On (SSO) per l'app aziendale.
    • Installare le app aziendali selezionate.
    • Utilizza DPM.installKeyPair() per installare in silenzio i certificati client aziendali.
    • Utilizza DPM.setApplicationRestrictions() per configurare nomi host e 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 accessibili i dati aziendali alle app nel profilo gestito o nel dispositivo gestito. Per indicazioni sui test, consulta la pagina Configurazione del test del dispositivo.