Registrare ed eseguire il provisioning di un dispositivo

Il provisioning è il processo di configurazione di un dispositivo che deve essere gestito utilizzando policies da un enterprise. Durante il processo un dispositivo installa Android Device Policy, che viene utilizzato per ricevere e applicare policies. Se il provisioning ha esito positivo, l'API crea un oggetto devices, associando il dispositivo a un'azienda.

L'API Android Management utilizza i token di registrazione per attivare il processo di provisioning. Il token di registrazione e il metodo di provisioning che utilizzi stabiliscono la proprietà di un dispositivo (di 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 app e dati di lavoro, separato da app e dati personali. La maggior parte delle app, dei dati e di altre attività 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 uso personale e lavorativo

Android 8 e versioni successive

La configurazione di un dispositivo di proprietà dell'azienda con un profilo di lavoro consente al dispositivo sia per uso personale che lavorativo. 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 per i dispositivi di proprietà dell'azienda destinati esclusivamente a scopi lavorativi. Le aziende possono gestire tutte le app sul dispositivo e applicare l'intero spettro di criteri e comandi dell'API Android Management.

È anche possibile bloccare un dispositivo (tramite un criterio) su una singola app o un piccolo insieme di app per uno scopo o un caso d'uso dedicati. Questo sottoinsieme di dispositivi completamente gestiti è definito 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'UI durante il provisioning del dispositivo. Tali norme sono:

Se vuoi che i passaggi relativi alle password vengano visualizzati insieme all'installazione delle app di lavoro e delle schede di registrazione dei dispositivi durante il provisioning del 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 registrato senza un criterio associato, fino a specificare il criterio finale selezionato per la configurazione del dispositivo completo di elementi pertinenti alle tue esigenze di configurazione. Una volta completato il provisioning del dispositivo, puoi modificare il criterio in base alle esigenze.


Crea un token di registrazione

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

Devi avere 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 scadenza personalizzata (duration) fino a circa 10.000 anni.

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

Specifica un criterio

Potresti anche voler specificare un policyName nella richiesta per applicare un criterio contemporaneamente alla registrazione di un dispositivo. Se non specifichi un policyName, consulta Registrare un dispositivo senza un criterio.

Specifica l'utilizzo personale

allowPersonalUsage determina se è possibile aggiungere un profilo di lavoro 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 metodo di provisioning dei dispositivi efficiente per le aziende che gestiscono molti criteri diversi. Il codice QR restituito da enterprises.enrollmentTokens.create è costituito da un payload di coppie chiave/valore contenenti un token di registrazione e tutte le informazioni necessarie ad Android Device Policy per eseguire il provisioning di un dispositivo.

Esempio di bundle 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 direttamente il codice QR restituito da enterprises.enrollmentTokens.create o personalizzarlo. Per un elenco completo delle proprietà da includere in un pacchetto di codici QR, consulta la pagina 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 disponibili per eseguire il provisioning di un dispositivo.

Aggiungi profilo di lavoro dalle "Impostazioni"

Android 5.1 e versioni successive

Per configurare un profilo di lavoro sul proprio dispositivo, un 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. Successivamente, 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 configurare 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à chiesto 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 da signinEnrollmentToken dell'azienda (vedi la sezione 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 loro di inserire le credenziali. In base alle sue credenziali, puoi calcolare i criteri appropriati per l'utente prima di procedere con il provisioning del dispositivo. Ad esempio:

  1. Specifica il tuo 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 e facoltativo per i dispositivi di proprietà dell'azienda).

    Aggiungi l'elemento signinEnrollmentToken risultante come provisioning extra a un codice QR, a un payload NFC o a una configurazione zero-touch. In alternativa, puoi fornire direttamente signinEnrollmentToken agli utenti.

  2. Scegli un'opzione:

    1. Dispositivi di proprietà dell'azienda: dopo aver acceso un dispositivo nuovo o di cui hai ripristinato i dati di fabbrica, trasmetti signinEnrollmentToken al dispositivo (tramite codice QR, taglio NFC e così via) o chiedi agli utenti di inserire il token manualmente. Il dispositivo aprirà 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 signinEnrollmentToken o inserisce il token manualmente. Il dispositivo aprirà 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 è il signinEnrollmentToken. Il dispositivo aprirà l'URL di accesso specificato nel passaggio 1.
  3. L'URL di accesso dovrebbe richiedere agli utenti di inserire le proprie credenziali. In base alla loro identità, puoi determinare il criterio appropriato.

  4. Chiama il numero enrollmentTokens.create, specificando il valore policyId appropriato in base alle credenziali dell'utente.

  5. Restituisci il token di registrazione generato nel passaggio 4 utilizzando il reindirizzamento URL, nel modulo 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 tua console EMM:

  1. Su un dispositivo nuovo o di cui sono stati ripristinati i dati di fabbrica, l'utente (in genere un amministratore IT) tocca lo schermo sei volte nello stesso punto. In questo modo, il dispositivo chiede all'utente di scansionare un codice QR.
  2. L'utente esegue la scansione del codice QR che mostri nella console di gestione (o in un'applicazione simile) per registrare il dispositivo ed eseguirne il provisioning.

Metodo NFC

Android 6.0 e versioni successive

Questo metodo richiede la creazione di un'app di programmazione NFC contenente 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 completamente gestito o dedicato. Quando tu o il tuo cliente installate l'app di programmazione NFC su un dispositivo Android, questo diventa il dispositivo di programmazione.

Indicazioni dettagliate sul supporto del metodo NFC sono disponibili nella documentazione per gli sviluppatori dell'API Play EMM. Il sito include anche il codice campione dei parametri predefiniti inviati a un dispositivo in caso di contatto NFC. Per installare Android Device Policy, imposta la posizione di download del pacchetto di amministrazione del dispositivo su:

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

Metodo identificatore DPC

Se non è possibile aggiungere Android Device Policy utilizzando il 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 configurazione guidata su un dispositivo nuovo o di cui sono stati ripristinati i dati di fabbrica.
  2. Inserisci i dati di accesso al Wi-Fi per connettere il dispositivo a internet.
  3. Quando ti viene chiesto di accedere, inserisci afw#setup, che scarica 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 alla registrazione zero-touch, un metodo semplificato per preconfigurare i dispositivi in modo da eseguire il provisioning automatico al primo avvio.

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

Se i tuoi clienti utilizzano il portale per la registrazione zero-touch, devono selezionare Android Device Policy come DPC EMM per ogni configurazione creata. Istruzioni dettagliate sull'utilizzo del portale, incluse la creazione e l'assegnazione delle configurazioni ai dispositivi, sono disponibili nel Centro assistenza Android Enterprise.

Se preferisci che i tuoi clienti impostino e assegnino le configurazioni direttamente dalla console EMM, devi eseguire l'integrazione con l'API zero-touch per i clienti. Quando crei una configurazione, specifichi gli extra di provisioning nel campo dpcExtras. Il seguente snippet JSON 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

azione di configurazione
Figura 2. Usa setupActions per avviare un'app durante la configurazione.

In policies puoi specificare un'app da avviare per Android Device Policy durante la configurazione del dispositivo o del profilo di lavoro. Ad esempio, potresti avviare un'app VPN per consentire agli utenti di configurare le impostazioni VPN durante il 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 istruzioni rivolte agli utenti.

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

Per distinguere un'app lanciata da launchApp, l'attività lanciata per la prima volta come parte dell'app contiene l'intent booleano extra com.google.android.apps.work.clouddpc.EXTRA_LAUNCHED_AS_SETUP_ACTION (impostato su true). Questo extra ti consente di personalizzare l'app a seconda che sia stata lanciata 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.

Annulla la registrazione durante la configurazione

L'app lanciata come SetupAction può annullare la registrazione che restituisce RESULT_CANCELED.

L'annullamento della registrazione reimposta un dispositivo di proprietà dell'azienda o elimina il profilo di lavoro su un dispositivo di proprietà personale.

Nota: l'annullamento della registrazione attiva l'azione senza una finestra di dialogo di conferma dell'utente. È responsabilità dell'app mostrare all'utente una finestra di dialogo di errore appropriata prima di restituire il risultato.

Applica un criterio ai dispositivi appena registrati

Il metodo per applicare i criteri ai dispositivi appena registrati dipende da te e dai requisiti dei tuoi clienti. Ecco i diversi approcci che puoi utilizzare:

  • (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 non viene specificato alcun nome del criterio nel token di registrazione e esiste un criterio 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 criteri

Se un dispositivo viene registrato senza un criterio valido, viene messo in quarantena. I dispositivi messi in quarantena non possono accedere a tutte le funzionalità finché non vengono collegati a un criterio.

Se un dispositivo non viene collegato a un criterio entro cinque minuti, la registrazione del dispositivo non va a buon fine e vengono ripristinati i dati di fabbrica. Lo stato del dispositivo in quarantena offre l'opportunità di implementare controlli delle licenze o altri processi di convalida della registrazione come parte della soluzione.

Esempio di flusso di lavoro per il controllo delle licenze

  1. Un dispositivo viene registrato senza un criterio predefinito o specifico.
  2. Controlla il numero di licenze rimanenti 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, usa devices.patch per disattivare il dispositivo. In alternativa, l'API ripristina i dati di fabbrica di tutti i dispositivi non associati a un criterio entro cinque minuti dalla registrazione.