Registrare un dispositivo ed eseguirne il provisioning

Il provisioning è il processo di configurazione di un dispositivo da gestire tramite policies da parte di un enterprise. Durante il processo, un dispositivo installa Android Device Policy, che viene utilizzato per ricevere e applicare policies. Se il provisioning viene eseguito correttamente, l'API crea un oggetto devices, associando il dispositivo a un'azienda.

L'API Android Management utilizza token di registrazione per attivare il processo di provisioning. Il token di registrazione e il metodo di provisioning che imposti determinano la proprietà di un dispositivo (proprietà personale o di proprietà dell'azienda) e la modalità di gestione (profilo di lavoro o dispositivo completamente gestito).

Dispositivi di proprietà personale

Android 5.1 e versioni successive

I dispositivi di proprietà dei dipendenti possono essere configurati con un profilo di lavoro. Un profilo di lavoro offre uno spazio autonomo per le app e i dati di lavoro, separato dalle app e dai dati personali. La maggior parte delle app, dei dati e delle altre impostazioni di gestione policies si applica solo al profilo di lavoro, mentre le app e i dati personali del dipendente rimangono privati.

Per configurare un profilo di lavoro su un dispositivo di proprietà personale, crea un token di registrazione (assicurati che allowPersonalUsage sia impostato su PERSONAL_USAGE_ALLOWED) e utilizza uno dei seguenti metodi di provisioning:

Dispositivi di proprietà dell'azienda per lavoro e per uso personale

Android 8 e versioni successive

La configurazione di un dispositivo di proprietà dell'azienda con un profilo di lavoro consente l'utilizzo sia del dispositivo che dell'uso personale. Sui dispositivi di proprietà dell'azienda con profili di lavoro:

Per configurare un dispositivo di proprietà dell'azienda con un profilo di lavoro, crea un token di registrazione (assicurati che allowPersonalUsage sia impostato su PERSONAL_USAGE_ALLOWED) e utilizza uno dei seguenti metodi di provisioning:

Dispositivi di proprietà dell'azienda solo per lavoro

Android 5.1 e versioni successive

La gestione completa dei dispositivi è adatta ai dispositivi di proprietà dell'azienda destinati esclusivamente al lavoro. Le aziende possono gestire tutte le app sul dispositivo e applicare l'intero spettro dei criteri e dei comandi dell'API Android Management.

È inoltre possibile bloccare un dispositivo (tramite criteri) per una singola app o un piccolo insieme di app per uno scopo o un caso d'uso dedicato. Questo sottoinsieme di dispositivi completamente gestiti è chiamato dispositivi dedicati.

Per configurare la gestione completa su un dispositivo di proprietà dell'azienda, crea un token di registrazione (assicurati che allowPersonalUsage sia impostato su PERSONAL_USAGE_DISALLOWED) e utilizza uno dei seguenti metodi di provisioning:

I criteri possono influire sulla generazione dell'interfaccia utente durante il provisioning del dispositivo. Tali criteri sono:

Se vuoi che i passaggi per la password vengano visualizzati insieme all'installazione delle app di lavoro e delle schede di registrazione dei dispositivi durante il provisioning dispositivo, ti consigliamo di aggiornare i criteri per ritardare l'avvio della generazione dell'interfaccia utente, mantenendo il dispositivo in stato di quarantena, che si verifica se la registrazione è senza un criterio associato, finché non specifichi il criterio finale desiderato per la configurazione del dispositivo in cui vengono inseriti elementi pertinenti alle esigenze di configurazione. Una volta completato il provisioning del dispositivo, puoi modificare il criterio in base alle tue esigenze.


Crea un token di registrazione

Panoramica di Android Management.
Figura 1. Crea un token che registra e applica "policy1" ai dispositivi. Dopo 1800 secondi (30 minuti), il token scade.

Ti serve un token di registrazione per ogni dispositivo che vuoi registrare (puoi utilizzare lo stesso token per più dispositivi). Per richiedere un token di registrazione, chiama enterprises.enrollmentTokens.create. Per impostazione predefinita, i token di registrazione scadono dopo un'ora,ma puoi specificare una data di scadenza personalizzata (duration) fino a circa 10.000 anni.

Una richiesta riuscita restituisce un oggetto enrollmentToken contenente un enrollmentTokenId e un qrcode che gli amministratori IT e gli utenti finali possono utilizzare per il provisioning dei dispositivi.

Specifica un criterio

Potrebbe anche essere necessario specificare un policyName nella richiesta per applicare un criterio mentre è registrato un dispositivo. Se non specifichi un policyName, vedi Registrare un dispositivo senza un criterio.

Specifica un utente

La risorsa enrollmentTokens include un campo userAccountIdentifier. Se non specifichi un userAccountIdentifier, l'API creerà automaticamente un nuovo account univoco ogni volta che un dispositivo verrà registrato con il token di registrazione.

Se specifichi un userAccountIdentifier che non è stato attivato su un dispositivo, l'API creerà automaticamente un account per l'identificatore quando un dispositivo viene registrato con il token di registrazione.

Se specifichi un userAccountIdentifier che è stato attivato in precedenza su un altro dispositivo, l'API riutilizzerà l'utente esistente e lo attiverà su ogni dispositivo registrato con il token di registrazione. Best practice: un account non deve essere attivato per più di 10 dispositivi.

Specifica l'utilizzo personale

allowPersonalUsage determina se un profilo di lavoro può essere aggiunto al dispositivo durante il provisioning. Imposta su PERSONAL_USAGE_ALLOWED per consentire a un utente di creare un profilo di lavoro (obbligatorio per i dispositivi di proprietà personale, facoltativo per i dispositivi di proprietà dell'azienda).


Informazioni sui codici QR

I codici QR funzionano come un metodo efficiente di provisioning dei dispositivi per le aziende che contendono molti criteri diversi. Il codice QR restituito da enterprises.enrollmentTokens.create è costituito da un payload di coppie chiave-valore che contengono un token di registrazione e tutte le informazioni necessarie al provisioning di un dispositivo per Android Device Policy.

Esempio di pacchetto di codici QR

Il bundle include il percorso di download di Android Device Policy e un token di registrazione.

{
    "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}"
    }
}

Puoi utilizzare il codice QR restituito da enterprises.enrollmentTokens.create direttamente o personalizzarlo. Per un elenco completo delle proprietà che puoi includere in un pacchetto di codici QR, consulta la sezione Creare un codice QR.

Per convertire la stringa qrcode in un codice QR scansionabile, utilizza un generatore di codici QR come ZXing.


Metodi di provisioning

In questa sezione vengono descritti i diversi metodi di provisioning di un dispositivo.

Aggiungi un profilo di lavoro dalla sezione "Impostazioni"

Android 5.1 e versioni successive

Per configurare un profilo di lavoro sul proprio dispositivo, l'utente può:

  1. Vai a Impostazioni > Google > Configura e ripristina.
  2. Tocca Configura il tuo profilo di lavoro.

Questi passaggi avviano una configurazione guidata che scarica Android Device Policy sul dispositivo. All'utente verrà chiesto di scansionare un codice QR o di inserire manualmente un token di registrazione per completare la configurazione del profilo di lavoro.

Scarica Android Device Policy

Android 5.1 e versioni successive

Per impostare un profilo di lavoro sul proprio dispositivo, un utente può scaricare Android Device Policy dal Google Play Store. Dopo l'installazione dell'app, all'utente verrà richiesto di inserire il codice QR o di inserire manualmente un token di registrazione per completare la configurazione del profilo di lavoro.

Android 5.1 e versioni successive

Utilizzando il token di registrazione restituito da enrollmentTokens.create o signinEnrollmentToken dell'azienda (vedi URL di accesso di seguito), genera un URL con il seguente formato:

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

Puoi fornire questo URL agli amministratori IT, che possono fornirlo ai propri utenti finali. Quando un utente finale apre il link dal proprio dispositivo, viene guidato nella configurazione del profilo di lavoro.

URL di accesso

Con questo metodo, agli utenti viene fornito un URL che richiede le loro credenziali. In base alle loro credenziali, puoi calcolare il criterio appropriato per l'utente prima di procedere con il provisioning dei dispositivi. Ad esempio:

  1. Specifica l'URL di accesso in enterprises.signInDetails[]. Imposta allowPersonalUsage su PERSONAL_USAGE_ALLOWED se vuoi consentire a un utente di creare un profilo di lavoro (obbligatorio per i dispositivi di proprietà personale, facoltativo per i dispositivi di proprietà dell'azienda).

    Aggiungi il signinEnrollmentToken risultante come provisioning aggiuntivo a un codice QR, a un carico NFC o a una configurazione zero-touch. In alternativa, puoi fornire direttamente il servizio signinEnrollmentToken agli utenti.

  2. Scegli un'opzione:

    1. Dispositivi di proprietà dell'azienda: dopo aver acceso un dispositivo nuovo o ripristinato ai dati di fabbrica, trasmetti il dispositivo signinEnrollmentToken (tramite codice QR, buffer NFC e così via) o chiedi agli utenti di inserire il token manualmente. Sul dispositivo verrà aperto l'URL di accesso specificato nel passaggio 1.
    2. Dispositivi di proprietà personale: chiedi agli utenti di aggiungere un profilo di lavoro dalle "Impostazioni". Quando richiesto, l'utente scansiona un codice QR contenente il signinEnrollmentToken o inserisce il token manualmente. Sul dispositivo verrà aperto l'URL di accesso specificato nel passaggio 1.
    3. Dispositivi di proprietà personale: fornisci agli utenti un link al token di registrazione, in cui il token di registrazione è signinEnrollmentToken. Sul dispositivo verrà aperto l'URL di accesso specificato nel passaggio 1.
  3. L'URL di accesso deve chiedere agli utenti di inserire le proprie credenziali. In base alla loro identità, puoi determinare il criterio appropriato.

  4. Richiama enrollmentTokens.create, specificando l'elemento policyId appropriato in base alle credenziali dell'utente.

  5. Restituisci il token di registrazione generato nel passaggio 4 tramite reindirizzamento dell'URL, nel formato https://enterprise.google.com/android/enroll?et=<token>.

Metodo codice QR

Android 7.0 e versioni successive

Per eseguire il provisioning di un dispositivo di proprietà dell'azienda, puoi generare un codice QR e visualizzarlo nella console EMM:

  1. Su un dispositivo nuovo o ripristinato ai dati di fabbrica, l'utente (in genere un amministratore IT) tocca lo schermo sei volte nella stessa posizione. In questo modo il dispositivo chiede all'utente di scansionare un codice QR.
  2. L'utente scansiona il codice QR che visualizzi nella console di gestione (o in applicazioni simili) per registrare ed eseguire il provisioning del dispositivo.

Metodo NFC

Android 6.0 e versioni successive

Questo metodo richiede la creazione di un'app per la programmazione NFC che includa il token di registrazione, i criteri iniziali e la configurazione Wi-Fi, le impostazioni e tutti gli altri dettagli di provisioning richiesti dal cliente per eseguire il provisioning di un dispositivo dedicato o completamente gestito. Quando tu o il tuo cliente avete installato l'app per programmatori NFC su un dispositivo Android, quest'ultimo diventa il dispositivo del programmatore.

Indicazioni dettagliate su come supportare il metodo NFC sono disponibili nella documentazione per gli sviluppatori relativa all'API Play EMM. Il sito include anche il codice campione dei parametri predefiniti inviati a un dispositivo su un punto di contatto NFC. Per installare Android Device Policy, imposta il percorso di download del pacchetto di amministrazione del dispositivo su:

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

Metodo di identificazione DPC

Se non è possibile aggiungere Android Device Policy tramite un codice QR o NFC, un utente o un amministratore IT può seguire questi passaggi per eseguire il provisioning di un dispositivo di proprietà dell'azienda:

  1. Segui la procedura guidata di configurazione su un dispositivo nuovo o di cui hai ripristinato i dati di fabbrica.
  2. Inserisci i dettagli di accesso alla rete Wi-Fi per connettere il dispositivo a Internet.
  3. Quando ti viene richiesto di accedere, inserisci afw#setup, che consente di scaricare Android Device Policy.
  4. Scansiona un codice QR o inserisci manualmente un token di registrazione per eseguire il provisioning del dispositivo.

Registrazione zero-touch

Android 8.0 e versioni successive (Pixel 7.1 e versioni successive)

I dispositivi acquistati da un rivenditore zero-touch autorizzato sono idonei per la registrazione zero-touch, un metodo semplificato per la preconfigurazione dei dispositivi per il provisioning automatico al primo avvio.

Le organizzazioni possono creare configurazioni contenenti dettagli di provisioning per i propri dispositivi zero-touch, tramite il portale della registrazione zero-touch o utilizzando la console EMM (vedi l'API zero-touch per i clienti). Al primo avvio, un dispositivo zero-touch controlla se è stato assegnato a una configurazione. In questo caso, il dispositivo scarica Android Device Policy, che successivamente completa la configurazione del dispositivo utilizzando gli extra di provisioning specificati nella configurazione assegnata.

Se i tuoi clienti utilizzano il portale della registrazione zero-touch, devono selezionare Android Device Policy come DPC EMM per ogni configurazione creata. Istruzioni dettagliate su come utilizzare il portale, inclusa la procedura di creazione e assegnazione delle configurazioni ai dispositivi, sono disponibili nel Centro assistenza Android Enterprise.

Se preferisci che i clienti impostino e assegnino le configurazioni direttamente dalla console EMM, devi eseguire l'integrazione con l'API zero-touch per i clienti. Durante la creazione di una configurazione, specifichi il provisioning degli extra nel campo dpcExtras. Lo snippet JSON di seguito mostra un esempio di base di cosa includere in dpcExtras, con un token di accesso aggiunto.

{
   "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}"
   }
}

Avviare un'app durante la configurazione

configurazione
Figura 2. Utilizza setupActions per avviare un'app durante la configurazione.

In policies, puoi specificare un'app per Android Device Policy da avviare durante la configurazione del dispositivo o del profilo di lavoro. Ad esempio, puoi avviare un'app VPN in modo che gli utenti possano configurare le impostazioni VPN come parte del processo di configurazione. L'app deve restituire RESULT_OK per segnalare il completamento e consentire ad Android Device Policy di completare il provisioning del dispositivo o del profilo di lavoro. Per avviare un'app durante la configurazione:

Assicurati che il valore installType dell'app sia REQUIRED_FOR_SETUP. Se non è possibile installare o avviare l'app sul dispositivo, il provisioning non andrà a buon fine.

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

Aggiungi il nome del pacchetto dell'app a setupActions. Utilizza title e description per specificare le istruzioni rivolte all'utente.

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

Per distinguere l'avvio di un'app da launchApp, l'attività lanciata inizialmente come parte dell'app contiene l'intent booleano aggiuntivo com.google.android.apps.work.clouddpc.EXTRA_LAUNCHED_AS_SETUP_ACTION (impostato su true). Questo extra ti consente di personalizzare l'app in base al fatto che venga avviata da setupActions o da un utente.

Dopo che l'app restituisce RESULT_OK, Android Device Policy completa gli eventuali passaggi rimanenti necessari per eseguire il provisioning del dispositivo o del profilo di lavoro.

Applica un criterio ai dispositivi appena registrati

Spetta a te stabilire i requisiti dei clienti e il metodo da utilizzare per applicare i criteri ai nuovi dispositivi registrati. Qui vediamo tre diversi approcci:

  • (Consigliato) Quando crei un token di registrazione, puoi specificare il nome del criterio (policyName) che verrà inizialmente collegato al dispositivo. Quando registri un dispositivo con il token, il criterio viene applicato automaticamente al dispositivo.

  • Imposta un criterio come criterio predefinito per un'azienda. Se nel token di registrazione non è specificato un nome del criterio e ne esiste uno con il nome enterprises/<enterprise_id>/policies/default, ogni nuovo dispositivo viene collegato automaticamente al criterio predefinito al momento della registrazione.

  • Iscriviti a un argomento Cloud Pub/Sub per ricevere notifiche sui dispositivi appena registrati. In risposta a una notifica di ENROLLMENT, chiama enterprises.devices.patch per collegare il dispositivo a un criterio.

Registrare un dispositivo senza un criterio

Se un dispositivo viene registrato senza un criterio valido, viene messo in quarantena. I dispositivi in quarantena vengono bloccati per tutte le funzioni del dispositivo finché il dispositivo non è collegato a un criterio.

Se un dispositivo non è collegato a un criterio entro 5 minuti, la registrazione del dispositivo non riesce e il dispositivo viene ripristinato ai dati di fabbrica. Lo stato del dispositivo in quarantena ti offre l'opportunità di implementare i controlli delle licenze o altri processi di convalida della registrazione come parte della tua soluzione.

Esempio di flusso di lavoro di controllo delle licenze

  1. Un dispositivo viene registrato senza un criterio predefinito o un criterio specifico.
  2. Controlla quante licenze sono rimaste all'interno dell'azienda.
  3. Se sono disponibili licenze, utilizza devices.patch per allegare un criterio al dispositivo, quindi riduci il numero di licenze. Se non sono disponibili licenze, utilizza devices.patch per disattivare il dispositivo. In alternativa, l'API ripristina i dati di fabbrica di qualsiasi dispositivo non associato a un criterio entro cinque minuti dalla registrazione.