Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Das Entwicklerhandbuch für das iOS-SDK von Microsoft Tunnel für MAM ist eine Ressource für Entwickler. Es hilft Entwicklern, das SDK in eine iOS/iPadOS-App zu integrieren und zu konfigurieren. Eine Übersicht über Microsoft Tunnel für MAM finden Sie unter Microsoft Tunnel für MAM für iOS/iPadOS – Intune-Administratorhandbuch.
Dieser Leitfaden behandelt verschiedene Teile des Integrationsprozesses in Ihrem Xcode-App-Projekt, einschließlich der Installation der Frameworks, der Konfiguration der Datei, der info.plist Build-Einstellungen, der Schlüsselfreigabe und der Implementierung der Delegatmethoden des SDK.
Diese Komponenten sind bei der Entwicklung einer iOS/iPadOS-App von entscheidender Bedeutung. Entwickler müssen verstehen, wie man in den SDK-Komponenten navigiert und sie konfiguriert. Wenn Sie mit der Entwicklung von Xcode- und iOS/iPadOS-Apps noch nicht vertraut sind, kann Ihnen dieser Leitfaden helfen. Sie bietet eine Übersicht darüber, wo die verschiedenen SDK-Komponenten zu finden sind und wie Sie diese Elemente in Ihren App-Projekten verwenden.
Diese Funktion gilt für:
- iOS/iPadOS
Was befindet sich im SDK-Repository?
Das SDK-Repository enthält die folgenden Frameworks. In einem späteren Schritt fügen Sie diese Frameworks Ihrem App-Projekt hinzu:
crypto.xcframeworkMCPCommon.xcframeworkMCPCore.xcframeworkMCPPluginUnencryptedFile.xcframeworkMicrosoftTunnelApi.xcframeworkMSTAPNextPluginSecurityOpenssl.xcframeworkMSTAPNextPluginSwiftSupport.xcframeworkMSTAPNextPluginVpnMicrosoftTunnel.xcframeworkssl.xcframework
Voraussetzungen
Zur Verwendung des Microsoft Tunnel für MAM iOS SDK sind die folgenden Voraussetzungen erforderlich:
Ein macOS-Computer mit installiertem Xcode 14.0 oder höher
Die iOS/iPadOS-App Ihres Geschäftsbereichs muss auf iOS/iPadOS 14.0 oder höher ausgerichtet sein.
Es gibt zwei GitHub SDKs, die Sie herunterladen und in Ihre iOS-App in Xcode integrieren müssen. Stellen Sie sicher, dass die folgenden Projekte erfolgreich erstellt werden, bevor Sie mit dem Microsoft Tunnel für MAM iOS SDK fortfahren:
- Intune App SDK für iOS (öffnet eine GitHub-Website): Installieren Sie mindestens die Version 16.1.1.
Lesen Sie auf dieser Website auch die Datei mit dem Microsoft-Lizenzbedingungen im Intune App SDK für iOS.
Bewahren Sie für Ihre Unterlagen eine Kopie der Lizenzbedingungen auf. Durch das Herunterladen und Verwenden des Microsoft Tunnel für MAM iOS-SDK stimmen Sie den Lizenzbedingungen zu. Wenn Sie den Lizenzbedingungen nicht zustimmen, verwenden Sie die Software nicht.
- Microsoft Authentication Library (MSAL) (MSAL) (öffnet eine GitHub-Website): Installieren Sie mindestens die Version 1.2.3.
Installieren und Einrichten des iOS-SDK für Microsoft Tunnel für MAM (öffnet eine GitHub-Site). Dieses SDK steht im Mittelpunkt dieses Artikels.
Wichtig
Intune veröffentlicht regelmäßig Updates für das Microsoft Tunnel für MAM iOS SDK. Überprüfen Sie regelmäßig das Microsoft Tunnel für MAM iOS SDK auf Updates. Fügen Sie diese Updates dem Veröffentlichungszyklus Ihrer Softwareentwicklung hinzu. Sie möchten sicherstellen, dass Ihre Apps die Updates und Funktionserweiterungen für Microsoft Tunnel-Gateway unterstützen.
Funktionsweise des iOS-SDK von Microsoft Tunnel für MAM
Der Tunnel für das MAM iOS SDK ermöglicht es iOS/iPadOS-Apps, eine "In-App"-VPN-Verbindung herzustellen. Die VPN-Verbindung besteht nur innerhalb der App.
Zusammenfassend sind diese In-App-VPN-Verbindungen:
- Diskrete VPN-Verbindungen, die nicht auf Geräteebene liegen
- Nur auf die Anwendungsnetzwerkebene beschränkt
Wenn eine App einen Netzwerkaufruf tätigt, fängt das SDK den Netzwerkaufruf ab und stellt die VPN-Verbindung her. Diese In-App-VPN-Verbindung wird in der Einstellungs-App auf dem iOS/iPadOS-Gerät nicht angezeigt.
Architektur: Tunnel für MAM iOS SDK
Die folgende Abbildung beschreibt den Flow einer verwalteten App, die erfolgreich in Tunnel für MAM iOS SDK integriert wurde:
Beim ersten Start der App wird eine Verbindung über das Microsoft Tunnel für MAM SDK für iOS hergestellt.
Der Tunnel ruft ein Geräteauthentifizierungstoken von Microsoft Entra ID ab.
Wenn das Gerät bei einer anderen MAM-fähigen App angemeldet ist, z. B. Microsoft Outlook, Microsoft Edge oder Microsoft 365 Mobile-App, verfügt das Gerät möglicherweise bereits über ein Microsoft Entra-Authentifizierungstoken. Wenn bereits ein gültiges Authentifizierungstoken vorhanden ist, wird das vorhandene Token verwendet.
Es findet eine TCP-Verbindung statt, bei der es sich um einen TLS-Handshake zwischen dem Token und dem Tunnelserver handelt.
Wenn UDP auf dem Microsoft Tunnel-Gateway aktiviert ist, wird eine Datenkanalverbindung über DTLS hergestellt. Wenn UDP deaktiviert ist, richtet TCP den Datenkanal zum Tunnelgateway ein.
Weitere Informationen finden Sie in den TCP- und UDP-Hinweisen in der Microsoft Tunnel-Übersicht – Architektur.
Wenn die mobile App eine Verbindung mit einer lokalen Unternehmensressource herstellt:
- Eine Microsoft Tunnel für MAM-API fordert eine Verbindung mit der Unternehmensressource an.
- Eine verschlüsselte Webanforderung wird erstellt und an die Unternehmensressource gesendet.
Xcode-Aufgaben
In diesem Abschnitt werden die Xcode-Aufgaben aufgeführt und beschrieben, die Sie ausführen müssen, einschließlich:
- Frameworks und Bibliotheken hinzufügen
- Überprüfen und aktualisieren Sie die folgenden Features:
-
info.plistDatei - Buildeinstellungen
- Schlüsselbundfreigabe
-
- Verwenden Sie die Beispiele, um das Xcode AppDelegate-Projekt zu aktualisieren und eine Microsoft Tunnel-Delegatdatei hinzuzufügen.
Schritt 1 – Hinzufügen der Frameworks und Bibliotheken
Die folgenden Frameworks enthalten die erforderlichen APIs und Delegationsmethoden für die Kommunikation mit dem Intune Microsoft Tunnel-Gateway. Sie implementieren die Microsoft Tunnel-VPN-Features innerhalb der App.
Führen Sie die folgenden Schritte aus, um den Tunnel für MAM iOS SDK zu aktivieren:
Laden Sie den Tunnel für das MAM iOS-SDK herunter, und extrahieren Sie ihn in einen Ordner auf einem macOS-Computer. Diese Aufgabe ist auch in den Voraussetzungen aufgeführt.
Kopieren Sie die folgenden neun Frameworks in den Ordner "Xcode-App-Projektframeworks":
crypto.xcframeworkMCPCommon.xcframeworkMCPCore.xcframeworkMCPPluginUnencryptedFile.xcframeworkMicrosoftTunnelApi.xcframeworkMSTAPNextPluginSecurityOpenssl.xcframeworkMSTAPNextPluginSwiftSupport.xcframeworkMSTAPNextPluginVpnMicrosoftTunnel.xcframeworkssl.xcframework
Wählen Sie im Xcode-Projekt Ihr App-Projekt >Dateien hinzufügen aus. Im folgenden Beispiel werden Dateien einem App-Projekt mit dem Namen "Flash-Chat" hinzugefügt:
Wählen Sie unter PROJEKTZIELE> die Option Buildphasen>Frameworks einbetten. Fügen Sie (+) alle neun Frameworks hinzu:
Das folgende Beispiel zeigt alle neun hinzugefügten Frameworks:
Wählen Sie unter PROJEKTZIELE> die Option Buildphasen>Binärdatei mit Bibliotheken verknüpfen aus. In der Liste sollte nur das
MicrosoftTunnelApi.xcframeworkFramework hinzugefügt werden. Wenn andere Frameworks aufgeführt sind, entfernen Sie sie mit dem Minuszeichen (-):
Schritt 2 – Aktualisieren der info.plist Datei
Bestätigen Sie im info.plist Projekt für die Xcode-App die folgenden Einstellungen:
Bündel-ID: Stellen Sie sicher, dass dieselbe Bündel-ID, die in der Microsoft Entra-App-Registrierung für die mobile iOS-App aufgeführt ist, dieselbe Bündel-ID in Ihrem App-Projekt ist:
So überprüfen Sie die Paket-ID:
URL-Typen: Wählen Sie unter PROJEKTZIELE>die Option Info aus.
Überprüfen Sie unter URL-Typen, ob die
$(PRODUCT_BUNDLE_IDENTIFIER)Variable vorhanden ist. Wenn Sie das Intune App SDK für iOS in Ihr App-Projekt integriert haben (eine erforderliche Voraussetzung), sollte diese Variable erstellt worden sein.Wenn die Variable nicht vorhanden ist, müssen Sie sie hinzufügen:
Erstellen Sie mit dem Intune App SDK für iOS (eine erforderliche Voraussetzung) eine
info.plistArrayeigenschaft und nennen Sie sie Abfrage-URL-Schemata.Fügen Sie die im Schritt 5 von Erstellen des SDK in Ihre mobile App aufgeführten Zeichenfolgenelemente hinzu. In diesem Schritt werden die Intune MAM SDK-URL-Schemas erstellt.
Das folgende Beispiel zeigt die info.plist mit abgefragten URL-Schemas:
Fügen Sie die
$(PRODUCT_BUNDLE_IDENTIFIER)Variable hinzu.Das folgende Beispiel zeigt die
$(PRODUCT_BUNDLE_IDENTIFIER)Variable in URL-Typen:
IntuneMAMSettings: Stellen Sie sicher, dass die folgenden MSAL-Einstellungen mit den entsprechenden Registrierungswerten für die Microsoft Entra-App konfiguriert wurden:
Wechseln Sie zuPROJEKTZIELINFORMATIONEN>>.
Wählen Sie IntuneMAMSettings aus. Bestätigen Sie Ihre Einstellungen:
-
ADALAuthority: Geben Sie die Microsoft Entra-Mandanten-ID ein, z. Bhttps://login.microsoftonline.com/USE_YOUR_ Directory (tenant) ID. . . -
ADALClientId: Geben Sie die Anwendungsclient-ID ein. -
ADALRedirectUri: EINGABETASTEmsauth.$(PRODUCT_BUNDLE_IDENTIFIER):/auth.
-
Wenn Sie das Intune App SDK für iOS in Ihr App-Projekt integriert haben (eine erforderliche Voraussetzung), hätten diese Einstellungen konfiguriert worden sein müssen.
Wenn diese Einstellungen nicht konfiguriert sind, müssen Sie sie konfigurieren. Folgen Sie zum Erstellen der IntuneMAMSettings-Wörterbucheigenschaft
info.plistund der zugehörigen Zeichenfolgen der Microsoft Authentication Library (MSAL) dem Intune App SDK für iOS (vorausgesetzte Voraussetzung) unter Konfigurieren der MSAL-Einstellungen für das Intune App SDK.Im folgenden Beispiel sind diese konfigurierten Werte dargestellt:
Schritt 3 – Bitcode deaktivieren
- Wechseln Sie zuPROJEKTZIELE>>Buildeinstellungen.
- Buildoptionen> auswählenBitcode aktivieren.
- Wählen Sie "Nein" aus.
Schritt 4: Schlüsselbundfreigabe hinzufügen
Die Schlüsselbundfreigabe kann im App-Projekt vorhanden sein. Wenn er nicht da ist, fügen Sie hinzu:
- Wechseln Sie zuPROJEKTZIELE>>Signierung & Funktionen.
- Wählen Sie Schlüsselbundfreigabe aus.
- Fügen Sie in der Liste Schlüsselbundgruppen den Eintrag (+)
com.microsoft.workplacejoinhinzu.
Schritt 5 – Integrieren des SDK in Ihre App
✔️ Verwenden Sie die TunnelMAMTestApp2.xcproject Beispiel-App.
Abhängig von der LOB-App und ihrer Implementierung/ihrem Verwendungszweck kann die Verwendung variieren MicrosoftTunnelApi . Es gibt einige Kernfunktionen, die Sie kennen müssen, wenn Sie das SDK in Ihre App integrieren:
- Alle Interaktionen mit dem Microsoft Tunnel für MAM iOS SDK werden über ein
MicrosoftTunnelAPISingleton-Objekt verarbeitet. - Das
MicrosoftTunnelAPIObjekt interagiert mit der App über einen Delegaten, der eineMicrosoftTunnelDelegateSchnittstelle implementiert.
Um zu verstehen, wie man den Microsoft Tunnel-Delegaten schreibt und wie der Initialisiert wirdMicrosoftTunnelAPI, verwenden Sie die Beispiel-Apps für das iOS-SDK von Microsoft Tunnel für MAM (öffnet eine GitHub-Site).
In den Beispiel-Apps zeigt das Xcode-Projekt AppDelegate:
- Behandeln von MSAL-URL-Rückrufen
- Starten des für Tunnel erforderlichen Registrierungs- und Initialisierungsprozesses
Öffnen Sie zunächst die TunnelMAMTestApp2.xcproject Beispiel-App, und sehen Sie sich die AppDelegate-& MicrosoftTunnelDelegate im App-Projekt an.
Beispielapps
✔️ Laden Sie unter Microsoft Tunnel für MAM iOS SDK-Beispiel-Apps herunter (öffnet eine GitHub-Site).
Diese Beispiel-Apps können Ihnen den Einstieg erleichtern und verschiedene Szenarien abdecken.
MicrosoftTunnelAPI-Methoden
Dazu MicrosoftTunnelAPI gehören folgende Methoden:
Initialize– Prüft und richtet die VPN-Konfigurationen ein, richtet die Protokollierung ein und richtet dieMicrosoftTunnelAPIInstance ein.Connect– Ruft die Instance ab und ermöglicht das Abfangen vonMicrosoftTunnelAPINetzwerkdatenverkehr. Wenn die API nicht initialisiert ist, wird ein Fehler angezeigt.Disconnect- Ruft die instance ab und deaktiviert das Abfangen vonMicrosoftTunnelAPINetzwerkdatenverkehr. Wenn die API nicht initialisiert ist, wird ein Fehler angezeigt.onTokenRequired– Optional. Wenn Ihre App bereits in MSAL integriert istIntuneMAM, müssen Sie dieseonTokenRequiredMethode implementieren. Diese Methode verwendet dieIntuneMAMSettingsund MSAL, um ein gültiges Authentifizierungstoken für die Verbindung mit dem Microsoft Tunnel-Gateway abzurufen.Logging– Es gibt einige verschiedene Protokollierungsklassen, die durch bezeichnet werdenk. Erstellt beispielsweisekLoggingClassConnecteine Protokollausgabe in der Xcode-Konsole. Diese Protokollierungskonfigurationsschlüssel können der Delegatenkonfiguration hinzugefügt werden. Es gibt einige Beispiele für diese Protokollierungsklassen in den Beispiel-Apps.kLoggingClassInternalkLoggingClassConnectkLoggingClassPacketkLoggingClassSocketkLoggingClassHttpkLoggingClassIntunekLoggingClassMobileAccesskLoggingSeverityDebugkLoggingSeverityInfokLoggingSeverityWarnkLoggingSeverityMinorkLoggingSeverityMajorkLoggingSeverityCrit
Warnung
Verwenden Sie keine Debug-Schlüssel in bereitgestellten Apps. Die Schlüssel können benutzerspezifische Informationen und Sicherheitsdaten protokollieren und anzeigen.
Anmelden bei iOS/iPadOS-Branchen-Apps
Durch die Integration des SDK wird die Protokollierung nicht automatisch aktiviert. Der Entwickler muss den entsprechenden Code hinzufügen, um das Protokollierungsdelegaten-Framework zu implementieren und die entsprechenden Protokollierungsaufrufe vorzunehmen. Die spezifische Implementierung variiert je nach SDK und den Anforderungen des Entwicklers.
Der Entwickler sollte:
Stellen Sie sicher, dass sie keine kundenidentifizierbaren oder personenbezogenen Daten des Endbenutzers in ihrer Protokollierung enthalten. Sie müssen die Datenschutzbestimmungen einhalten.
Wenden Sie sich an das Datenschutzteam der organization/organization und arbeiten Sie mit ihm zusammen. Das Datenschutzteam kann Anleitungen zu den entsprechenden Daten, die protokolliert werden können, und zu den geeigneten Methoden des Umgangs mit vertraulichen Daten geben.
Warnung
Spezifische Anleitungen zur Protokollierung und zum Datenschutz finden Sie in der Datenschutzdokumentation von Microsoft Tunnel für MAM iOS SDK (öffnet eine PDF-Datei in GitHub).
MAM-Tunnel Beispiel für eine Protokolldelegierungsmethode
Microsoft Tunnel für die mobile Anwendungsverwaltung Datenschutzinformationen
Ihre Privatsphäre ist uns wichtig. Lesen Sie die folgende datenschutzbezogene Onlinedokumentation:
- Microsoft-Datenschutzbestimmungen
- Datenschutz und personenbezogene Daten in Intune
- Datenspeicherung und -verarbeitung in Intune
Wenn das Microsoft Tunnel für MAM iOS SDK in mobile Apps integriert wird, werden die folgenden Daten erfasst, wenn ein Entwickler:
- Aktiviert das Intune MAM-Telemetriemodul in der App
Die gesammelten Daten können die folgenden Bereiche umfassen:
- Microsoft Tunnel für MAM SDK-Version
- Von Microsoft generierte Benutzerinformationen
- Geräte-ID
- Hardware- und Softwareinformationen
- Hersteller des Geräts
- Gerätemodell
- Betriebssystemversion des Geräts
- Administrator- und Kontoinformationen
- Intune-Mandanten-ID
- Microsoft Entra-Mandanten-ID
- Nutzungsmessung:
- VPN-Initialisierung
- VPN-Verbindungs- und Trennungsereignisse
- Informationen zu Fehlern
- Fehler im Zusammenhang mit VPN-Verbindungsfehlern
Es werden keine benutzerbezogenen Informationen gesammelt.
Wichtig
Als Entwickler ist es wichtig, bei der Integration des SDK keine benutzerbezogenen Daten einzuschließen, wenn Sie Code zum Adressieren und Erfassen von Nachrichten in Ihrer Anwendung verwenden.
Bekannte Probleme
Weitere bekannte Probleme finden Sie im Handbuch für Microsoft Tunnel für MAM für iOS/iPadOS – Intune-Administratorhandbuch.
Nächste Schritte
Microsoft Tunnel für MAM für iOS/iPadOS – Intune-Administratorhandbuch