Guide du développeur MDX

Citrix Endpoint Management™ est une solution d’entreprise qui vous permet de gérer les appareils mobiles, les applications et les données. Le principe de base de la gestion des applications mobiles (MAM) d’Endpoint Management est qu’elle injecte des fonctionnalités d’entreprise dans des applications préexistantes, qui sont ensuite hébergées sur le magasin d’applications privé d’une entreprise, l’Apple App Store ou le Google Play Store.

  • Pour ajouter des fonctionnalités d’entreprise Endpoint Management aux applications mobiles, vous les encapsulez avec le MDX Toolkit. Le MDX Toolkit est une technologie de conteneur d’applications qui améliore l’expérience des appareils mobiles et prépare les applications pour un déploiement sécurisé avec Endpoint Management en ajoutant des capacités MDX. Les capacités MDX incluent des stratégies et des paramètres, des certificats de sécurité signés et du code de gestion des applications mobiles.

  • Le MDX Toolkit inclut le SDK d’application MDX, qui fournit un ensemble complet de capacités MDX à vos applications mobiles via la technologie de conteneur d’applications Citrix MDX. Les API vous permettent de :

  • Effectuer des actions dans les applications encapsulées basées sur les stratégies Endpoint Management. Par 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 compatibles MDX.
  • Détecter les activités au sein de vos applications compatibles 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.

    En plus d’être configurables de manière centralisée avec les stratégies MDX lorsqu’elles sont utilisées avec Endpoint Management, les applications qui utilisent le SDK d’application MDX peuvent fonctionner de manière autonome en dehors des environnements Citrix.

Nouveautés du SDK d’application MDX 10.2

La version 10.2 du SDK d’application MDX pour iOS inclut les améliorations et mises à jour suivantes.

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

  • Intégration de l’encapsulage d’applications au processus de build Xcode. Les développeurs peuvent désormais encapsuler et publier une application iOS dans le cadre du processus de build Xcode. Pour plus de détails, consultez Intégration du SDK à votre bibliothèque d’applications.

  • Prise en charge du coffre-fort partagé dans les applications Android. Le SDK d’application MDX inclut désormais l’API Android pour la fonctionnalité de coffre-fort partagé MDX, vous permettant de partager du contenu géré entre les applications. Par exemple, le coffre-fort partagé permet le partage de certificats et de clés privées via une application inscrite afin que les applications puissent obtenir un certificat du coffre-fort sécurisé au lieu de Secure Hub. Pour plus de détails, consultez API XenMobile pour Android.

Remarque :

  • Développeurs, assurez-vous de tester les applications encapsulées qui effectuent un traitement en arrière-plan, tels que les actualisations de contenu sur un appareil verrouillé ou les synchronisations en arrière-plan.

  • Capacités MAM

  • Les fonctionnalités d’entreprise ajoutées par Endpoint Management sont contrôlées par des stratégies que les administrateurs mettent à jour application par application depuis la console Endpoint Management. Endpoint Management transmet les stratégies aux appareils mobiles selon le calendrier défini 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 exiger des utilisateurs qu’ils saisissent des informations d’identification d’entreprise ou un code PIN. Cette demande d’informations d’identification peut être répétée périodiquement.
  • Mises à jour d’applications. Endpoint Management informe 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 s’exécutera pas après l’expiration du délai.
  • Verrouillage et effacement à distance. Un administrateur peut verrouiller temporairement ou effacer définitivement des applications application par application ou appareil par appareil.
    • Restrictions réseau et VPN. Une stratégie Endpoint Management contrôle l’accès réseau : L’accès peut être bloqué, acheminé via un VPN complet ou acheminé via un VPN proxy. Le routage VPN s’effectue via un appareil 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 les applications gérées. Ainsi, la fenêtre contextuelle « Ouvrir dans » de votre application peut omettre les applications non gérées.
    • Restriction des fonctionnalités. Les stratégies Endpoint Management peuvent désactiver diverses capacités de l’appareil pour une application. Les exemples incluent l’appareil photo, le microphone et le capteur de localisation.

Composants Endpoint Management

-  Les composants Endpoint Management suivants fournissent la fonctionnalité MAM.
  • Serveur Citrix Endpoint Management

    Ce serveur résidentiel d’entreprise ou cloud héberge le Citrix Endpoint Management Store, le magasin d’applications interne. Les administrateurs téléchargent des applications mobiles vers Endpoint Management, puis configurent 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 URL d’inscription d’appareil et des informations d’identification. Lorsque Secure Hub s’ouvre, les utilisateurs sélectionnent des applications d’entreprise dans le Citrix Endpoint Management Store. Une fois les applications téléchargées et installées sur l’appareil, Secure Hub sert de hub pour la gestion de ces applications, effectuant des tâches telles que l’authentification des utilisateurs et les mises à jour des stratégies administrées de manière centralisée.
    • MDX

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

  • MDX Toolkit et SDK d’application MDX

    Le MDX Toolkit ajoute des fonctionnalités d’entreprise aux applications mobiles existantes, un processus appelé encapsulage d’applications. Le SDK d’application MDX permet aux développeurs et aux intégrateurs de systèmes de rendre leurs applications mobiles compatibles MDX. L’encapsulage d’applications effectue trois tâches principales. Premièrement, il injecte du code Citrix dans votre application qui implémente les capacités de gestion d’applications. Le résultat de cette tâche est un nouveau fichier d’application. Deuxièmement, l’encapsulage d’applications signe le nouveau fichier d’application avec un certificat de sécurité. Enfin, l’encapsulage d’applications crée un fichier MDX, qui contient des informations de stratégie et d’autres paramètres. Dans certaines situations, le fichier d’application signé est également directement contenu dans le fichier MDX.

Ce guide du développeur se concentre sur l’encapsulage d’applications pour les ISV.

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

Le SDK d’application MDX offre un comportement d’application à double mode, vous permettant de déployer des applications qui peuvent s’exécuter avec ou sans l’infrastructure MDX. Les applications qui s’exécutent indépendamment de Secure Hub sont appelées applications non gérées. Lorsque ces applications remplissent certaines conditions, elles passent en applications gérées et s’exécutent sous le contrôle de Secure Hub.

  • Le comportement à double mode contraste avec les applications MDX déployées directement depuis le backend Endpoint Management. Ces applications nécessitent toujours la présence de Citrix MDX et une autorisation d’un Endpoint Management Store pour s’exécuter. Avec Intune, cependant, ces applications peuvent être déployées et gérées sans la présence de Secure Hub ou de l’Endpoint Management Store.

  • Vous utilisez les API Endpoint Management pour spécifier le type de comportement à double mode requis lors de l’intégration d’une application avec MDX. Vous pouvez développer deux versions d’application, une non gérée et une gérée, ou une seule application pour une utilisation indépendante et pour l’inclusion dans MDX. Le framework MDX applique les comportements par défaut associés aux applications non gérées et gérées.

La façon dont une application passe du mode non géré au mode géré dépend si l’application est encapsulée en tant qu’application Générale ou Premium :

  • Application générale : Une application générale est hébergée sur l’Apple App Store ou le Google Play Store. Les utilisateurs qui n’ont pas Secure Hub peuvent télécharger et exécuter l’application normalement en mode non géré, tout comme n’importe quelle application générique de l’App Store. Si un utilisateur non géré installe ensuite Secure Hub, l’application ISV passe en mode géré si ces conditions sont remplies.

    • L’utilisateur se connecte à un magasin d’entreprise Citrix Endpoint Management au moins une fois.

    • L’utilisateur fait partie d’un groupe de mise à disposition Endpoint Management auquel l’application est déployée.

    • MDX abonne l’utilisateur.

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

      Si un utilisateur refuse la gestion des applications d’entreprise, il peut continuer à exécuter l’application pour un usage personnel.

  • Application Premium : Une application Premium est une application destinée aux utilisateurs d’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é, le framework MDX intégré permet aux applications Premium de s’exécuter en mode non géré avec un ensemble de stratégies MDX par défaut que vous définissez via des fichiers de stratégie par défaut. Ainsi, vous pouvez contrôler efficacement 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 ultérieurement Secure Hub, l’application passe silencieusement en mode géré si les conditions suivantes sont remplies.

    • L’utilisateur fait partie d’un groupe de mise à disposition Citrix Endpoint Management auquel l’application est déployée.
    • L’utilisateur se connecte à 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 récapitule les différences entre les applications Générales et Premium, selon qu’elles sont gérées ou non gérées.

Image du diagramme des différences entre les applications Générales et Premium

Encapsulation d’applications ISV

Cette section fournit des informations générales sur l’encapsulation d’applications pour les ISV. L’encapsulation d’applications effectuée par les administrateurs d’entreprise est abordée dans À propos du MDX Toolkit.

Lorsque vous encapsulez des applications ISV, le MDX Toolkit crée deux fichiers : un fichier .mdx et le fichier d’application (.ipa, .app ou .apk). Le MDX Toolkit vous permet d’intégrer l’URL de l’App Store dans le fichier .mdx, que vous livrez ensuite directement à vos clients ou téléchargez sur le Citrix Ready Marketplace™, comme décrit dans la section suivante. Vous livrez le fichier d’application via les App Stores, en l’hébergeant vous-même ou en le distribuant à vos clients.

Comme le montre le diagramme suivant, le MDX Toolkit combine les fichiers d’application (.ipa, .app ou .apk) avec les composants Citrix et votre magasin de clés ou certificat de signature pour produire un fichier .mdx et le fichier d’application modifié.

Diagramme des entrées et sorties du MDX Toolkit pour l'encapsulation d'applications ISV

Les éléments ajoutés par l’encapsulation d’applications ISV incluent :

  • Un fichier d’informations contenant les données nécessaires au framework MDX SDK lorsque le framework se lie à 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 incluent des é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 d’application.
  • Une empreinte FIPS sur le module d’objet cryptographique FIPS OpenSSL intégré à l’application intégrée au MDX App SDK.
  • Pour iOS uniquement : Un nouveau schéma d’URL qui est ajouté au fichier d’application et 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 d’Endpoint Management. La certification garantit que les applications sont compatibles avec l’infrastructure Endpoint Management, ce qui donne aux entreprises confiance en vos applications.

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

Vous pouvez également choisir comment distribuer le bundle .mdx pour une application ISV : Soit publier le bundle sur le Citrix Ready Marketplace, soit distribuer le bundle directement à 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 MDX App SDK dépend de la façon dont ils installent et démarrent l’application.

L’utilisateur démarre avec Secure Hub

  1. L’utilisateur ouvre Secure Hub et l’Apple App Store ou le Google Play Store.
  2. L’utilisateur se connecte à l’Endpoint Management Store, puis s’abonne au Store.
  3. L’utilisateur télécharge et installe l’application depuis un Store public.
  4. Secure Hub invite l’utilisateur à se connecter, si nécessaire.
  5. Si l’application était précédemment non gérée, elle passe silencieusement en mode géré.

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

Si Secure Hub est déjà présent sur l’appareil, les utilisateurs ont l’expérience suivante pour les applications Générales et Premium.

Application Générale

  1. L’utilisateur démarre l’application.

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

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

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

    Si Secure Hub n’est 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 Store public ordinaire.

Application Premium

  1. L’utilisateur démarre l’application.
  2. Si l’application détecte une installation de Secure Hub et que l’application est autorisée, l’application passe silencieusement en mode géré. Si des informations d’identification Secure Hub sont requises, l’application informe l’utilisateur de la transition vers le mode géré et l’invite à se connecter.

Problèmes connus du MDX App SDK

Guide du développeur MDX