Mode d’appareil partagé pour les appareils Android
Les employés de terrain, comme les vendeurs en magasin, les membres d’équipage et les techniciens d’intervention, utilisent souvent un appareil mobile partagé pour effectuer leur travail. Cela devient problématique quand ils commencent à partager des mots de passe ou des codes confidentiels pour accéder aux données des clients et de l’entreprise sur l’appareil partagé.
Le mode d’appareil partagé vous permet de configurer un appareil Android afin qu’il puisse être facilement partagé par plusieurs employés. Les employés peuvent se connecter et accéder rapidement aux informations client. Quand ils ont terminé leur journée ou leur tâche, ils peuvent se déconnecter de l’appareil et ce dernier est immédiatement prêt à être utilisé par l’employé suivant.
Le mode d’appareil partagé permet également de gérer les appareils avec des identités Microsoft.
Pour créer une application en mode d’appareil partagé, les développeurs et les administrateurs d’appareils cloud travaillent ensemble :
- Les développeurs écrivent une application monocompte (les applications multicomptes ne sont pas prises en charge en mode d’appareil partagé), ajoutent
"shared_device_mode_supported": true
à la configuration de l’application et écrivent du code pour gérer des opérations comme la déconnexion des appareils partagés. - Les administrateurs d’appareils préparent l’appareil à partager en installant l’application d’authentification et en définissant l’appareil en mode partagé à l’aide de l’application d’authentification. Seuls les utilisateurs qui ont le rôle Administrateur d’appareil cloud peuvent mettre un appareil en mode partagé à l’aide de l’application d’authentification. Vous pouvez configurer l’appartenance à vos rôles organisationnels dans le centre d’administration Microsoft Entra sous :
Identité>Rôles et administrateurs>Rôles et administrateurs>Administrateur d’appareil cloud.
Cet article se concentre principalement sur les points sur lesquels les développeurs doivent réfléchir.
Applications monocomptes et multicomptes
Les applications écrites à l’aide du SDK de la bibliothèque d’authentification Microsoft (MSAL) peuvent gérer un seul compte ou plusieurs comptes. Pour plus d’informations, consultez Mode monocompte ou mode multicompte.
Les fonctionnalités de la plateforme d’identités Microsoft disponibles pour votre application varient selon que l’application s’exécute en mode monocompte ou en mode multicompte.
Les applications en mode d’appareil partagé fonctionnent uniquement en mode monocompte.
Important
Les applications qui ne prennent en charge que le mode multicompte ne peuvent pas s’exécuter sur un appareil partagé. Si un employé charge une application qui ne prend pas en charge le mode monocompte, elle ne s’exécutera pas sur l’appareil partagé.
Les applications écrites avant la publication du SDK MSAL s’exécutent en mode multicompte et doivent être mises à jour pour prendre en charge le mode monocompte avant de pouvoir s’exécuter sur un appareil en mode partagé.
Prise en charge à la fois d’un seul compte et de plusieurs comptes
Votre application peut être conçue pour prendre en charge l’exécution à la fois sur des appareils personnels et sur des appareils partagés. Si votre application prend actuellement en charge plusieurs comptes et que vous souhaitez prendre en charge le mode d’appareil partagé, ajoutez la prise en charge du mode monocompte.
Vous pouvez également souhaiter que votre application change de comportement en fonction du type d’appareil sur lequel elle s’exécute. Utilisez ISingleAccountPublicClientApplication.isSharedDevice()
pour déterminer quand elle doit exécuter en mode monocompte.
Il existe deux interfaces différentes qui représentent le type d’appareil sur lequel se trouve votre application. Lorsque vous demandez une instance d'application à partir de la fabrique d'applications de MSAL, l'objet d'application approprié est automatiquement fourni.
Le modèle d’objet suivant illustre le type d’objet que vous pouvez recevoir et ce qu’il signifie dans le contexte d’un appareil partagé :
Vous devez effectuer une vérification de type et effectuer un forçage de type (cast) vers l’interface appropriée quand vous obtenez votre objet PublicClientApplication
. Le code suivant vérifie si des modes sont multicomptes ou monocomptes, et caster en conséquence l’objet d’application :
private IPublicClientApplication mApplication;
// Running in personal-device mode?
if (mApplication instanceOf IMultipleAccountPublicClientApplication) {
IMultipleAccountPublicClientApplication multipleAccountApplication = (IMultipleAccountPublicClientApplication) mApplication;
...
// Running in shared-device mode?
} else if (mApplication instanceOf ISingleAccountPublicClientApplication) {
ISingleAccountPublicClientApplication singleAccountApplication = (ISingleAccountPublicClientApplication) mApplication;
...
}
Les différences suivantes s’appliquent selon que votre application s’exécute sur un appareil partagé ou sur un appareil personnel :
Appareil en mode partagé | Appareil personnel | |
---|---|---|
Comptes (Accounts) | Un seul compte | Plusieurs comptes |
Connexion | Global | Global |
Déconnexion | Global | Chaque application peut contrôler si la déconnexion est locale sur l’application. |
Types de comptes pris en charge | Comptes professionnels uniquement | Comptes personnels et professionnels pris en charge |
Raisons de vouloir prendre en charge uniquement le mode monocompte
Si vous écrivez une application destinée à être utilisée uniquement par des employés de terrain avec un appareil partagé, nous vous recommandons d’écrire votre application pour prendre en charge uniquement le mode monocompte. Il inclut la plupart des applications concentrées sur les tâches, comme les applications de dossiers médicaux, les applications de facturation et la plupart des applications métier. La prise en charge uniquement du mode monocompte simplifie le développement, car vous n’avez pas besoin d’implémenter les autres fonctionnalités qui font partie des applications multicomptes.
Ce qui se passe quand le mode de l’appareil change
Si votre application s’exécute en mode multicomptes et qu’un administrateur met l’appareil en mode d’appareil partagé, tous les comptes de l’appareil sont effacés de l’application et cette dernière passe en mode monocompte.
Applications Microsoft qui prennent en charge le mode d’appareil partagé
Ces applications Microsoft prennent en charge le mode d’appareil partagé Microsoft Entra :
- Microsoft Teams
- Application Microsoft Managed Home Screen pour Android Enterprise
- Microsoft Edge
- Outlook
- Microsoft Power Apps
- Microsoft Power BI Mobile
- Microsoft Viva Engage (anciennement Yammer)
- Microsoft 365 (en préversion publique)
MDM tiers qui prennent en charge le mode appareil partagé
Cette gestion des périphériques mobiles (GPM) tierce prend en charge le mode de périphérique partagé Microsoft Entra :
Déconnexion des appareils partagés et cycle de vie global des applications
Quand un utilisateur se déconnecte, vous devez prendre des mesures pour protéger sa confidentialité et ses données. Par exemple, si vous créez une application de dossiers médicaux, vous devez garantir la suppression des dossiers des patients précédemment affichés quand l’utilisateur se déconnecte. Votre application doit être préparée à la protection des données personnelles et procéder à une vérification chaque fois qu’elle passe au premier plan.
Quand votre application utilise MSAL pour déconnecter l’utilisateur dans une application en cours d’exécution sur un appareil en mode partagé, le compte connecté et les jetons mis en cache sont supprimés de l’application et de l’appareil.
Le diagramme suivant présente le cycle de vie global des applications et les événements courants qui peuvent se produire pendant que votre application s’exécute. Le diagramme présente les étapes effectuées à compter du lancement d’une activité, la connexion et la déconnexion d’un compte, ainsi que la façon dont des événements tels que la suspension, la reprise et l’arrêt de l’activité s’intègrent.
Étapes suivantes
Pour plus d’informations sur l’exécution d’une application de travailleur de première ligne sur un mode partagé sur un appareil Android, consultez :
Commentaires
https://aka.ms/ContentUserFeedback.
Prochainement : Tout au long de l'année 2024, nous supprimerons progressivement les GitHub Issues en tant que mécanisme de retour d'information pour le contenu et nous les remplacerons par un nouveau système de retour d'information. Pour plus d’informations, voir:Soumettre et afficher des commentaires pour