Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Utilisez le Microsoft Intune App Wrapping Tool pour iOS pour activer Intune stratégies de protection des applications pour les applications iOS internes sans modifier le code de l’application elle-même.
L’outil est une application en ligne de commande macOS qui crée un wrapper autour d’une application. Une fois qu’une application est traitée, vous pouvez modifier les fonctionnalités de l’application en y déployant des stratégies de protection des applications.
Pour télécharger l’outil, consultez Microsoft Intune App Wrapping Tool pour iOS sur GitHub.
Remarque
Si vous rencontrez des problèmes lors de l’utilisation de la Intune App Wrapping Tool avec vos applications, envoyez une demande d’assistance sur GitHub.
Conditions préalables générales pour le App Wrapping Tool
Avant d’exécuter le App Wrapping Tool, vous devez remplir certaines conditions préalables générales :
Téléchargez le Microsoft Intune App Wrapping Tool pour iOS à partir de GitHub.
Un ordinateur macOS sur lequel l’ensemble d’outils Xcode version 16.0 ou ultérieure est installé.
Votre entreprise ou un éditeur de logiciels indépendant (ISV) doit développer et signer l’application iOS d’entrée.
Le fichier doit avoir l’extension .ipa ou .app.
Il doit être compilé pour iOS 16.0 ou version ultérieure.
il ne peut pas être chiffré.
Aucun attribut de fichier étendu.
Définissez les droits avant de traiter l’application avec le Intune App Wrapping Tool. Les droits d’utilisation donnent à l’application davantage d’autorisations et de fonctionnalités que les autorisations généralement accordées. Pour obtenir des instructions, consultez Définition des droits d’application .
- Vérifiez que des certificats de signature valides existent dans votre trousseau système. Si vous rencontrez des problèmes de signature de code d’application, procédez comme suit pour résoudre :
- Réinitialiser les paramètres d’approbation pour tous les certificats associés
- Installer des certificats intermédiaires dans le trousseau système et le trousseau de connexion
- Désinstaller et réinstaller tous les certificats associés
Inscrire votre application auprès de Microsoft Entra ID
- Inscrivez vos applications avec Microsoft Entra ID. Pour plus d’informations, consultez Inscrire une application avec le Plateforme d'identités Microsoft.
- Ajoutez l’URL de redirection personnalisée aux paramètres de votre application. Pour plus d’informations, consultez Configuration de MSAL.
- Donnez à votre application l’accès au service GAM Intune. Pour plus d’informations, consultez Accorder à votre application l’accès au service de gestion des applications mobiles Intune.
- Une fois les modifications ci-dessus terminées, exécutez la dernière version de l’outil de création de package de restrictions d’application Intune. Configurer vos applications pour la bibliothèque d’authentification Microsoft (MSAL) : ajoutez l’ID client de l’application Microsoft Entra aux paramètres de ligne de commande avec le Intune App Wrapping Tool. Pour plus d’informations, consultez Paramètres de ligne de commande.
Remarque
Les paramètres -ac et -ar sont des paramètres obligatoires. Chaque application a besoin d’un ensemble unique de ces paramètres.
-aa est requis uniquement pour les applications monolocataires.
- Déployez l’application.
Conditions préalables pour les développeurs Apple pour le App Wrapping Tool
Pour distribuer des applications encapsulées exclusivement aux utilisateurs de votre organization, vous avez besoin d’un compte avec le programme Apple Developer Enterprise et de plusieurs entités pour la signature d’application liées à votre compte de développeur Apple.
Pour en savoir plus sur la distribution d’applications iOS en interne aux utilisateurs de votre organization, consultez le guide officiel de distribution des applications du programme d’entreprise pour les développeurs Apple.
Vous avez besoin des éléments suivants pour distribuer les applications encapsulées par Intune :
Un compte de développeur avec le programme Apple Developer Enterprise.
Certificat de signature de distribution interne et ad hoc avec identificateur d’équipe valide.
- Vous avez besoin du hachage SHA1 du certificat de signature en tant que paramètre pour le Intune App Wrapping Tool.
Profil d’approvisionnement de distribution interne.
Créer un compte Apple Developer Enterprise
Accédez au site Apple Developer Enterprise Program.
En haut à droite de la page, sélectionnez Inscrire.
Lisez la liste de contrôle de ce dont vous avez besoin pour vous inscrire. Sélectionnez Démarrer votre inscription en bas de la page.
Connectez-vous avec le compte Apple de votre organization. Si vous n’en avez pas, sélectionnez Créer un compte Apple.
Sélectionnez votre type d’entité , puis sélectionnez Continuer.
Remplissez le formulaire avec les informations de votre organization. Cliquez sur Continuer. À ce stade, Apple vous contacte pour vérifier que vous êtes autorisé à inscrire votre organization.
Après la vérification, sélectionnez Accepter la licence.
Après avoir accepté la licence, terminez en achetant et en activant le programme.
Si vous êtes l’agent d’équipe (la personne qui rejoint le programme Apple Developer Enterprise pour votre organization), invitez des membres de l’équipe et attribuez des rôles pour créer votre équipe. Pour savoir comment gérer votre équipe, lisez la documentation Apple sur La gestion de votre équipe de compte de développeur.
Créer un certificat de signature Apple
Accédez au portail des développeurs Apple.
En haut à droite de la page, sélectionnez Compte.
Connectez-vous avec votre compte Apple professionnel.
Sélectionnez Certificats, ID & Profils.
Sélectionnez le
dans le coin supérieur droit. Cette action ajoute un certificat iOS.Choisissez de créer un certificat interne et ad hoc sous Production.
Remarque
Si vous n’envisagez pas de distribuer l’application et que vous souhaitez uniquement la tester en interne, vous pouvez utiliser un certificat de développement d’applications iOS au lieu d’un certificat pour la production. Si vous utilisez un certificat de développement, assurez-vous que le profil d’approvisionnement mobile inclut les appareils sur lesquels vous prévoyez d’installer l’application.
Sélectionnez Suivant en bas de la page.
Lisez les instructions sur la création d’une demande de signature de certificat (CSR) à l’aide de l’application Trousseau d’accès sur votre ordinateur macOS.
Suivez les instructions précédentes pour créer une demande de signature de certificat. Sur votre ordinateur macOS, lancez l’application Trousseau d’accès .
Dans le menu macOS en haut de l’écran, accédez à Keychain Access > Certificate Assistant > Demander un certificat auprès d’une autorité de certification.
Suivez les instructions du site du développeur Apple pour créer un fichier de demande de signature de certificat (CSR). Enregistrez le fichier CSR sur votre ordinateur macOS.
Revenez au site du développeur Apple. Cliquez sur Continuer. Chargez ensuite le fichier CSR.
Apple génère votre certificat de signature. Téléchargez et enregistrez-le dans un emplacement mémorable sur votre ordinateur macOS.
Double-cliquez sur le fichier de certificat que vous avez téléchargé pour ajouter le certificat à un trousseau.
Ouvrez à nouveau l’accès au trousseau . Recherchez votre certificat en recherchant son nom dans la barre de recherche en haut à droite. Cliquez avec le bouton droit sur l’élément pour afficher le menu et sélectionnez Obtenir des informations. Dans les exemples d’écrans, nous utilisons un certificat de développement au lieu d’un certificat de production.
Une fenêtre d’information s’affiche. Faites défiler vers le bas et regardez sous l’étiquette Empreintes digitales . Copiez la chaîne SHA1 (floue) à utiliser comme argument pour « -c » pour le App Wrapping Tool.
Créer un profil d’approvisionnement de distribution In-House
Retour au portail du compte de développeur Apple et connectez-vous avec votre compte Apple professionnel.
Sélectionnez Certificats, ID & Profils.
Sélectionnez le
dans le coin supérieur droit. Cette action ajoute un profil d’approvisionnement iOS.Choisissez de créer un profil d’approvisionnement interne sous Distribution.
Cliquez sur Continuer. Veillez à lier le certificat de signature précédemment généré au profil d’approvisionnement.
Suivez les étapes pour télécharger votre profil (avec l’extension
.mobileprovision) sur votre ordinateur macOS.Enregistrez le fichier dans un emplacement mémorable. Ce fichier est utilisé pour le paramètre -p lors de l’utilisation de la App Wrapping Tool.
Télécharger le App Wrapping Tool
Téléchargez les fichiers de l’App Wrapping Tool à partir de GitHub sur un ordinateur macOS.
Double-cliquez sur Microsoft Intune Packager de restrictions d’application pour iOS.dmg. Une fenêtre avec le Contrat de licence utilisateur final (CLUF) s’affiche. Lisez attentivement le document.
Choisissez Accepter pour accepter le CLUF, qui monte le package sur votre ordinateur.
Exécuter le App Wrapping Tool
Importante
Intune publie régulièrement des mises à jour du Intune App Wrapping Tool. Vous case activée régulièrement les Intune App Wrapping Tool pour iOS pour les mises à jour et intégrez-les à votre cycle de publication de développement logiciel pour vous assurer que vos applications prennent en charge les derniers paramètres de stratégie de protection des applications.
Utiliser le terminal
Ouvrez le terminal macOS et exécutez la commande suivante :
/Volumes/IntuneMAMAppPackager/IntuneMAMPackager/Contents/MacOS/IntuneMAMPackager -i /<path of input app>/<app filename> -o /<path to output folder>/<app filename> -p /<path to provisioning profile> -c <SHA1 hash of the certificate> -ac <client ID of input app> -ar <redirect URI of input app> [-aa <authority URI of input app>] [-b [<output app build string>]] [-v] [-e] [-x /<array of extension provisioning profile paths>] [-dt] [-dl] [-ds]
Remarque
Certains paramètres sont facultatifs, comme indiqué dans le tableau suivant.
Exemple: L’exemple de commande suivant exécute le App Wrapping Tool sur l’application nommée MyApp.ipa. Un profil d’approvisionnement et un hachage SHA-1 du certificat de signature sont spécifiés et utilisés pour signer l’application encapsulée. L’application de sortie (MyApp_Wrapped.ipa) est créée et stockée dans votre dossier Desktop.
./IntuneMAMPackager/Contents/MacOS/IntuneMAMPackager -i ~/Desktop/MyApp.ipa -o ~/Desktop/MyApp_Wrapped.ipa -p ~/Desktop/My_Provisioning_Profile_.mobileprovision -c "12 A3 BC 45 D6 7E F8 90 1A 2B 3C DE F4 AB C5 D6 E7 89 0F AB" -ac "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -ar "msauth.myAppsBundleID://auth" -v
Paramètres de ligne de commande
Vous pouvez utiliser les paramètres de ligne de commande suivants avec les App Wrapping Tool :
Exemple: L’exemple de commande suivant exécute la App Wrapping Tool, en incorporant les commandes requises lors de l’habillage d’une application pour une utilisation dans un seul locataire.
./IntuneMAMPackager/Contents/MacOS/IntuneMAMPackager -i ~/Desktop/MyApp.ipa -o ~/Desktop/MyApp_Wrapped.ipa -p ~/Desktop/My_Provisioning_Profile_.mobileprovision -c "12 A3 BC 45 D6 7E F8 90 1A 2B 3C DE F4 AB C5 D6 E7 89 0F AB" -aa https://login.microsoftonline.com/<tenantID> -ac "Client ID of the input app if the app uses the Microsoft Authentication Library" -ar "Redirect/Reply URI of the input app if the app uses the Microsoft Authentication Library" -v
| Propriété | Comment l’utiliser |
|---|---|
-i |
<Path of the input native iOS application file>. Le nom de fichier doit se terminer par .app ou .ipa. |
-o |
<Path of the wrapped output application> |
-p |
<Path of your provisioning profile for iOS apps> |
-c |
<SHA1 hash of the signing certificate> |
-h |
Affiche des informations d’utilisation détaillées sur les propriétés de ligne de commande disponibles pour le App Wrapping Tool. |
-ac |
<Client ID of the input app if the app uses the Microsoft Authentication Library> Il s’agit du GUID dans le champ ID client de la description de votre application dans l’inscription de l’application. |
-ar |
<Redirect/Reply URI of the input app if the app uses the Microsoft Authentication Library> Il s’agit de l’URI de redirection configuré dans votre inscription d’application. En règle générale, il s’agit du protocole URL de l’application à laquelle l’application Microsoft Authenticator retournerait après l’authentification répartie. |
-aa |
(Requis pour les applications monolocataires) <Authority URI of the input app> c’est-à-dire https://login.microsoftonline.com/<tenantID>/ |
-v |
(Facultatif) Génère des messages détaillés dans la console. Utilisez cet indicateur pour déboguer les erreurs éventuelles. |
-e |
(Facultatif) Utilisez cet indicateur pour que le App Wrapping Tool supprime les droits manquants lors du traitement de l’application. Pour plus d’informations, consultez Définition des droits d’application. |
-xe |
(Facultatif) Imprime des informations sur les extensions iOS dans l’application et les droits requis pour les utiliser. Pour plus d’informations, consultez Définition des droits d’application. |
-x |
(Facultatif) <An array of paths to extension provisioning profiles>. Utilisez cette propriété si votre application a besoin de profils d’approvisionnement d’extension. |
-b |
(Facultatif) Utilisez -b sans argument si vous souhaitez que l’application de sortie encapsulée ait la même version de bundle que l’application d’entrée (non recommandé). Utilisez -b <custom bundle version> si vous souhaitez que l’application encapsulée dispose d’un CFBundleVersion personnalisé. Si vous choisissez de spécifier un CFBundleVersion personnalisé, il est judicieux d’incrémenter la version CFBundleVersion de l’application native par le composant le moins significatif, comme 1.0.0 -> 1.0.1. |
-f |
(Facultatif) <Path to a plist file specifying arguments.> Utilisez cet indicateur devant le fichier plist si vous choisissez d’utiliser le modèle plist pour spécifier le reste des propriétés IntuneMAMPackager telles que -i, -o et -p. Consultez Utiliser une liste plist pour entrer des arguments. |
-dt |
(Facultatif) Désactivez la collecte des données clientes Microsoft Intune. |
-dl |
(Facultatif) Désactivez les journaux MSAL du Intune journaux pour les applications intégrées à MSAL et implémentez leur propre rappel de journalisation MSAL. |
-ds |
(Facultatif) Désactivez les protections de Intune pour SFSafariViewController, SFAuthSession et ASWebAuthenticationSession. |
Utiliser une plist pour entrer des arguments
Un moyen simple d’exécuter le App Wrapping Tool consiste à placer tous les arguments de commande dans un fichier plist. Plist est un format de fichier similaire à XML que vous pouvez utiliser pour entrer vos arguments de ligne de commande à l’aide d’une interface de formulaire.
Dans le dossier IntuneMAMPackager/Contents/MacOS, ouvrez Parameters.plist (un modèle plist vide) avec un éditeur de texte ou Xcode. Entrez vos arguments pour les clés suivantes :
| Clé Plist | Type | Valeur par défaut | Notes |
|---|---|---|---|
| Chemin du package d’application d’entrée | String | vide | Identique à -i |
| Chemin d’accès du package d’application de sortie | String | vide | Identique à -o |
| Chemin d’accès du profil d’approvisionnement | String | vide | Identique à -p |
| Hachage du certificat SHA-1 | String | vide | Identique à -c |
| Autorité MSAL | String | vide | Identique à -aa |
| MSAL Client ID | String | vide | Identique à -ac |
| URI de réponse MSAL | String | vide | Identique à -ar |
| Détaillé activé | Booléen | false | Identique à -v |
| Supprimer les droits manquants | Booléen | false | Identique à -e |
| Empêcher la mise à jour de build par défaut | Booléen | false | Équivaut à utiliser -b sans arguments |
| Remplacement de chaîne de build | String | vide | CfBundleVersion personnalisée de l’application de sortie encapsulée |
| Chemins d’accès de profil d’approvisionnement d’extension | Tableau de chaînes | vide | Tableau de profils d’approvisionnement d’extension pour l’application. |
| Désactiver la télémétrie | Booléen | false | Identique à -dt |
| Désactiver le remplacement du journal MSAL | Booléen | false | Identique à -dl |
Exécutez IntuneMAMPackager avec plist comme seul argument :
./IntuneMAMPackager –f Parameters.plist
Post-wrapping
Une fois le processus d’habillage terminé, le message « L’application a été correctement encapsulée » s’affiche. Si une erreur se produit, consultez Messages d’erreur pour obtenir de l’aide.
L’application encapsulée est enregistrée dans le dossier de sortie que vous avez spécifié précédemment. Vous pouvez charger l’application dans le centre d’administration Intune et l’associer à une stratégie de gestion des applications mobiles.
Importante
Lors du chargement d’une application encapsulée, vous pouvez essayer de mettre à jour une version antérieure de l’application si une version antérieure (encapsulée ou native) a déjà été déployée sur Intune. Si vous rencontrez une erreur, chargez l’application en tant que nouvelle application et supprimez l’ancienne version.
Vous pouvez maintenant déployer l’application sur vos groupes d’utilisateurs et cibler des stratégies de protection des applications sur l’application. L’application s’exécute sur l’appareil à l’aide des stratégies de protection des applications que vous avez spécifiées.
À quelle fréquence dois-je réencapsuler mon application iOS avec le Intune App Wrapping Tool ?
Les principaux scénarios dans lesquels vous devez réencapsuler vos applications sont les suivants :
- L’application elle-même a publié une nouvelle version. La version précédente de l’application a été encapsulée et chargée dans le centre d’administration Intune.
- Le Intune App Wrapping Tool pour iOS a publié une nouvelle version qui active les correctifs de bogues clés ou de nouvelles fonctionnalités de stratégie de protection des applications Intune spécifiques. La publication d’une nouvelle version se produit toutes les 6 à 8 semaines via le dépôt GitHub pour le Microsoft Intune App Wrapping Tool pour iOS.
Pour iOS/iPadOS, vous pouvez encapsuler l’application avec un certificat ou un profil d’approvisionnement différent de celui utilisé à l’origine pour signer l’application. Toutefois, si le nouveau profil d’approvisionnement n’inclut pas les droits spécifiés dans l’application, le processus d’habillage échoue. Si vous utilisez l’option de ligne de commande « -e », qui supprime les droits manquants de l’application, forcer l’habillage à ne pas échouer dans ce scénario peut entraîner une défaillance des fonctionnalités dans l’application.
Voici quelques bonnes pratiques en matière de réencapsulage :
- Vérifier qu’un profil d’approvisionnement différent dispose de tous les droits requis comme tout profil d’approvisionnement précédent.
Messages d’erreur et fichiers journaux
Utilisez les informations suivantes pour résoudre les problèmes que vous rencontrez avec l’outil de création de package de restrictions d’application.
Messages d’erreur
Si l’outil de création de package de restrictions d’application échoue, l’un des messages d’erreur suivants s’affiche dans la console :
| Message d’erreur | Plus d’informations |
|---|---|
| Vous devez spécifier un profil de provisionnement iOS valide. | Votre profil d’approvisionnement n’est peut-être pas valide. Vérifiez que vous disposez des autorisations appropriées pour les appareils et que votre profil cible correctement le développement ou la distribution. Votre profil d’approvisionnement peut également avoir expiré. |
| Spécifiez un nom d’application d’entrée valide. | Vérifiez que le nom de l’application d’entrée spécifié est correct. |
| Spécifiez un chemin d’accès valide à l’application de sortie. | Assurez-vous que le chemin d’accès à l’application de sortie que vous avez spécifiée existe et qu’il est correct. |
| Spécifiez un profil d’approvisionnement d’entrée valide. | Vérifiez que vous avez fourni un nom et une extension de profil d’approvisionnement valides. Votre profil d’approvisionnement peut ne pas avoir de droits, ou l’option de –p ligne de commande n’est pas incluse. |
| L’application d’entrée que vous avez spécifiée est introuvable. Spécifiez un nom et un chemin d’accès d’application d’entrée valides. | Vérifiez que le chemin d’accès de votre application d’entrée est valide et existe. Vérifiez que l’application d’entrée existe à cet emplacement. |
| Le fichier de profil d’approvisionnement d’entrée que vous avez spécifié est introuvable. Spécifiez un fichier de profil d’approvisionnement d’entrée valide. | Assurez-vous que le chemin d’accès au fichier d’approvisionnement d’entrée est valide et que le fichier que vous avez spécifié existe. |
| Le dossier d’application de sortie que vous avez spécifié est introuvable. Spécifiez un chemin d’accès valide à l’application de sortie. | Vérifiez que le chemin de sortie est valide et qu’il existe. |
| L’application de sortie n’a pas l’extension .ipa . | Seules les applications avec les extensions .app et .ipa sont acceptées par le App Wrapping Tool. Vérifiez que votre fichier de sortie a une extension valide. |
| Un certificat de signature non valide a été spécifié. Spécifiez un certificat de signature Apple valide. | Vérifiez que vous avez téléchargé le certificat de signature correct à partir du portail des développeurs Apple. Votre certificat a peut-être expiré ou une clé publique ou privée est peut-être manquante. Si votre certificat Apple et votre profil de provisionnement peuvent être utilisés pour signer correctement une application dans Xcode, ils sont valides pour la App Wrapping Tool. En outre, vérifiez que le certificat de signature a un nom unique dans le trousseau de l’ordinateur macOS hôte. Si plusieurs versions du même certificat existent dans le trousseau, l’outil retourne cette erreur. |
| L’application d’entrée que vous avez spécifiée n’est pas valide. Spécifiez une application valide. | Assurez-vous que votre application iOS valide est compilée en tant que .app fichier ou .ipa . |
| L’application d’entrée que vous avez spécifiée est chiffrée. Spécifiez une application non chiffrée valide. | Le App Wrapping Tool ne prend pas en charge les applications chiffrées. Fournissez une application non chiffrée. |
| L’application d’entrée que vous avez spécifiée n’est pas au format PIE (Position Independent Executable). Spécifiez une application valide au format PIE. | Les applications PIE (Position Independent Executable) peuvent être chargées à une adresse mémoire aléatoire lors de l’exécution. Cette fonctionnalité peut offrir des avantages en matière de sécurité. Pour plus d’informations sur les avantages de la sécurité, consultez votre documentation Apple Developer. |
| L’application d’entrée que vous avez spécifiée est encapsulée. Spécifiez une application non encapsulée valide. | Vous ne pouvez pas traiter une application si l’outil l’a déjà traitée. Si vous souhaitez traiter à nouveau une application, exécutez l’outil à l’aide de la version d’origine de l’application. |
| L’application d’entrée que vous avez spécifiée n’est pas signée. Spécifiez une application signée valide. | L’outil de création de package de restrictions d’application nécessite que les applications soient signées. Consultez la documentation de votre développeur pour savoir comment signer une application encapsulée. |
| L’application d’entrée que vous avez spécifiée doit être au format .ipa ou .app. | L’outil de création de package de restrictions d’application accepte .app uniquement les extensions et .ipa . Assurez-vous que votre fichier d’entrée a une extension valide et qu’il est conforme en tant que .app fichier ou .ipa . |
| L’application d’entrée que vous avez spécifiée est encapsulée et se trouve dans la dernière version du modèle de stratégie. | Le App Wrapping Tool ne réencapsule pas une application encapsulée existante avec la dernière version du modèle de stratégie. |
| AVERTISSEMENT : Vous n’avez pas spécifié de hachage de certificat SHA1. Assurez-vous que votre application encapsulée est signée avant le déploiement. | Veillez à spécifier un hachage SHA1 valide suivant l’indicateur de ligne de –c commande. |
Collecte des journaux pour vos applications encapsulées à partir de l’appareil
Procédez comme suit pour obtenir les journaux de vos applications encapsulées lors de la résolution des problèmes.
- Accédez à l’application Paramètres iOS sur votre appareil et sélectionnez votre application métier.
- Sélectionnez Microsoft Intune.
- Basculez le paramètre Afficher la console de diagnostic surActivé.
- Lancez votre application métier.
- Sélectionnez le lien « Prise en main ».
- Vous pouvez désormais envoyer des journaux directement à Microsoft ou les partager via une autre application sur l’appareil.
Remarque
La fonctionnalité de journalisation est activée pour les applications qui sont encapsulées avec le Intune App Wrapping Tool version 7.1.13 ou ultérieure.
Collecte des journaux d’incident à partir du système
Votre application peut enregistrer des informations utiles dans la console d’appareil client iOS. Ces informations sont utiles lorsque vous rencontrez des problèmes avec l’application et que vous devez déterminer si le problème est lié au App Wrapping Tool ou à l’application elle-même. Pour récupérer ces informations, procédez comme suit :
Reproduisez le problème en exécutant l’application.
Collectez la sortie de la console en suivant les instructions d’Apple pour le débogage des applications iOS déployées.
Les applications encapsulées présentent également aux utilisateurs la possibilité d’envoyer des journaux directement à partir de l’appareil par e-mail après le blocage de l’application. Les utilisateurs peuvent vous envoyer les journaux pour les examiner et les transférer à Microsoft si nécessaire.
Exigences en matière de certificat, de profil d’approvisionnement et d’authentification
Le App Wrapping Tool pour iOS a certaines exigences qui doivent être remplies afin de garantir une fonctionnalité complète.
| Conditions requises | Détails |
|---|---|
| Profil d’approvisionnement iOS | Assurez-vous que le profil d’approvisionnement est valide avant de l’inclure. Le App Wrapping Tool ne case activée pas si le profil d’approvisionnement a expiré lors du traitement d’une application iOS. Si vous spécifiez un profil d’approvisionnement expiré, l’outil de création de package de restrictions d’application l’inclut. Vous ne voyez pas de problème tant que l’application ne parvient pas à s’installer sur un appareil iOS. |
| Certificat de signature iOS | Assurez-vous que le certificat de signature est valide avant de le spécifier. L’outil ne case activée pas si un certificat a expiré lors du traitement des applications iOS. Si le hachage d’un certificat expiré est fourni, l’outil traite et signe l’application, mais ne parvient pas à s’installer sur les appareils. Assurez-vous que le certificat fourni pour la signature de l’application encapsulée a une correspondance dans le profil d’approvisionnement. L’outil ne vérifie pas si le profil d’approvisionnement a une correspondance pour le certificat fourni pour la signature de l’application encapsulée. |
| Authentification | Un appareil doit disposer d’un code confidentiel pour que le chiffrement fonctionne. Sur les appareils sur lesquels vous avez déployé une application encapsulée, le fait de toucher la barre d’status sur l’appareil nécessite que l’utilisateur se reconnecte avec un compte professionnel ou scolaire. La stratégie par défaut dans une application encapsulée est l’authentification lors de la relance. iOS gère toute notification externe (comme un appel téléphonique) en quittant l’application, puis en la relançant. |
Définition des droits d’application
Avant d’encapsuler votre application, vous pouvez accorder des droits pour accorder à l’application des autorisations et des fonctionnalités supplémentaires qui dépassent ce qu’une application peut généralement faire. Un fichier de droits est utilisé lors de la signature du code pour spécifier des autorisations spéciales au sein de votre application (par exemple, l’accès à un trousseau partagé). Des services d’application spécifiques appelés fonctionnalités sont activés dans Xcode pendant le développement de l’application. Une fois activées, les fonctionnalités sont reflétées dans votre fichier de droits. Pour plus d’informations sur les droits et les fonctionnalités, consultez Ajout de fonctionnalités dans la bibliothèque de développeurs iOS. Pour obtenir la liste complète des fonctionnalités prises en charge, consultez Fonctionnalités prises en charge.
Fonctionnalités prises en charge pour le App Wrapping Tool pour iOS
| Fonctionnalité | Description | Conseils recommandés |
|---|---|---|
| Groupes d’applications | Utilisez des groupes d’applications pour autoriser plusieurs applications à accéder à des conteneurs partagés et permettre une plus grande communication entre les applications. Pour activer les groupes d’applications, ouvrez le volet Fonctionnalités et sélectionnez ACTIVÉ dans Groupes d’applications. Vous pouvez ajouter des groupes d’applications ou sélectionner des groupes d’applications existants. |
Utilisez la notation DNS (Domain Name System) inversée lorsque vous configurez des groupes d’applications : group.com.companyName.AppGroup |
| Modes d’arrière-plan | L’activation des modes d’arrière-plan permet à votre application iOS de continuer à s’exécuter en arrière-plan. | |
| Protection des données | La protection des données ajoute un niveau de sécurité aux fichiers stockés sur disque par votre application iOS. La protection des données utilise le matériel de chiffrement intégré présent sur des appareils spécifiques pour stocker des fichiers dans un format chiffré sur disque. Votre application doit être provisionnée pour utiliser la protection des données. | |
| Achat dans l’application | L’achat dans l’application incorpore un magasin directement dans votre application en vous permettant de vous connecter au magasin et de traiter en toute sécurité les paiements de l’utilisateur. Vous pouvez utiliser l’achat dans l’application pour collecter le paiement pour les fonctionnalités améliorées ou pour plus de contenu utilisable par votre application. | |
| Partage du trousseau | L’activation du partage de trousseau permet à votre application de partager des mots de passe dans le trousseau avec d’autres applications développées par votre équipe. | Lorsque vous utilisez le partage de trousseau, utilisez la notation DNS inversée : com.companyName.KeychainGroup |
| VPN personnel | Activez le VPN personnel pour permettre à votre application de créer et de contrôler une configuration VPN système personnalisée à l’aide de l’infrastructure d’extension réseau. | |
| Notifications push | Apple Push Notification Service (APNs) permet à une application qui ne s’exécute pas au premier plan d’informer l’utilisateur qu’elle dispose d’informations pour l’utilisateur. | Pour que les notifications Push fonctionnent, vous devez utiliser un profil d’approvisionnement spécifique à l’application. Suivez les étapes décrites dans la documentation du développeur Apple. |
| Configuration des accessoires sans fil | L’activation de la configuration des accessoires sans fil ajoute l’infrastructure d’accessoires externes à votre projet et permet à votre application de configurer des accessoires Wi-Fi Made for iPhone (MFi). |
Étapes pour activer les droits d’utilisation
Activez les fonctionnalités de votre application :
a. Dans Xcode, accédez à la cible de votre application, puis sélectionnez Fonctionnalités.
b. Activez les fonctionnalités appropriées. Pour plus d’informations sur chaque fonctionnalité et sur la façon de déterminer les valeurs correctes, consultez Ajout de fonctionnalités dans la bibliothèque de développeurs iOS.
c. Notez tous les ID que vous avez créés pendant le processus. Ces ID peuvent être appelés valeurs
AppIdentifierPrefix.d. Générez et signez votre application à wrapper.
Activez les droits dans votre profil d’approvisionnement :
a. Connectez-vous au Centre des membres des développeurs Apple.
b. Créez un profil d’approvisionnement pour votre application. Pour obtenir des instructions, consultez Comment obtenir les prérequis pour le Intune App Wrapping Tool pour iOS.
c. Dans votre profil d’approvisionnement, activez les mêmes droits que vous avez dans votre application. Vous devez fournir les mêmes ID (les
AppIdentifierPrefixvaleurs) que vous avez spécifiés pendant le développement de votre application.d. Terminez l’Assistant Profil d’approvisionnement et téléchargez votre fichier.
Vérifiez que vous avez satisfait à toutes les conditions préalables, puis encapsulez l’application.
Résoudre les erreurs courantes avec les droits d’utilisation
Si le App Wrapping Tool pour iOS affiche une erreur de droit, essayez les étapes de dépannage suivantes.
| Problème | Cause | Résolution |
|---|---|---|
| Échec de l’analyse des droits générés à partir de l’application d’entrée. | Le App Wrapping Tool ne peut pas lire le fichier de droits qui a été extrait de l’application. Le fichier de droits est peut-être mal formé. | Inspectez le fichier de droits de votre application. Les instructions suivantes expliquent comment procéder. Lors de l’inspection du fichier de droits, case activée pour toute syntaxe incorrecte. Le fichier doit être au format XML. |
| Les droits sont manquants dans le profil d’approvisionnement (les droits manquants sont répertoriés). Repackager l’application avec un profil d’approvisionnement qui dispose de ces droits. | Il existe une incompatibilité entre les droits activés dans le profil d’approvisionnement et les fonctionnalités activées dans l’application. Cette incompatibilité s’applique également aux ID associés à des fonctionnalités particulières (comme les groupes d’applications et l’accès au trousseau). | En règle générale, vous pouvez créer un profil d’approvisionnement qui active les mêmes fonctionnalités que l’application. Lorsque les ID entre le profil et l’application ne correspondent pas, le App Wrapping Tool remplace les ID s’il est possible de le faire. Si vous obtenez toujours cette erreur après avoir créé un profil d’approvisionnement, vous pouvez essayer de supprimer des droits de l’application à l’aide du –e paramètre (consultez la section Utilisation du –e paramètre pour supprimer des droits d’une application). |
Rechercher les droits existants d’une application signée
Pour passer en revue les droits existants d’une application signée et d’un profil d’approvisionnement :
Recherchez le fichier .ipa et remplacez son extension par .zip.
Développez le fichier .zip. Cette action crée un dossier Payload contenant votre bundle .app.
Utilisez l’outil codesign pour case activée les droits sur l’offre groupée .app, où
YourApp.appest le nom réel de votre offre groupée .app.codesign -d --entitlements :- "Payload/YourApp.app"Utilisez l’outil de sécurité pour case activée les droits du profil d’approvisionnement incorporé de l’application, où
YourApp.appest le nom réel de votre offre groupée .app.security cms -D -i "Payload/YourApp.app/embedded.mobileprovision"
Supprimer des droits d’une application à l’aide du paramètre –e
Cette commande supprime toutes les fonctionnalités activées dans l’application qui ne figurent pas dans le fichier de droits. Si vous supprimez les fonctionnalités utilisées par l’application, cela peut interrompre votre application. Par exemple, vous pouvez supprimer des fonctionnalités manquantes dans une application produite par un fournisseur qui a toutes les fonctionnalités par défaut.
./IntuneMAMPackager/Contents/MacOS/IntuneMAMPackager –i /<path of input app>/<app filename> -o /<path to output folder>/<app filename> `–p` /<path to provisioning profile> –c <SHA1 hash of the certificate> -ac <client ID of input app> -ar <redirect URI of input app> -e
Sécurité et confidentialité des App Wrapping Tool
Utilisez les meilleures pratiques de sécurité et de confidentialité suivantes lorsque vous utilisez la App Wrapping Tool.
Le certificat de signature, le profil d’approvisionnement et l’application métier que vous spécifiez doivent se trouver sur la même machine macOS que celle utilisée pour exécuter l’outil de création de package de restrictions d’application. Si les fichiers se trouvent sur un chemin UNC, assurez-vous que l’ordinateur macOS peut y accéder. Le chemin d’accès doit être sécurisé via une signature IPsec ou SMB.
L’application encapsulée importée dans le centre d’administration doit se trouver sur le même ordinateur que celui sur lequel vous exécutez l’outil. Si le fichier se trouve sur un chemin UNC, vérifiez qu’il est accessible sur l’ordinateur exécutant le centre d’administration. Le chemin d’accès doit être sécurisé via une signature IPsec ou SMB.
L’environnement dans lequel le App Wrapping Tool est téléchargé à partir du dépôt GitHub doit être sécurisé via une signature IPsec ou SMB.
L’application que vous traitez doit provenir d’une source digne de confiance pour garantir la protection contre les attaques.
Assurez-vous que le dossier de sortie que vous spécifiez dans le App Wrapping Tool est sécurisé, en particulier s’il s’agit d’un dossier distant.
Les applications iOS qui incluent une boîte de dialogue de chargement de fichiers peuvent permettre aux utilisateurs de contourner, couper, copier et coller les restrictions appliquées à l’application. Par exemple, un utilisateur peut utiliser la boîte de dialogue de chargement de fichier pour charger une capture d’écran des données de l’application.
Lorsque vous surveillez le dossier documents sur votre appareil à partir d’une application encapsulée, vous pouvez voir un dossier nommé
.msftintuneapplauncher. Si vous modifiez ou supprimez ce fichier, cela peut affecter le bon fonctionnement des applications restreintes.L’inscription de schémas d’URL personnalisés permet à des URL spécifiques de rediriger vers votre application. iOS et iPadOS permettent à plusieurs applications d’inscrire le même schéma d’URL personnalisé et le système d’exploitation détermine quelle application est appelée. Reportez-vous à la documentation Apple Définition d’un schéma d’URL personnalisée pour votre application pour obtenir des recommandations afin d’éviter les collisions de schémas d’URL personnalisées et des instructions de sécurité pour la gestion des URL incorrectes.
Ressources supplémentaires
- Décidez comment préparer les applications pour la gestion des applications mobiles avec Microsoft Intune
- Questions courantes, problèmes et solutions avec les stratégies et les profils d’appareil
- Utiliser le Kit de développement logiciel (SDK) pour activer les applications pour la gestion des applications mobiles