Étape 2 : Configuration requise et configuration de MSAL
Le SDK d’application Intune utilise la bibliothèque d’authentification Microsoft pour ses scénarios d’authentification et de lancement conditionnel. Il s’appuie également sur MSAL pour inscrire l’identité de l’utilisateur auprès du service GAM pour la gestion sans scénarios d’inscription d’appareil.
Remarque
Ce guide est divisé en plusieurs étapes distinctes. Commencez par passer en revue Étape 1 : Planification de l’intégration.
Goals de phase
- Inscrivez votre application auprès de Microsoft Entra ID.
- Intégrez MSAL à votre application iOS.
- Vérifiez que votre application peut obtenir un jeton qui accorde l’accès aux ressources protégées.
Configurer et configurer une inscription d’application Microsoft Entra
MSAL exige que les applications s’inscrivent auprès de Microsoft Entra ID et créent un ID client et un URI de redirection uniques pour garantir la sécurité des jetons accordés à l’application. Si votre application utilise déjà MSAL pour sa propre authentification, il doit déjà y avoir un Microsoft Entra’inscription d’application/ID client/URI de redirection associé à l’application.
Si votre application n’utilise pas déjà MSAL, vous devez configurer une inscription d’application dans Microsoft Entra ID et spécifier l’ID client et l’URI de redirection que le KIT de développement logiciel (SDK) Intune doit utiliser.
Si votre application utilise actuellement ADAL pour authentifier les utilisateurs, consultez Migrer des applications vers MSAL pour iOS et macOS pour plus d’informations sur la migration de votre application d’ADAL vers MSAL.
Il est recommandé que votre application soit liée à la dernière version de MSAL.
Lier MSAL à votre projet
Suivez la section d’installation pour placer les fichiers binaires MSAL dans votre application.
Configurer MSAL
Suivez la section configuration pour configurer MSAL. Veillez à suivre toutes les étapes de la section configuration. Ignorez l’étape 1 si votre application est déjà inscrite dans Microsoft Entra ID.
Les points ci-dessous contiennent des informations supplémentaires pour configurer MSAL et établir un lien vers celui-ci. Suivez ces instructions si elles s’appliquent à votre application.
- Si aucun groupe d’accès keychain n’est défini pour votre application, ajoutez l’ID de bundle de l’application en tant que premier groupe.
- Activez l’authentification unique MSAL en ajoutant
com.microsoft.adalcache
à la keychain groupes d’accès. - Si vous définissez explicitement le groupe de keychain cache partagé MSAL, vérifiez qu’il est défini sur
<appidprefix>.com.microsoft.adalcache
. MSAL le définira pour vous, sauf si vous le remplacez. Si vous souhaitez spécifier un groupe de keychain personnalisé à remplacercom.microsoft.adalcache
, spécifiez que dans le fichier Info.plist sous IntuneMAMSettings, à l’aide de la cléADALCacheKeychainGroupOverride
.
Configurer les paramètres MSAL pour le Kit de développement logiciel (SDK) d’application Intune
Une fois qu’une inscription d’application a été configurée pour votre application dans Microsoft Entra ID, vous pouvez configurer le SDK Intune App pour utiliser les paramètres de votre inscription d’application lors de l’authentification sur Microsoft Entra ID. Pour plus d’informations sur le remplissage des paramètres suivants, consultez Configurer les paramètres du Kit de développement logiciel (SDK) d’application Intune :
- ADALClientId
- ADALAuthority
- ADALRedirectUri
- ADALRedirectScheme
- ADALCacheKeychainGroupOverride
Les configurations suivantes sont requises :
Dans le fichier Info.plist du projet, sous le dictionnaire IntuneMAMSettings avec le nom
ADALClientId
de clé , spécifiez l’ID client à utiliser pour les appels MSAL.Si l’inscription de l’application Microsoft Entra qui correspond à l’ID client configuré à l’étape 1 est configurée pour une utilisation dans un seul locataire Microsoft Entra, configurez la
ADALAuthority
clé sous le dictionnaire IntuneMAMSettings dans le fichier Info.plist de l’application. Spécifiez l’autorité Microsoft Entra à utiliser par MSAL pour l’acquisition de jetons pour le service de gestion des applications mobiles Intune.Également sous le dictionnaire IntuneMAMSettings avec le nom
ADALRedirectUri
de clé , spécifiez l’URI de redirection à utiliser pour les appels MSAL. Vous pouvez également spécifierADALRedirectScheme
à la place si l’URI de redirection de l’application est au formatscheme://bundle_id
.Les applications peuvent également remplacer ces paramètres Microsoft Entra lors de l’exécution. Pour ce faire, définissez simplement les
aadAuthorityUriOverride
propriétés ,aadClientIdOverride
etaadRedirectUriOverride
sur laIntuneMAMSettings
classe .Vérifiez que les étapes permettant d’accorder des autorisations à votre application iOS au service de gestion des applications mobiles (GAM) Intune sont suivies. Suivez les instructions du guide de prise en main du Kit de développement logiciel (SDK) Intune sous Accorder à votre application l’accès au service Intune Mobile App Management.
Remarque
Si la stratégie de protection des applications est liée à des appareils gérés, la création d’un profil de configuration d’application de l’application qui a Intune intégrée est également nécessaire.
L’approche Info.plist est recommandée pour tous les paramètres qui sont statiques et qui n’ont pas besoin d’être déterminés au moment de l’exécution. Les valeurs affectées aux propriétés de classe au moment de l’exécution
IntuneMAMSettings
sont prioritaires sur toutes les valeurs correspondantes spécifiées dans Info.plist et sont conservées même après le redémarrage de l’application. Le Kit de développement logiciel (SDK) continue de les utiliser pour les case activée de stratégie jusqu’à ce que l’utilisateur soit désinscrit ou que les valeurs soient effacées ou modifiées.
Considérations spéciales lors de l’utilisation de MSAL pour l’authentification lancée par l’application
Il est recommandé que les applications n’utilisent pas SFSafariViewController, SFAuththenticationSession ou ASWebAuthenticationSession comme vue web pour toutes les opérations d’authentification interactive MSAL lancées par l’application. Par défaut, MSAL utilise ASWebAuthenticationSession. Les développeurs d’applications doivent donc définir explicitement le type d’affichage web sur WKWebView. Si, pour une raison quelconque, votre application doit utiliser un type de vue web autre que WKWebView pour toutes les opérations d’authentification MSAL interactives, elle doit également définir SafariViewControllerBlockedOverride
true
sur sous le IntuneMAMSettings
dictionnaire dans info.plist de l’application.
Avertissement
Cela désactive les hooks SafariViewController de Intune pour activer la session d’authentification. Cela risque de fuites de données ailleurs dans l’application si l’application utilise SafariViewController pour afficher les données d’entreprise. L’application ne doit donc pas afficher de données d’entreprise dans l’un de ces types d’affichage web.
Critères de sortie
- Avez-vous inscrit votre application sur la page d’inscription de l’application Microsoft Entra ?
- Avez-vous intégré MSAL à votre application ?
- Avez-vous activé l’authentification broker en générant un URI de redirection et en le définissant dans le fichier de configuration MSAL ?
- Avez-vous assuré que les informations de configuration requises pour MSAL dans votre dictionnaire IntuneMAMSettings correspondent à celles de votre Microsoft Entra Inscriptions d’applications ?
FAQ
Qu’en est-il de la bibliothèque ADAL ?
La bibliothèque d’authentification précédente de Microsoft, Azure Active Directory Authentication Library (ADAL), est déconseillée.
Si votre application a déjà intégré ADAL, consultez Mettre à jour vos applications pour utiliser la bibliothèque d’authentification Microsoft (MSAL). Pour migrer votre application d’ADAL vers MSAL, consultez Migrer des applications vers MSAL pour iOS et macOS
Il est recommandé de migrer d’ADAL vers MSAL avant d’intégrer le SDK Intune App.
Étapes suivantes
Une fois que vous avez terminé tous les critères de sortie ci-dessus, passez à l’étape 3 : Intune’intégration du SDK à votre application iOS.