Phase 2: MSAL-Voraussetzungen und -Einrichtung
Das Intune App SDK verwendet die Microsoft-Authentifizierungsbibliothek für Authentifizierungs- und bedingte Startszenarien. Außerdem wird msal verwendet, um die Benutzeridentität beim MAM-Dienst für die Verwaltung ohne Geräteregistrierungsszenarien zu registrieren.
Hinweis
Dieser Leitfaden ist in mehrere unterschiedliche Phasen unterteilt. Sehen Sie sich zunächst Phase 1: Planen der Integration an.
Etappenziele
- Registrieren Sie Ihre Anwendung mit der Microsoft Entra-ID.
- Integrieren Sie MSAL in Ihre iOS-Anwendung.
- Vergewissern Sie sich, dass Ihre Anwendung ein Token abrufen kann, das Zugriff auf geschützte Ressourcen gewährt.
Einrichten und Konfigurieren einer Microsoft Entra-App-Registrierung
MSAL erfordert, dass Apps sich mit Microsoft Entra ID registrieren und eine eindeutige Client-ID und einen Umleitungs-URI erstellen, um die Sicherheit der token zu gewährleisten, die der App gewährt werden. Wenn Ihre Anwendung bereits MSAL für ihre eigene Authentifizierung verwendet, sollte der App bereits eine Microsoft Entra-App-Registrierung,Client-ID/Umleitungs-URI zugeordnet sein.
Wenn Ihre App noch nicht MSAL verwendet, müssen Sie eine App-Registrierung in Microsoft Entra ID konfigurieren und die Client-ID und den Umleitungs-URI angeben, die das Intune SDK verwenden soll.
Wenn Ihre App derzeit ADAL zum Authentifizieren von Benutzern verwendet, finden Sie unter Migrieren von Anwendungen zu MSAL für iOS und macOS weitere Informationen zum Migrieren Ihrer App von ADAL zu MSAL.
Es wird empfohlen, dass Ihre App Links zur neuesten Version von MSAL enthält.
Verknüpfen von MSAL mit Ihrem Projekt
Folgen Sie dem Installationsabschnitt , um die MSAL-Binärdateien in Ihrer App zu platzieren.
Konfigurieren von MSAL
Folgen Sie dem Konfigurationsabschnitt , um MSAL zu konfigurieren. Stellen Sie sicher, dass Sie alle Schritte im Konfigurationsabschnitt ausführen. Ignorieren Sie Schritt 1, wenn Ihre App bereits in der Microsoft Entra-ID registriert ist.
Die folgenden Punkte enthalten zusätzliche Informationen zum Konfigurieren und Verknüpfen von MSAL. Befolgen Sie diese, wenn sie für Ihre Anwendung gelten.
- Wenn für Ihre App keine Schlüsselbundzugriffsgruppen definiert sind, fügen Sie die Bündel-ID der App als erste Gruppe hinzu.
- Aktivieren Sie das einmalige Anmelden (Single Sign-On, SSO) von MSAL, indem Sie den Keychainzugriffsgruppen hinzufügen
com.microsoft.adalcache
. - Wenn Sie die Keychaingruppe des freigegebenen MSAL-Caches explizit festlegen, stellen Sie sicher, dass sie auf
<appidprefix>.com.microsoft.adalcache
festgelegt ist. MSAL legt dies für Sie fest, es sei denn, Sie überschreiben es. Wenn Sie eine benutzerdefinierte Keychaingruppe angeben möchten, die ersetztcom.microsoft.adalcache
werden soll, geben Sie dies in der Datei Info.plist unter IntuneMAMSettings mithilfe des SchlüsselsADALCacheKeychainGroupOverride
an.
Konfigurieren von MSAL-Einstellungen für das Intune App SDK
Nachdem eine App-Registrierung für Ihre Anwendung in Microsoft Entra ID konfiguriert wurde, können Sie das Intune App SDK so konfigurieren, dass die Einstellungen aus Ihrer App-Registrierung während der Authentifizierung mit microsoft Entra ID verwendet werden. Informationen zum Auffüllen der folgenden Einstellungen finden Sie unter Konfigurieren von Einstellungen für das Intune App SDK :
- ADALClientId
- ADALAuthority
- ADALRedirectUri
- ADALRedirectScheme
- ADALCacheKeychainGroupOverride
Die folgenden Konfigurationen sind erforderlich:
Geben Sie in der Datei Info.plist des Projekts unter dem IntuneMAMSettings-Wörterbuch mit dem Schlüsselnamen
ADALClientId
die Client-ID an, die für MSAL-Aufrufe verwendet werden soll.Wenn die Microsoft Entra-App-Registrierung, die der in Schritt 1 konfigurierten Client-ID zugeordnet ist, nur für die Verwendung in einem einzelnen Microsoft Entra-Mandanten konfiguriert ist, konfigurieren Sie den
ADALAuthority
Schlüssel unter dem IntuneMAMSettings-Wörterbuch in der Datei Info.plist der Anwendung. Geben Sie die Microsoft Entra-Autorität an, die von MSAL zum Abrufen von Token für den Intune-Verwaltungsdienst für mobile Anwendungen verwendet werden soll.Geben Sie auch unter dem IntuneMAMSettings-Wörterbuch mit dem Schlüsselnamen
ADALRedirectUri
den Umleitungs-URI an, der für MSAL-Aufrufe verwendet werden soll. Alternativ können Sie stattdessen angebenADALRedirectScheme
, ob der Umleitungs-URI der Anwendung das Format aufweistscheme://bundle_id
.Alternativ können Apps diese Microsoft Entra-Einstellungen zur Laufzeit außer Kraft setzen. Legen Sie dazu einfach die
aadAuthorityUriOverride
Eigenschaften ,aadClientIdOverride
undaadRedirectUriOverride
für dieIntuneMAMSettings
-Klasse fest.Stellen Sie sicher, dass die Schritte zum Erteilen von Berechtigungen für Ihre iOS-App für den Mam-Dienst (Mobile App Management, Verwaltung mobiler Apps) von Intune ausgeführt werden. Befolgen Sie die Anweisungen im Leitfaden zu den ersten Schritten mit dem Intune SDK unter Gewähren des Zugriffs auf den Intune-Verwaltungsdienst für mobile Apps für Ihre App.
Hinweis
Wenn sich die App-Schutzrichtlinie auf verwaltete Geräte bezieht, ist auch das Erstellen eines App-Konfigurationsprofils der Anwendung erforderlich, für die Intune integriert ist.
Der Info.plist-Ansatz wird für alle Einstellungen empfohlen, die statisch sind und zur Laufzeit nicht bestimmt werden müssen. Werte, die den
IntuneMAMSettings
Klasseneigenschaften zur Laufzeit zugewiesen sind, haben Vorrang vor allen entsprechenden Werten, die in info.plist angegeben sind, und bleiben auch nach dem Neustart der App erhalten. Das SDK verwendet sie weiterhin für Richtlinieneinchecks, bis die Registrierung des Benutzers aufgehoben oder die Werte gelöscht oder geändert werden.
Besondere Überlegungen bei der Verwendung von MSAL für die app-initiierte Authentifizierung
Es wird empfohlen, dass Anwendungen SFSafariViewController, SFAuththenticationSession oder ASWebAuthenticationSession nicht als Webview für von der App initiierte interaktive MSAL-Authentifizierungsvorgänge verwenden. Standardmäßig verwendet MSAL ASWebAuthenticationSession, sodass App-Entwickler den Webview-Typ explizit auf WKWebView festlegen sollten. Wenn Ihre App aus irgendeinem Grund einen anderen Webview-Typ als WKWebView für interaktive MSAL-Authentifizierungsvorgänge verwenden muss, muss sie auch unter dem IntuneMAMSettings
Wörterbuch in der Info.plist der Anwendung auf true
festlegenSafariViewControllerBlockedOverride
.
Warnung
Dadurch werden die SafariViewController-Hooks von Intune deaktiviert, um die Authentifizierungssitzung zu aktivieren. Dies riskiert datenlecks an anderer Stelle in der App, wenn die Anwendung SafariViewController zum Anzeigen von Unternehmensdaten verwendet, sodass die Anwendung keine Unternehmensdaten in einem dieser Webviewtypen anzeigen sollte.
Exitkriterien
- Haben Sie Ihre App auf der Registrierungsseite der Microsoft Entra-App registriert?
- Haben Sie MSAL in Ihre Anwendung integriert?
- Haben Sie die Brokerauthentifizierung aktiviert, indem Sie einen Umleitungs-URI generiert und in der MSAL-Konfigurationsdatei festgelegt haben?
- Haben Sie sichergestellt, dass die erforderlichen Konfigurationsinformationen für MSAL in Ihrem IntuneMAMSettings-Wörterbuch mit denen in Ihren Microsoft Entra App-Registrierungen übereinstimmen?
Häufig gestellte Fragen
Was ist mit ADAL?
Die vorherige Authentifizierungsbibliothek von Microsoft, die Azure Active Directory-Authentifizierungsbibliothek (ADAL), ist veraltet.
Wenn Ihre Anwendung bereits ADAL integriert hat, finden Sie weitere Informationen unter Aktualisieren Ihrer Anwendungen für die Verwendung der Microsoft-Authentifizierungsbibliothek (MICROSOFT Authentication Library, MSAL). Informationen zum Migrieren Ihrer App von ADAL zu MSAL finden Sie unter Migrieren von Anwendungen zu MSAL für iOS und macOS.
Es wird empfohlen, vor der Integration des Intune App SDK von ADAL zu MSAL zu migrieren.
Nächste Schritte
Nachdem Sie alle oben genannten Exitkriterien erfüllt haben, fahren Sie mit Phase 3: Integration des Intune SDK in Ihre iOS-App fort.