Enregistrer et provisionner un appareil

Le provisionnement est le processus de configuration d'un appareil pour qu'il soit géré à l'aide de policies par un enterprise. Au cours du processus, un appareil installe Android Device Policy, qui est utilisé pour recevoir et appliquer policies. Si le provisionnement réussit, l'API crée un objet devices, en associant 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é d'un appareil (personnel ou appartenant à l'entreprise) et son mode de gestion (profil professionnel ou appareil entièrement géré).

Un système de quotas contrôle le nombre d'appareils que chaque projet peut gérer. Vous devez demander un quota d'appareils initial avant de pouvoir provisionner votre premier appareil.

Appareils personnels

Android 5.1 ou version ultérieure

Les appareils appartenant aux employés peuvent être configurés avec un profil professionnel. Un profil professionnel fournit un espace autonome pour les applications et données professionnelles, distinct des applications et données personnelles. La plupart des fonctionnalités de gestion des applications, des données et autres policies 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 ou version ultérieure

La configuration d'un appareil appartenant à l'entreprise avec un profil professionnel permet d'utiliser l'appareil à des fins professionnelles et personnelles. Sur les appareils détenus par l'entreprise et dotés d'un profil professionnel :

Pour configurer un appareil appartenant à 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 appartenant à l'entreprise et réservés à un usage professionnel

Android 5.1 ou version ultérieure

La gestion intégrale des appareils convient aux appareils détenus par l'entreprise et destinés exclusivement à un usage professionnel. Les entreprises peuvent gérer toutes les applications sur 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 sur un petit ensemble d'applications pour un usage ou un cas d'utilisation spécifique. Ce sous-ensemble d'appareils entièrement gérés est appelé appareils dédiés. Pour ces appareils, les jetons d'enregistrement doivent avoir la valeur PERSONAL_USAGE_DISALLOWED_USERLESS pour allowPersonalUsage.

Pour configurer la gestion complète sur un appareil appartenant à l'entreprise, créez un jeton d'inscription en vous assurant que allowPersonalUsage est défini sur PERSONAL_USAGE_DISALLOWED ou PERSONAL_USAGE_DISALLOWED_USERLESS, puis utilisez l'une des méthodes de provisionnement suivantes.

Les Règles peuvent avoir un impact sur la génération de l'UI lors du provisionnement de l'appareil. Ces règles sont les suivantes :

Si vous souhaitez que les étapes du mot de passe s'affichent en même temps que l'installation des applications professionnelles et des cartes d'enregistrement de l'appareil lors du provisionnement de l'appareil, nous vous suggérons de mettre à jour vos règles pour retarder le lancement de la génération de l'UI en maintenant l'appareil dans un état de quarantaine, qui se produit s'il est enregistré sans règle associée, jusqu'à ce que la règle finale sélectionnée pour la configuration de l'appareil soit spécifiée et remplie avec les éléments correspondant à vos besoins de configuration. Une fois l'appareil provisionné, vous pouvez modifier la règle si nécessaire.


Créer un jeton d'inscription

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

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. Les jetons d'inscription expirent au bout d'une heure par défaut, mais vous pouvez spécifier une durée d'expiration personnalisée (duration) pouvant aller 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 pour appliquer une règle en même temps qu'un appareil est enregistré. Si vous ne spécifiez pas de policyName, consultez Enregistrer un appareil sans règle.

Spécifier l'usage personnel

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


À propos des codes QR

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

Exemple de groupe 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 bundle de codes QR, consultez Créer un code QR.

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


Méthodes de provisionnement

Cette section décrit différentes méthodes pour provisionner un appareil.

Ajouter un profil professionnel depuis les paramètres

Android 5.1 ou version ultérieure

Pour configurer un profil professionnel sur leur appareil, les utilisateurs peuvent :

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

Ces étapes lancent un assistant de configuration qui télécharge Android Device Policy sur l'appareil. L'utilisateur est 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 leur appareil, les utilisateurs peuvent télécharger Android Device Policy sur le Google Play Store. Une fois l'application installée, l'utilisateur est invité à scanner 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 de l'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 depuis son appareil, il est guidé tout au long de la configuration du profil professionnel.

URL de connexion

Avec cette méthode, les utilisateurs sont redirigés vers une page où ils peuvent saisir les informations supplémentaires requises pour finaliser le provisionnement. En fonction des informations saisies par l'utilisateur, vous pouvez calculer la règle appropriée pour l'utilisateur avant de procéder au provisionnement de l'appareil. Exemple :

  1. Spécifiez 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 appartenant à l'entreprise).

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

  2. Sélectionnez l'une des options suivantes :

    1. Appareils appartenant à l'entreprise : après avoir allumé un appareil neuf ou réinitialisé aux paramètres d'usine, transmettez le signinEnrollmentToken à l'appareil (via un code QR, la technologie 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". Lorsque l'utilisateur y est invité, il scanne un code QR contenant le 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 un jeton d'enregistrement, où le jeton d'enregistrement est signinEnrollmentToken. L'appareil ouvre l'URL de connexion spécifiée à l'étape 1.
  3. Vérifiez si Google a déjà authentifié l'utilisateur. Obtenez les informations de provisionnement de l'appareil (lors de l'enregistrement de l'appareil) à l'aide du paramètre GET provisioningInfo et recherchez une valeur pour le champ authenticatedUserEmail. Si ce champ contient une valeur, l'utilisateur a déjà été authentifié par Google. Vous pouvez donc utiliser cette identité sans autre authentification.

  4. Si Google n'a pas encore authentifié l'utilisateur, votre URL de connexion doit l'inviter à saisir ses 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.

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

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

Méthode du QR code

Android 7.0 ou version ultérieure

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

  1. Sur un appareil neuf ou dont la configuration d'usine a été rétablie, l'utilisateur (généralement un administrateur informatique) appuie six fois sur une même zone de l'écran. L'appareil invite alors l'utilisateur à scanner un code QR.
  2. L'utilisateur scanne le code QR que vous affichez dans votre console d'administration (ou une application similaire) pour enregistrer et provisionner l'appareil.

Méthode NFC

Android 6.0 ou version ultérieure

Cette méthode vous oblige à 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 de programmation.

Des conseils détaillés sur la façon de prendre en charge la méthode NFC sont disponibles dans la documentation destinée aux développeurs de l'API Play EMM. Le site inclut également un exemple de code des paramètres par défaut transférés à un appareil via la 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 des 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 appartenant à l'entreprise :

  1. Suivez l'assistant de configuration sur un appareil neuf ou réinitialisé.
  2. Saisissez les informations 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 et versions ultérieures (Pixel 7.1 et versions ultérieures)

Les appareils achetés auprès d'un revendeur agréé proposant le sans contact sont éligibles à 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 organisations peuvent créer des configurations contenant des informations de provisionnement pour leurs appareils enregistrés sans contact, soit via le portail d'enregistrement sans contact, soit à l'aide de leur console EMM (consultez l'API cliente d'enregistrement 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, puis termine sa configuration à l'aide des extras de provisionnement spécifiés dans la configuration qui lui est 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. Pour obtenir des instructions détaillées sur l'utilisation du portail, y compris sur la création et l'attribution de configurations aux appareils, consultez le Centre d'aide Android Enterprise.

Si vous préférez que vos clients définissent et attribuent des configurations directement depuis votre console EMM, vous devez intégrer l'API cliente d'enregistrement sans contact. Lorsque vous créez une configuration, vous spécifiez des extras de provisionnement dans le champ dpcExtras. L'extrait de code JSON suivant montre un exemple de base de ce qu'il faut 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

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

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

Assurez-vous que le installType de l'application est 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 les 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 une application lancée à partir de launchApp, l'activité lancée en premier dans l'application contient l'extra d'intent booléen 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 à partir de setupActions ou par un utilisateur.

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

Annuler l'enregistrement lors de la configuration

L'application lancée en tant que SetupAction peut annuler l'enregistrement et renvoyer RESULT_FIRST_USER.

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

Remarque : L'annulation de l'inscription déclenche l'action sans boîte de dialogue de confirmation de l'utilisateur. Il incombe à l'application d'afficher une boîte de dialogue d'erreur appropriée à l'utilisateur avant de renvoyer RESULT_FIRST_USER.

Appliquer une règle aux appareils nouvellement enregistrés

La méthode que vous utilisez 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é) Lorsque vous créez 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, le règlement est automatiquement appliqué à l'appareil.

  • Définissez 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 concernant les nouveaux appareils 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 mis en quarantaine. Les appareils mis en quarantaine sont bloqués pour toutes les fonctions de l'appareil jusqu'à ce qu'il soit associé à une règle.

Si un appareil n'est pas associé à une règle au bout de cinq minutes, l'enregistrement de l'appareil échoue et la configuration d'usine de l'appareil est rétablie. L'état de l'appareil en quarantaine vous permet d'implémenter des vérifications de licence ou d'autres processus de validation de l'enregistrement dans 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 restantes de l'entreprise.
  3. S'il existe des licences disponibles, utilisez devices.patch pour associer une règle à l'appareil, puis diminuez le nombre de licences. Si aucune licence n'est disponible, utilisez devices.patch pour désactiver l'appareil. L'API peut également rétablir la configuration d'usine de tout appareil qui n'est pas associé à un règlement dans les cinq minutes suivant son inscription.