Enregistrer et provisionner un appareil

Le provisionnement est le processus de configuration d'un appareil à gérer à l'aide de policies par un enterprise. Au cours du processus, un appareil installe Android Device Policy, qui permet de recevoir et d'appliquer policies. Si le provisionnement aboutit, l'API crée un objet devices qui lie l'appareil à une entreprise.

L'API Android Management utilise des jetons d'enregistrement pour déclencher le processus de provisionnement. Le jeton d'enregistrement et la méthode de provisionnement que vous utilisez établissent la propriété (personnelle ou entreprise) et le mode de gestion (profil professionnel ou appareil entièrement géré) d'un appareil.

Appareils personnels

Android 5.1 ou version ultérieure

Les appareils détenus par les employés peuvent être configurés avec un profil professionnel. Un profil professionnel fournit un espace autonome pour les applications et les données professionnelles, distinct des applications et données personnelles. La plupart des applications, des données et d'autres policies de gestion s'appliquent uniquement au profil professionnel, tandis que les applications et données personnelles de l'employé restent privées.

Pour configurer un profil professionnel sur un appareil personnel, créez un jeton d'enregistrement (assurez-vous que allowPersonalUsage est défini sur PERSONAL_USAGE_ALLOWED) et utilisez l'une des méthodes de provisionnement suivantes:

Appareils détenus par l'entreprise pour un usage professionnel et personnel

Android 8 et versions ultérieures

Si vous configurez un appareil détenu par l'entreprise avec un profil professionnel, l'appareil peut être utilisé à la fois pour un usage professionnel et personnel. Sur les appareils détenus par l'entreprise disposant d'un profil professionnel:

Pour configurer un appareil détenu par l'entreprise avec un profil professionnel, créez un jeton d'enregistrement (assurez-vous que allowPersonalUsage est défini sur PERSONAL_USAGE_ALLOWED) et utilisez l'une des méthodes de provisionnement suivantes:

Appareils détenus par l'entreprise pour une utilisation professionnelle uniquement

Android 5.1 ou version ultérieure

La gestion complète des appareils convient aux appareils détenus par l'entreprise exclusivement à des fins professionnelles. Les entreprises peuvent gérer toutes les applications de l'appareil et appliquer l'ensemble des règles et commandes de l'API Android Management.

Il est également possible de verrouiller un appareil (via une règle) sur une seule application ou un petit ensemble d'applications pour répondre à une finalité ou un cas d'utilisation dédiés. Ce sous-ensemble d'appareils entièrement gérés est appelé appareils dédiés.

Pour configurer la gestion complète sur un appareil détenu par l'entreprise, créez un jeton d'enregistrement (assurez-vous que allowPersonalUsage est défini sur PERSONAL_USAGE_DISALLOWED) et utilisez l'une des méthodes de provisionnement suivantes:

Les règles peuvent avoir un impact sur la génération de l'interface utilisateur lors de la préparation de l'appareil. Ces règles sont les suivantes:

Si vous souhaitez que les étapes relatives aux mots de passe s'affichent en même temps que l'installation d'applications professionnelles et de fiches d'enregistrement d'appareils lors du provisionnement de l'appareil, nous vous recommandons de mettre à jour vos règles pour retarder le lancement de la génération de l'UI en laissant l'appareil en état de quarantaine, qui se produit s'il est enregistré sans règle associée, jusqu'à ce que vous spécifiiez la règle finale sélectionnée pour la configuration de l'appareil, contenant des éléments pertinents pour vos besoins de configuration. Une fois le provisionnement de l'appareil terminé, vous pouvez modifier les règles si nécessaire.


Créer un jeton d'enregistrement

Présentation d'Android Management
Figure 1. Créez un jeton qui enregistre et applique "policy1" aux appareils. Au bout de 1 800 secondes (30 minutes), le jeton expire.

Vous avez besoin d'un jeton d'enregistrement pour chaque appareil que vous souhaitez enregistrer (vous pouvez utiliser le même jeton pour plusieurs appareils). Pour demander un jeton d'enregistrement, appelez enterprises.enrollmentTokens.create. Par défaut, les jetons d'enregistrement expirent au bout d'une heure,mais vous pouvez spécifier un délai d'expiration personnalisé (duration) jusqu'à environ 10 000 ans.

Une requête réussie renvoie un objet enrollmentToken contenant un enrollmentTokenId et un qrcode que les administrateurs informatiques et les utilisateurs finaux peuvent utiliser pour provisionner des appareils.

Spécifier une règle

Vous pouvez également spécifier un policyName dans la requête d'application d'une règle au moment où un appareil est enregistré. Si vous ne spécifiez pas de policyName, consultez Enregistrer un appareil sans règle.

Spécifier votre utilisation personnelle

allowPersonalUsage détermine si un profil professionnel peut être ajouté à l'appareil lors du provisionnement. Définissez la valeur sur PERSONAL_USAGE_ALLOWED pour permettre à un utilisateur de créer un profil professionnel (obligatoire pour les appareils personnels, facultatif pour les appareils détenus par l'entreprise).


À propos des codes QR

Les codes QR constituent une méthode efficace de provisionnement des appareils pour les entreprises qui appliquent de nombreuses règles différentes. Le code QR renvoyé par enterprises.enrollmentTokens.create est composé d'une charge utile de paires clé/valeur contenant un jeton d'enregistrement et toutes les informations nécessaires à Android Device Policy pour provisionner un appareil.

Exemple de lot de codes QR

Le bundle inclut l'emplacement de téléchargement d'Android Device Policy et un jeton d'enregistrement.

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

Vous pouvez utiliser directement le code QR renvoyé par enterprises.enrollmentTokens.create ou le personnaliser. Pour obtenir la liste complète des propriétés que vous pouvez inclure dans un lot de code QR, consultez Créer un code QR.

Pour convertir la chaîne qrcode en un code QR lisible, utilisez un générateur de code QR tel que ZXing.


Méthodes de provisionnement

Cette section décrit différentes méthodes de provisionnement d'un appareil.

Ajouter un profil professionnel à partir de "Paramètres"

Android 5.1 ou version ultérieure

Pour configurer un profil professionnel sur son appareil, l'utilisateur peut procéder comme suit:

  1. Accédez à Paramètres > Google > Configurer et restaurer.
  2. Appuyez sur Configurer votre profil professionnel.

Ces étapes permettent de lancer un assistant de configuration qui télécharge Android Device Policy sur l'appareil. L'utilisateur sera ensuite invité à scanner un code QR ou à saisir manuellement un jeton d'enregistrement pour terminer la configuration du profil professionnel.

Télécharger Android Device Policy

Android 5.1 ou version ultérieure

Pour configurer un profil professionnel sur son appareil, un utilisateur peut télécharger Android Device Policy sur le Google Play Store. Une fois l'application installée, l'utilisateur est invité à saisir un code QR ou à saisir manuellement un jeton d'enregistrement pour terminer la configuration du profil professionnel.

Android 5.1 ou version ultérieure

À l'aide du jeton d'enregistrement renvoyé par enrollmentTokens.create ou du fichier signinEnrollmentToken de l'entreprise, générez une URL au format suivant:

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

Vous pouvez fournir cette URL aux administrateurs informatiques, qui pourront la transmettre à leurs utilisateurs finaux. Lorsqu'un utilisateur final ouvre le lien à partir de son appareil, il est guidé tout au long de la configuration du profil professionnel.

URL de connexion

Avec cette méthode, les utilisateurs reçoivent une URL qui les invite à saisir leurs identifiants. En fonction de ses identifiants, vous pouvez calculer la règle appropriée pour l'utilisateur avant de procéder au provisionnement de l'appareil. Exemple :

  1. Indiquez votre URL de connexion dans enterprises.signInDetails[]. Définissez allowPersonalUsage sur PERSONAL_USAGE_ALLOWED si vous souhaitez autoriser un utilisateur à créer un profil professionnel (obligatoire pour les appareils personnels, facultatif pour les appareils détenus par l'entreprise).

    Ajoutez le signinEnrollmentToken obtenu en tant que provisionnement supplémentaire à un code QR, une charge utile NFC ou une configuration sans contact. Vous pouvez également fournir le signinEnrollmentToken directement aux utilisateurs.

  2. Sélectionnez une option :

    1. Appareils détenus par l'entreprise:après avoir allumé un appareil neuf ou réinitialisé, transmettez-lui l'signinEnrollmentToken (via un code QR, une notification NFC, etc.) ou demandez aux utilisateurs de saisir le jeton manuellement. L'appareil ouvre l'URL de connexion spécifiée à l'étape 1.
    2. Appareils personnels:demandez aux utilisateurs d'ajouter un profil professionnel depuis "Paramètres". Lorsqu'il y est invité, l'utilisateur scanne un code QR contenant le jeton signinEnrollmentToken ou saisit le jeton manuellement. L'appareil ouvre l'URL de connexion spécifiée à l'étape 1.
    3. Appareils personnels:fournissez aux utilisateurs un lien vers le jeton d'enregistrement, où le jeton d'enregistrement correspond au signinEnrollmentToken. L'appareil ouvre l'URL de connexion spécifiée à l'étape 1.
  3. Votre URL de connexion doit inviter les utilisateurs à saisir leurs identifiants. En fonction de leur identité, vous pouvez déterminer la règle appropriée et obtenir les informations de provisionnement de l'appareil (lors de l'enregistrement de l'appareil) à l'aide du paramètre GET provisioningInfo.

  4. Appelez enrollmentTokens.create, en spécifiant le policyId approprié en fonction des identifiants de l'utilisateur.

  5. Renvoyez le jeton d'enregistrement généré à l'étape 4 à l'aide de la redirection d'URL, au format https://enterprise.google.com/android/enroll?et=<token>.

Méthode par code QR

Android 7.0 ou version ultérieure

Pour provisionner un appareil détenu par l'entreprise, vous pouvez générer un code QR et l'afficher dans votre console EMM:

  1. Sur un appareil neuf ou réinitialisé, l'utilisateur (généralement un administrateur informatique) appuie six fois sur l'écran au même endroit. L'appareil invite alors l'utilisateur à scanner un code QR.
  2. L'utilisateur scanne le code QR que vous affichez dans votre console de gestion (ou une application similaire) pour enregistrer et provisionner l'appareil.

Méthode NFC

Android 6.0 ou version ultérieure

Cette méthode nécessite de créer une application de programmation NFC contenant le jeton d'enregistrement, les règles initiales, la configuration Wi-Fi, les paramètres et toutes les autres informations de provisionnement requises par votre client pour provisionner un appareil entièrement géré ou dédié. Lorsque vous ou votre client installez l'application de programmation NFC sur un appareil Android, cet appareil devient l'appareil programmeur.

Des conseils détaillés sur la prise en charge de la méthode NFC sont disponibles dans la documentation pour les développeurs de l'API EMM Play. Le site inclut également un exemple de code des paramètres par défaut transmis à un appareil via une technologie NFC. Pour installer Android Device Policy, définissez l'emplacement de téléchargement du package d'administration de l'appareil sur:

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

Méthode d'identification de l'outil DPC

Si Android Device Policy ne peut pas être ajouté à l'aide d'un code QR ou de la technologie NFC, un utilisateur ou un administrateur informatique peut suivre ces étapes pour provisionner un appareil détenu par l'entreprise:

  1. Suivez les instructions de l'assistant de configuration sur un appareil neuf ou réinitialisé.
  2. Saisissez les identifiants de connexion Wi-Fi pour connecter l'appareil à Internet.
  3. Lorsque vous êtes invité à vous connecter, saisissez afw#setup pour télécharger Android Device Policy.
  4. Scannez un code QR ou saisissez manuellement un jeton d'enregistrement pour provisionner l'appareil.

Enregistrement sans contact

Android 8.0 ou version ultérieure (Pixel 7.1 et versions ultérieures)

Les appareils achetés auprès d'un revendeur sans contact autorisé peuvent bénéficier de l'enregistrement sans contact, une méthode simplifiée permettant de préconfigurer les appareils pour qu'ils se provisionnent automatiquement au premier démarrage.

Les entreprises peuvent créer des configurations contenant des informations de provisionnement pour leurs appareils sans contact, via le portail d'enregistrement sans contact ou à l'aide de votre console EMM (voir l'API client sans contact). Au premier démarrage, un appareil sans contact vérifie si une configuration lui a été attribuée. Si tel est le cas, l'appareil télécharge Android Device Policy, qui termine sa configuration à l'aide des extras de provisionnement spécifiés dans la configuration qui lui a été attribuée.

Si vos clients utilisent le portail d'enregistrement sans contact, ils doivent sélectionner Android Device Policy comme DPC EMM pour chaque configuration qu'ils créent. Des instructions détaillées sur l'utilisation du portail, y compris sur la création et l'attribution de configurations aux appareils, sont disponibles dans le Centre d'aide Android Enterprise.

Si vous préférez que vos clients définissent et attribuent des configurations directement à partir de votre console EMM, vous devez procéder à l'intégration avec l'API client sans contact. Lors de la création d'une configuration, vous spécifiez des extras de provisionnement dans le champ dpcExtras. L'extrait de code JSON suivant montre un exemple de base d'éléments à inclure dans dpcExtras, avec un jeton de connexion ajouté.

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

Lancer une application pendant la configuration

action_de_configuration
Figure 2 : Utilisez setupActions pour lancer une application pendant la configuration.

Dans policies, vous pouvez spécifier une application pour qu'Android Device Policy soit lancé lors de la configuration de l'appareil ou du profil professionnel. Par exemple, vous pouvez lancer une application VPN afin que les utilisateurs puissent configurer les paramètres VPN dans le cadre du processus de configuration. L'application doit renvoyer RESULT_OK pour signaler la fin de l'opération et autoriser Android Device Policy à terminer le provisionnement de l'appareil ou du profil professionnel. Pour lancer une application pendant la configuration:

Assurez-vous que le champ installType de l'application est défini sur REQUIRED_FOR_SETUP. Si l'application ne peut pas être installée ni lancée sur l'appareil, le provisionnement échouera.

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

Ajoutez le nom du package de l'application à setupActions. Utilisez title et description pour spécifier des instructions destinées aux utilisateurs.

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

Pour distinguer qu'une application est lancée à partir de launchApp, l'activité lancée pour la première fois dans l'application contient l'intent booléen supplémentaire com.google.android.apps.work.clouddpc.EXTRA_LAUNCHED_AS_SETUP_ACTION (défini sur true). Cet extra vous permet de personnaliser votre application selon qu'elle est lancée depuis setupActions ou par un utilisateur.

Une fois que l'application a renvoyé RESULT_OK, Android Device Policy effectue les étapes restantes nécessaires pour provisionner l'appareil ou le profil professionnel.

Annuler l'enregistrement pendant la configuration

L'application lancée en tant que SetupAction peut annuler l'inscription en renvoyant RESULT_CANCELED.

L'annulation de l'enregistrement réinitialise un appareil détenu par l'entreprise ou supprime le profil professionnel sur un appareil personnel.

Remarque: L'annulation de l'enregistrement déclenche l'action sans boîte de dialogue de confirmation de l'utilisateur. Il est de la responsabilité de l'application d'afficher une boîte de dialogue d'erreur appropriée à l'utilisateur avant de renvoyer le résultat.

Appliquer une règle aux appareils nouvellement enregistrés

La méthode à utiliser pour appliquer des règles aux appareils nouvellement enregistrés dépend de vous et des exigences de vos clients. Voici les différentes approches que vous pouvez utiliser:

  • (Recommandé) Lors de la création d'un jeton d'enregistrement, vous pouvez spécifier le nom de la règle (policyName) qui sera initialement associée à l'appareil. Lorsque vous enregistrez un appareil avec le jeton, la règle lui est automatiquement appliquée.

  • Définir une règle comme règle par défaut pour une entreprise Si aucun nom de règle n'est spécifié dans le jeton d'enregistrement et qu'une règle porte le nom enterprises/<enterprise_id>/policies/default, chaque nouvel appareil est automatiquement associé à la règle par défaut au moment de l'enregistrement.

  • Abonnez-vous à un sujet Cloud Pub/Sub pour recevoir des notifications sur les appareils récemment enregistrés. En réponse à une notification ENROLLMENT, appelez enterprises.devices.patch pour associer l'appareil à une règle.

Enregistrer un appareil sans règle

Si un appareil est enregistré sans règle valide, il est placé en zone de quarantaine. Les appareils mis en quarantaine sont bloqués et n'ont pas accès à toutes leurs fonctions jusqu'à ce qu'ils soient associés à une règle.

Si un appareil n'est pas associé à une règle au bout de cinq minutes, son enregistrement échoue et sa configuration d'usine est rétablie. L'état de l'appareil en quarantaine vous donne la possibilité d'implémenter des vérifications de licence ou d'autres processus de validation d'enregistrement dans le cadre de votre solution.

Exemple de workflow de vérification des licences

  1. Un appareil est enregistré sans règle par défaut ni règle spécifique.
  2. Vérifiez le nombre de licences dont l'entreprise dispose encore.
  3. Si des licences sont disponibles, utilisez devices.patch pour associer une stratégie à l'appareil, puis diminuez le nombre de licences. Si aucune licence n'est disponible, utilisez devices.patch pour désactiver l'appareil. L'API rétablit également la configuration d'usine de tout appareil qui n'est pas associé à une règle dans les cinq minutes suivant l'enregistrement.