Guide du développeur MDX

Citrix Endpoint Management est une solution d’entreprise qui vous permet de gérer des appareils, des applications et des données mobiles. Le principe de la gestion d’application mobile (MAM) de Endpoint Management consiste à injecter la fonctionnalité d’entreprise dans des applications préexistantes qui sont ensuite hébergées sur le magasin d’applications privé d’une entreprise, Apple App Store ou Google Play Store.

Pour ajouter la fonctionnalité d’entreprise de Endpoint Management à des applications mobiles, vous devez les encapsuler avec le MDX Toolkit. Le MDX Toolkit est une technologie de conteneur d’application qui améliore l’expérience sur les appareils mobiles et prépare les applications en vue de sécuriser le déploiement avec Endpoint Management en ajoutant les fonctionnalités MDX. Les fonctionnalités MDX comprennent les stratégies et les paramètres, les certificats de sécurité signés et le code de gestion des applications mobiles.

Le MDX Toolkit comprend le SDK de l’application MDX, qui procure un ensemble complet de fonctionnalités MDX à vos applications mobiles via la technologie de conteneur d’application Citrix MDX. Les API vous offrent les possibilités suivantes.

  • Effectuer des actions dans des applications encapsulées sur la base de stratégies Endpoint Management. À titre d’exemple, si une stratégie Endpoint Management empêche le couper-coller dans une application MDX, vous pouvez empêcher la sélection de texte dans votre application. Votre application peut communiquer et partager des stratégies avec d’autres applications MDX.
  • Détecter les activités dans vos applications MDX. Par exemple, vous pouvez vérifier si une application est encapsulée ou gérée.
  • Ajouter des fonctionnalités personnalisées, telles que la sécurité et l’application des stratégies.
  • Développer des applications mobiles qui s’exécuteront à l’intérieur ou à l’extérieur d’un environnement Citrix.

    Non seulement les applications qui utilisent le SDK de l’application MDX peuvent être configurées de façon centralisée avec des stratégies MDX lorsqu’elles sont utilisées avec Endpoint Management, ces applications peuvent aussi fonctionner en mode autonome en dehors des environnements Citrix.

Nouveautés du SDK de l’application MDX 10.2

La version 10.2 du SDK de l’application MDX pour iOS comprend ces améliorations et ces mises à jour.

La stratégie Classe de protection des données minimum est masquée. Pour rendre la stratégie visible dans Citrix Endpoint Management, ouvrez le fichier policymetadata.xml associé à l’application (dans Applications/Citrix/MDXToolkit/data) et, dans la section MinimumDataProtectionClass, modifiez la valeur de PolicyHidden sur false. Après avoir encapsulé votre application, la stratégie s’affiche lorsque vous ajoutez l’application à Citrix Endpoint Management.

Intégration de l’encapsulation d’application avec processus de création Xcode. Les développeurs peuvent maintenant encapsuler et publier une application iOS dans le cadre du processus de création de Xcode. Pour plus d’informations, voir Intégration du SDK dans votre bibliothèque d’applications.

Prise en charge de coffre partagé dans les applications Android. Le SDK de l’application MDX inclut désormais l’API Android pour la fonctionnalité de coffre partagé MDX, ce qui vous permet de partager un contenu géré entre les applications. Par exemple, le coffre sécurisé permet le partage de certificats et de clés privées par le biais d’une application inscrite de façon à ce que les applications puissent obtenir un certificat depuis le coffre sécurisé plutôt que depuis Secure Hub. Pour de plus amples informations, consultez la section API XenMobile pour Android.

Remarque :

les développeurs doivent veiller à tester les applications encapsulées qui effectuent un traitement en arrière-plan, tel que l’actualisation du contenu sur un appareil verrouillé ou les synchronisations en arrière-plan.

Capacités MAM

La fonctionnalité d’entreprise ajoutée par Endpoint Management est contrôlée au travers de stratégies que les administrateurs mettent à jour au niveau de l’application à partir de la console Endpoint Management. Endpoint Management force les stratégies vers les appareils mobiles selon la planification établie par les administrateurs. Les stratégies gèrent des fonctionnalités, telles que les suivantes :

  • Authentification. Lors de l’ouverture d’une application gérée, Endpoint Management peut demander aux utilisateurs d’entrer des informations d’identification d’entreprise ou un code PIN. Cette vérification d’informations d’identification peut être répétée régulièrement.
  • Mises à jour d’applications. Endpoint Management notifie les utilisateurs lorsque des mises à jour d’applications gérées sont disponibles. L’administrateur peut rendre les mises à jour obligatoires dans un certain délai. Si un utilisateur n’accepte pas une mise à jour, l’ancienne version de l’application ne pourra plus être exécutée une fois que le délai aura expiré.
  • Verrouillage et effacement à distance. Un administrateur peut verrouiller temporairement ou effacer de manière permanente des applications par application ou par périphérique.
  • Restrictions réseau et VPN. Une stratégie Endpoint Management contrôle l’accès réseau : l’accès peut être bloqué, routé via un VPN complet, ou routé via un VPN proxy. Le routage VPN s’effectue via un boîtier Citrix Gateway hébergé par l’entreprise.
  • Restrictions de communication entre les applications. Une stratégie Endpoint Management détermine si le partage de documents entre les applications est bloqué ou autorisé uniquement entre des applications gérées. Par conséquent, la fenêtre « Ouvrir dans » dans votre application peut ignorer les applications non gérées.
  • Contention des fonctionnalités. Les stratégies Endpoint Management peuvent désactiver les capacités d’un appareil pour une application, parmi lesquelles la caméra, le micro et le capteur de localisation.

Composants Endpoint Management

Les composants Endpoint Management suivants offrent des fonctionnalités MAM.

  • Serveur Citrix Endpoint Management

    Ce serveur d’entreprise ou résidant sur le cloud héberge Citrix Endpoint Management Store, le magasin d’applications interne. Les administrateurs peuvent charger des applications mobiles vers Endpoint Management et configurer les stratégies d’application et d’appareil.

  • Secure Hub

    Les utilisateurs d’entreprise installent Secure Hub pour Android ou iOS sur leur appareil mobile, puis configurent l’application avec une adresse URL d’inscription et des informations d’identification. Lorsque Secure Hub s’ouvre, les utilisateurs sélectionnent les applications d’entreprise à partir de Citrix Endpoint Management Store. Une fois que les applications ont été téléchargées et installées sur l’appareil, Secure Hub est utilisé comme hub pour la gestion de ces applications, exécutant certaines tâches telles que l’authentification utilisateur et les mises à jour de stratégies administrées de façon centrale.

  • MDX

    MDX est la source des fonctionnalités MAM. Le MDX Toolkit ajoute le code MDX à votre application mobile. Outre l’encapsulation d’applications, vous ne travaillez pas directement avec le code MDX.

  • MDX Toolkit et SDK de l’application MDX

    Le MDX Toolkit ajoute la fonctionnalité d’entreprise aux applications mobiles, un processus appelé encapsulation d’application. Le SDK de l’application MDX permet aux développeurs et aux intégrateurs de systèmes d’activer MDX pour leurs applications mobiles. L’encapsulation d’application effectue trois tâches principales. Tout d’abord, il injecte le code Citrix dans votre application qui implémente les fonctionnalités de gestion l’application. Le résultat de cette tâche est un nouveau fichier d’application. Ensuite, l’encapsulation d’application signe le nouveau fichier d’application avec un certificat de sécurité. Enfin, l’encapsulation d’application crée un fichier MDX, qui contient des informations de stratégie et d’autres paramètres. Dans certains cas, le fichier d’application signé est également directement contenu dans le fichier MDX.

Ce guide de développeur se concentre sur l’encapsulation d’application pour les éditeurs de logiciels (ISV).

Modes gérés et non gérés pour les applications ISV

Le SDK de l’application MDX propose un comportement d’application en mode double, ce qui vous permet de déployer des applications pouvant être exécutées avec ou sans l’infrastructure MDX. Les applications qui sont exécutées indépendamment de Secure Hub sont appelées applications non gérées. Lorsque ces applications répondent à certaines conditions, elles deviennent des applications gérées et s’exécutent sous le contrôle de Secure Hub.

Le comportement en mode double est différent du comportement des applications MDX déployées directement depuis le principal Endpoint Management. Ces applications nécessitent toujours la présence de Citrix MDX et l’autorisation d’un magasin Endpoint Management Store pour s’exécuter. Avec Intune, toutefois, ces applications peuvent être déployées et gérées en l’absence de Secure Hub ou de Endpoint Management Store.

Vous pouvez utiliser les API Endpoint Management pour spécifier le type de comportement en mode double nécessaire lors de l’intégration avec une application MDX. Vous pouvez développer deux versions d’une application, une non gérée et une autre gérée, ou développer une seule application à utiliser dans les deux cas et à inclure dans MDX. L’infrastructure MDX applique les comportements par défaut associés aux applications gérées et non gérées.

La transition d’une application non gérée vers le mode géré diffère selon que l’application est encapsulée en tant qu’application General ou application Premium :

  • Application General : une application General est hébergée sur l’App Store d’Apple ou Google Play Store. Les utilisateurs qui ne disposent pas de Secure Hub peuvent télécharger et exécuter l’application normalement dans un mode non géré, comme n’importe quel magasin d’applications générique. Si un utilisateur non géré installe Secure Hub ultérieurement, l’application ISV passe au mode géré si ces conditions sont remplies.

    • L’utilisateur ouvre une session sur un magasin d’entreprise de Citrix Endpoint Management au moins une fois.

    • L’utilisateur se trouve dans un groupe de mise à disposition Endpoint Management vers lequel l’application est déployée.

    • MDX abonne l’utilisateur.

    • Lorsqu’il y est invité, l’utilisateur confirme que son entreprise peut gérer l’application.

      Si un utilisateur bloque la gestion d’application d’entreprise, il peut continuer à exécuter l’application à des fins personnelles.

  • Application Premium : une application Premium est une application destinée aux utilisateurs de votre entreprise. Les applications Citrix MDX sont des exemples d’applications Premium. Bien que les applications Premium s’exécutent généralement en mode géré, l’infrastructure MDX intégrée permet aux applications Premium de s’exécuter en mode non géré avec un ensemble par défaut de stratégies MDX que vous définissez au travers des fichiers de stratégie par défaut. Par conséquent, vous pouvez contrôler le comportement de l’application et utiliser les fonctionnalités MDX, même si l’utilisateur n’est pas associé à un compte d’entreprise.

    Si un utilisateur non géré installe Secure Hub ultérieurement, l’application passe de façon silencieuse au mode géré si ces conditions sont remplies.

    • L’utilisateur se trouve dans un groupe de mise à disposition Citrix Endpoint Management vers lequel l’application est déployée.
    • L’utilisateur ouvre une session sur Secure Hub si nécessaire.
    • MDX abonne l’utilisateur.

Remarque

Une application ne peut pas passer du mode géré au mode non géré.

Le diagramme suivant illustre les différences entre les applications General et Premium, selon qu’elles sont gérées ou non gérées.

Image du diagramme des différences entre les applications General et Premium

Encapsulation d’applications ISV

Cette section fournit des informations générales sur l’encapsulation d’applications pour les éditeurs de logiciels (ISV). L’encapsulation d’applications réalisée par les administrateurs d’entreprise est abordée dans la section À propos de l’outil MDX Toolkit.

Lorsque vous encapsulez des applications ISV, le MDX Toolkit crée deux fichiers : un fichier .mdx et le fichier applicatif (.ipa, .app ou .apk). Le MDX Toolkit vous permet d’incorporer l’URL du magasin d’applications dans le fichier .mdx que vous pouvez mettre à disposition des clients ou télécharger vers Citrix Ready Marketplace, comme décrit dans la section suivante. Vous pouvez alors mettre le fichier d’application à disposition via des magasins d’applications, en l’hébergeant vous-même, ou en le distribuant auprès de vos clients.

Comme illustré dans le diagramme suivant, le MDX Toolkit combine des fichiers applicatifs (.ipa, .app ou .apk) avec des composants Citrix et votre keystore ou certificat de signature pour produire un fichier .mdx et le fichier d’application modifié.

Diagramme des entrées MDX Toolkit et de sortie pour l'encapsulation d'application ISV

Les éléments ajoutés par l’encapsulation d’application ISV sont les suivants :

  • Un fichier d’informations contenant les données requises par l’infrastructure SDK MDX lorsque l’infrastructure est liée à Secure Hub. Les informations de liaison correspondantes sont transmises à Secure Hub depuis le serveur Endpoint Management via le fichier .mdx ajouté à Endpoint Management. Les données contiennent différents éléments, tels qu’un ID d’application utilisé pour l’auto-identification et un ID de package utilisé pour les vérifications de mise à jour de l’application.
  • Une empreinte numérique FIPS sur le OpenSSL FIPS Object Module Crypto incorporé dans l’application intégrée au SDK de l’application MDX.
  • Pour iOS uniquement : un nouveau modèle d’URL qui est ajouté au fichier d’application et qui est également transmis à Secure Hub via le fichier .mdx qu’un administrateur ajoute à Endpoint Management.

À propos du programme Citrix Ready

Citrix évalue et certifie les applications ISV via le programme Citrix Ready. L’évaluation implique principalement des tests d’intégration de Endpoint Management. La certification garantit que les applications sont compatibles avec l’infrastructure Endpoint Management, ce qui permet aux entreprises d’utiliser vos applications en toute confiance.

Dans le cadre de ce programme Citrix Ready, vous pouvez publier les fichiers binaires de vos applications ISV certifiées directement dans l’App Store d’Apple ou Google Play Store. Cela signifie que vous n’avez pas besoin de distribuer les fichiers binaires aux entreprises, vous donnant un contrôle plus important sur les mises à jour de l’application. En outre, les applications sont signées avec votre certificat ISV. Vous pouvez également choisir de distribuer vos applications certifiées directement auprès des entreprises ou de les héberger vous-même.

Vous pouvez également choisir de distribuer le bundle .mdx pour une application ISV : publiez le bundle sur Citrix Ready Marketplace ou distribuez le bundle directement auprès de vos clients Citrix Endpoint Management.

Pour plus de détails, consultez Citrix Ready.

Expérience utilisateur de l’application MDX

La manière dont les utilisateurs interagissent avec une application intégrée au SDK de l’application MDX dépend de la façon dont ils installent et lancent l’application.

L’utilisateur démarre avec Secure Hub

  1. L’utilisateur ouvre Secure Hub et l’App Store d’Apple ou Google Play Store.
  2. L’utilisateur ouvre une session sur Endpoint Management Store, puis s’abonne au magasin.
  3. L’utilisateur télécharge et installe l’application à partir d’un magasin public.
  4. Secure Hub invite l’utilisateur à se connecter, si nécessaire.
  5. Si l’application était non gérée, elle passe au mode géré de manière silencieuse.

L’utilisateur démarre avec l’App Store d’Apple ou Google Play Store

Si Secure Hub est déjà présent sur l’appareil, les procédures sont les suivantes pour les applications General et Premium.

Application General

  1. L’utilisateur lance l’application.

  2. Si l’application détecte une installation de Secure Hub et que l’application y est autorisée, l’application invite l’utilisateur à confirmer la transition vers le mode géré.

  3. Si l’utilisateur accepte que son entreprise gère l’application, Secure Hub invite l’utilisateur à se connecter, si nécessaire.

  4. Une fois que MDX a inscrit l’application pour l’utilisateur, l’application passe en mode géré.

    Si l’application Secure Hub ne se trouve pas sur l’appareil ou si l’application n’est pas autorisée, l’application s’exécute en mode non géré, comme une application de magasin d’applications public standard.

Application Premium

  1. L’utilisateur lance l’application.
  2. Si l’application détecte une installation de Secure Hub et que l’application y est autorisée, l’application passe en mode géré de façon silencieuse. Si des informations d’identification Secure Hub sont requises, l’application informe l’utilisateur de la transition vers le mode géré et invite l’utilisateur à ouvrir une session.

Problèmes connus avec le SDK de l’application MDX