Gestion des applications mobiles : encapsulation ou conteneurisation ?
Encapsulation et conteneurisation sont des composants clés du MAM, la gestion des applications mobiles. Elles visent à résoudre le même problème, mais avec des approches différentes.
La gestion des applications mobiles (MAM), donne aux DSI un contrôle plus granulaire sur celles-ci, sur les usages qui en sont faits, et permet de séparer applications professionnelles et applications personnelles. Conteneurisation et encapsulation permettent d’atteindre ces objectifs. Ainsi, le MAM permet de protéger les applications et données sensibles dans des environnements en bac à sable, dotés de leurs propres contrôles offrant des niveaux de sécurité plus élevés.
Comment fonctionne la conteneurisation
La conteneurisation touche au code applicatif : celui-ci doit s’intégrer avec un kit de développement (SDK) fourni par l’éditeur de la solution de gestion de la mobilité d’entreprise (EMM) ou de MAM.
Le SDK permet au développeur d’apporter un support natif de la conteneurisation au sein de ses applications, pour liant ainsi à la plateforme de MAM. Il peut également exposer des services partagés à d’autres applications personnalisées et accéder à ceux publiés par ces dernières.
L’intégration avec le SDK d’un éditeur spécifique peut constituer une stratégie efficace. Mais cette approche risque de limiter la capacité de l’organisation à se tourner vers un autre fournisseur de solution de MAM : il est alors nécessaire de reprendre le code source, même si les modifications peuvent n’être que minimes, et de recompiler.
Et c’est sans compter la fragmentation créée sur le marché : un éditeur indépendant ne va pas compiler différentes versions de ses applications pour chaque SDK de spécialiste de l’EMM.
Comment fonctionne l’encapsulation
L’encapsulation est bien plus simple. Là, des librairies dynamiques fournies par l’éditeur de la solution d’EMM/MAM sont ajoutées aux binaires natifs de l’application, après sa compilation. Les développeurs n’ont dès lors pas à intégrer leur code avec le SDK ou les API de la solution de MAM. En fait, l’encapsulation ne nécessite aucun travail de développement. L’administration de la solution d’EMM/MAM peut ajouter des contrôles de sécurité à une application sans avoir à accéder à son code source, souvent en quelques clics via la console d’administration.
L’encapsulation remplace les appels système standard de l’application par des appels équivalents sécurisés, gérés par les librairies de l’éditeur de la solution d’EMM, schématiquement en ajoutant une couche de sécurité autour de l’application, pour permettre son contrôle et sa protection.
L’encapsulation est une solution remarquable lorsque l’on n’a pas accès au code source, que l’on dispose de ressources de développement limitées, ou que l’on doit rapidement déployer l’application concernée.
Encapsulation ou conteneurisation ?
Mais l’encapsulation ne supporte pas certaines fonctionnalités plus sophistiquées que peut offrir la conteneurisation, comme la possibilité de publier et d’utiliser des services partagés. En outre, l’encapsulation peut être entrer en conflit avec les conditions de licence des applications du commerce. Malgré son côté non intrusif, le processus consistant à ajouter une couche de sécurité est susceptible de violer les conditions d’utilisation d’une application. Sans compter les réglementations sur la propriété intellectuelle potentiellement applicables.
Mais à moins d’avoir besoin des fonctionnalités spécifiquement offertes par la conteneurisation, comme le partage de documents sécurisé entre applications, l’encapsulation reste la solution la plus pratique.
Adapté de l’anglais.