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.
Verwenden Sie die Microsoft Intune App Wrapping Tool für iOS, um Intune App-Schutzrichtlinien für interne iOS-Apps zu aktivieren, ohne den Code der App selbst zu ändern.
Das Tool ist eine macOS-Befehlszeilenanwendung, die einen Wrapper um eine App erstellt. Nachdem eine App verarbeitet wurde, können Sie die Funktionalität der App ändern, indem Sie App-Schutzrichtlinien für sie bereitstellen.
Informationen zum Herunterladen des Tools finden Sie unter Microsoft Intune App Wrapping Tool für iOS auf GitHub.
Hinweis
Wenn Sie Probleme bei der Verwendung des Intune App Wrapping Tool mit Ihren Apps haben, senden Sie eine Hilfeanfrage auf GitHub.
Allgemeine Voraussetzungen für das App Wrapping Tool
Bevor Sie das App Wrapping Tool ausführen, müssen Sie einige allgemeine Voraussetzungen erfüllen:
Laden Sie die Microsoft Intune App Wrapping Tool für iOS von GitHub herunter.
Ein macOS-Computer, auf dem das Xcode-Toolset Version 16.0 oder höher installiert ist.
Ihr Unternehmen oder ein unabhängiger Softwareanbieter (Independent Software Vendor, ISV) muss die zurückgegebene iOS-App entwickeln und signieren.
Die Datei muss die Erweiterung .ipa oder .app haben.
Es muss für iOS 16.0 oder höher kompiliert sein.
Er kann nicht verschlüsselt werden.
Keine erweiterten Dateiattribute.
Legen Sie Berechtigungen fest, bevor Sie die App mit dem Intune App Wrapping Tool verarbeiten. Berechtigungen verleihen der App mehr Berechtigungen und Funktionen als die normalerweise erteilten Berechtigungen. Anweisungen finden Sie unter Festlegen von App-Berechtigungen .
- Stellen Sie sicher, dass gültige Signaturzertifikate im Systemschlüsselbund vorhanden sind. Wenn Sie Probleme beim Signieren von App-Code haben, führen Sie die folgenden Schritte aus, um dieses Problem zu beheben:
- Zurücksetzen der Vertrauenseinstellungen für alle verwandten Zertifikate
- Installieren von Zwischenzertifikaten im Systemschlüsselbund und im Anmeldeschlüsselbund
- Deinstallieren und erneutes Installieren aller zugehörigen Zertifikate
Registrieren Ihrer App bei Microsoft Entra ID
- Registrieren Sie Ihre Apps bei Microsoft Entra ID. Weitere Informationen finden Sie unter Registrieren einer Anwendung bei der Microsoft Identity Platform.
- Fügen Sie die benutzerdefinierte Umleitungs-URL zu Ihren App-Einstellungen hinzu. Weitere Informationen finden Sie unter Konfigurieren von MSAL.
- Gewähren Sie Ihrer App Zugriff auf den Intune MAM-Dienst. Weitere Informationen finden Sie unter Erteilen des App-Zugriffs auf den mobilen Intune-App-Verwaltungsdienst.
- Sobald die oben genannten Änderungen abgeschlossen sind, führen Sie die neueste Version des Intune App Wrapping Tools aus. Konfigurieren Sie Ihre Apps für die Microsoft Authentication Library (MSAL) (MSAL): Fügen Sie die Microsoft Entra Anwendungsclient-ID mit dem Intune App Wrapping Tool zu den Befehlszeilenparametern hinzu. Weitere Informationen finden Sie unter Befehlszeilenparameter.
Hinweis
Die Parameter -ac und -ar sind erforderliche Parameter. Jede App benötigt einen eindeutigen Satz dieser Parameter.
-aa ist nur für Einzelmandantenanwendungen erforderlich.
- Stellen Sie die App bereit.
Voraussetzungen für Apple-Entwickler für das App Wrapping Tool
Wenn Sie umschlossene Apps exklusiv an die Benutzer Ihrer Organization verteilen möchten, benötigen Sie ein Konto beim Apple Developer Enterprise Program und mehrere Entitäten zum Signieren von Apps, die mit Ihrem Apple Developer-Konto verknüpft sind.
Weitere Informationen zum internen Verteilen von iOS-Apps an die Benutzer Ihrer Organization finden Sie im offiziellen Leitfaden zum Verteilen von Apple Developer Enterprise Program-Apps.
Für die Verteilung von Apps, die von Intune umschlossen werden, benötigen Sie Folgendes:
Ein Entwicklerkonto beim Apple Developer Enterprise Program.
Signaturzertifikat für interne und Ad-hoc-Distribution mit gültiger Team-ID.
- Sie benötigen den SHA1-Hash des Signaturzertifikats als Parameter für die Intune App Wrapping Tool.
Bereitstellungsprofil für die interne Distribution.
Erstellen eines Apple Developer Enterprise-Kontos
Wechseln Sie zur Apple Developer Enterprise Program-Website.
Wählen Sie oben rechts auf der Seite Registrieren aus.
Lesen Sie die Checkliste zu dem, was Sie für die Registrierung benötigen. Wählen Sie unten auf der Seite " Registrierung starten " aus.
Melden Sie sich mit dem Apple-Konto Ihrer organization an. Wenn Sie keins haben, wählen Sie " Apple-Konto erstellen" aus.
Wählen Sie Ihren Entitätstyp und dann Weiter aus.
Füllen Sie das Formular mit den Informationen Ihrer organization aus. Wählen Sie Weiter. An dieser Stelle kontaktiert Apple Sie, um zu überprüfen, ob Sie berechtigt sind, Ihre organization zu registrieren.
Wählen Sie nach der Überprüfung "Lizenz zustimmen" aus.
Nachdem Sie der Lizenz zugestimmt haben, schließen Sie mit dem Kauf und der Aktivierung des Programms ab.
Wenn Sie der Teamagent sind (die Person, die dem Apple Developer Enterprise-Programm für Ihre Organization beitritt), laden Sie Teammitglieder ein, und weisen Sie Rollen zu, um Ihr Team aufzubauen. Um zu erfahren, wie Sie Ihr Team verwalten, lesen Sie die Apple-Dokumentation zum Verwalten Ihres Entwicklerkontoteams.
Erstellen eines Apple-Signaturzertifikats
Wechseln Sie zum Apple Developer-Portal.
Wählen Sie oben rechts auf der Seite Konto aus.
Melden Sie sich mit Ihrem Apple-Organisationskonto an .
Wählen Sie Zertifikate, IDs & Profile aus.
Wählen Sie das
in der oberen rechten Ecke aus. Durch diese Aktion wird ein iOS-Zertifikat hinzugefügt.Wählen Sie unter Produktion die Erstellung eines internen und Ad-hoc-Zertifikats aus.
Hinweis
Wenn Sie nicht vorhaben, die App zu verteilen, und sie nur intern testen möchten, können Sie ein iOS-App-Entwicklungszertifikat anstelle eines Zertifikats für die Produktion verwenden. Wenn Sie ein Entwicklungszertifikat verwenden, stellen Sie sicher, dass das mobile Bereitstellungsprofil die Geräte enthält, auf denen Sie die App installieren möchten.
Wählen Sie unten auf der Seite "Weiter " aus.
Lesen Sie die Anweisungen zum Erstellen einer Zertifikatsignaturanforderung (Certificate Signing Request, CSR) mithilfe der Anwendung Schlüsselbund Zugriff auf Ihrem macOS-Computer.
Folgen Sie den vorherigen Anweisungen zum Erstellen einer Zertifikatsignaturanforderung. Starten Sie auf Ihrem macOS-Computer die Anwendung "Schlüsselbundzugriff ".
Wechseln Sie im macOS-Menü am oberen Bildschirmrand zu Zertifikat-Assistent > für den Schlüsselbund: > Anfordern eines Zertifikats von einer Zertifizierungsstelle.
Befolgen Sie die Anweisungen auf der Apple-Entwicklerwebsite, um eine CSR-Datei (Certificate Signing Request) zu erstellen. Speichern Sie die CSR-Datei auf Ihrem macOS-Computer.
Kehren Sie zur Apple-Entwicklerwebsite zurück. Wählen Sie Weiter. Laden Sie dann die CSR-Datei hoch.
Apple generiert Ihr Signaturzertifikat. Laden Sie sie herunter, und speichern Sie sie an einem einprägsamen Ort auf Ihrem macOS-Computer.
Doppelklicken Sie auf die Zertifikatdatei, die Sie heruntergeladen haben, um das Zertifikat einem Schlüsselbund hinzuzufügen.
Öffnen Sie den Schlüsselbundzugriff erneut. Suchen Sie Ihr Zertifikat, indem Sie in der oberen rechten Suchleiste nach seinem Namen suchen. Klicken Sie mit der rechten Maustaste auf das Element, um das Menü anzuzeigen, und wählen Sie "Info" aus. In den Beispielbildschirmen verwenden wir ein Entwicklungszertifikat anstelle eines Produktionszertifikats.
Ein Informationsfenster wird angezeigt. Scrollen Sie nach unten und schauen Sie unter dem Fingerprints-Label . Kopieren Sie die SHA1-Zeichenfolge (unscharf), um sie als Argument für "-c" für das App Wrapping Tool zu verwenden.
Erstellen eines Bereitstellungsprofils für die In-House-Verteilung
Zurück zum Apple Developer-Kontoportal und melden Sie sich mit Ihrem Apple-Organisationskonto an.
Wählen Sie Zertifikate, IDs & Profile aus.
Wählen Sie das
in der oberen rechten Ecke aus. Durch diese Aktion wird ein iOS-Bereitstellungsprofil hinzugefügt.Wählen Sie die Option zum Erstellen eines internen Bereitstellungsprofils unter "Verteilung" aus.
Wählen Sie Weiter. Stellen Sie sicher, dass Sie das zuvor generierte Signaturzertifikat mit dem Bereitstellungsprofil verknüpfen.
Folgen Sie den Schritten zum Herunterladen Ihres Profils (mit Erweiterung)
.mobileprovisionauf Ihren macOS-Computer.Speichern Sie die Datei an einem einprägsamen Ort. Diese Datei wird bei Verwendung des App Wrapping Tool für den Parameter -p verwendet.
App Wrapping Tool herunterladen
Laden Sie die Dateien für das App Wrapping Tool von GitHub auf einen macOS-Computer herunter.
Doppelklicken Sie auf Microsoft Intune Application Restrictions Packager for iOS.dmg. Ein Fenster mit dem Endbenutzer-Lizenzvertrag (EULA) wird angezeigt. Lesen Sie das Dokument sorgfältig durch.
Wählen Sie "EULA zustimmen " aus, wodurch das Paket auf Ihrem Computer bereitgestellt wird.
Ausführen des App Wrapping Tool
Wichtig
Intune veröffentlicht regelmäßig Updates für die Intune App Wrapping Tool. Überprüfen Sie regelmäßig die Intune App Wrapping Tool für iOS auf Updates, und integrieren Sie sie in den Veröffentlichungszyklus Ihrer Softwareentwicklung, um sicherzustellen, dass Ihre Apps die neuesten App-Schutzrichtlinieneinstellungen unterstützen.
Terminal verwenden
Öffnen Sie das macOS-Terminal und führen Sie den folgenden Befehl aus:
/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]
Hinweis
Einige Parameter sind optional, wie in der folgenden Tabelle dargestellt.
Beispiel: Der folgende Beispielbefehl führt das App Wrapping Tool in der App MyApp.ipa aus. Ein Bereitstellungsprofil und der SHA-1-Hash des Signaturzertifikats werden angegeben und zum Signieren der umschlossenen App verwendet. Die Ausgabe-App (MyApp_Wrapped.ipa) wird erstellt und in Ihrem Ordner "Desktop" gespeichert.
./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
Befehlszeilenparameter
Sie können die folgenden Befehlszeilenparameter mit dem App Wrapping Tool verwenden:
Beispiel: Der folgende Beispielbefehl führt das App Wrapping Tool aus und integriert die erforderlichen Befehle beim Umschließen einer Anwendung zur Verwendung in einem einzelnen Mandanten.
./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
| Eigenschaft | Hinweise zur Verwendung |
|---|---|
-i |
<Path of the input native iOS application file>. Der Dateiname muss auf .app oder .ipa enden. |
-o |
<Path of the wrapped output application> |
-p |
<Path of your provisioning profile for iOS apps> |
-c |
<SHA1 hash of the signing certificate> |
-h |
Zeigt ausführliche Nutzungsinformationen zu den verfügbaren Befehlszeileneigenschaften für das App Wrapping Tool an. |
-ac |
<Client ID of the input app if the app uses the Microsoft Authentication Library (MSAL)> Dies ist die GUID im Feld "Client-ID" aus dem Eintrag Ihrer App in der App-Registrierung. |
-ar |
<Redirect/Reply URI of the input app if the app uses the Microsoft Authentication Library (MSAL)> Dies ist der Umleitungs-URI, der in Ihrer App-Registrierung konfiguriert ist. In der Regel ist dies das URL-Protokoll der Anwendung, zu der die Microsoft Authenticator-App nach der vermittelten Authentifizierung zurückkehrt. |
-aa |
(erforderlich für Einzelmandanten-Apps) <Authority URI of the input app> d.h. https://login.microsoftonline.com/<tenantID>/ |
-v |
(Optional) Gibt ausführliche Meldungen an die Konsole aus. Verwenden Sie dieses Flag, um Fehler zu debuggen. |
-e |
(Optional) Verwenden Sie dieses Flag, damit das App Wrapping Tool fehlende Berechtigungen entfernt, während die App verarbeitet wird. Weitere Informationen finden Sie unter Festlegen von App-Berechtigungen. |
-xe |
(Optional) Druckt Informationen über die iOS-Erweiterungen in der App und darüber, welche Berechtigungen für ihre Verwendung erforderlich sind. Weitere Informationen finden Sie unter Festlegen von App-Berechtigungen. |
-x |
(Optional) <An array of paths to extension provisioning profiles>. Verwenden Sie diese Eigenschaft, wenn Ihre App Bereitstellungsprofile für Erweiterungen benötigt. |
-b |
(Optional) Verwenden Sie -b ohne Argument, wenn die umschlossene Ausgabe-App die gleiche Paketversion wie die Eingabe-App haben soll (nicht empfohlen). Wird verwendet -b <custom bundle version> , wenn die umschlossene App eine benutzerdefinierte CFBundleVersion aufweisen soll. Wenn Sie eine benutzerdefinierte CFBundleVersion angeben, empfiehlt es sich, die CFBundleVersion der nativen App um die am wenigsten signifikante Komponente zu erhöhen, z. B. 1.0.0 -> 1.0.1. |
-f |
(Optional) <Path to a plist file specifying arguments.> Verwenden Sie dieses Flag vor der plist-Datei , wenn Sie die plist-Vorlage verwenden möchten, um die restlichen IntuneMAMPackitger-Eigenschaften wie -i, -o und -p anzugeben. Siehe Verwenden einer plist zur Eingabe von Argumenten. |
-dt |
(Optional) Deaktivieren Sie die Erfassung von Microsoft Intune-Clientdaten. |
-dl |
(Optional) Deaktivieren Sie MSAL-Protokolle in den Intune-Protokollen für Anwendungen, die in MSAL integriert sind, und implementieren Sie ihren eigenen MSAL-Protokollierungsrückruf. |
-ds |
(Optional) Deaktivieren Sie den Schutz von Intune für SFSafariViewController, SFAuthSession und ASWebAuthenticationSession. |
-mp |
(Optional) <Path to a plist file containing MAM settings to merge into the wrapped app>. Verwenden Sie diese Eigenschaft, um benutzerdefinierte Intune MAM SDK-Einstellungen bereitzustellen, die während des Umbruchvorgangs mit dem IntuneMAMSettings-Wörterbuch der App zusammengeführt werden. Hinweis: Die Einstellungen MultiIdentity, MAMPolicyRequired, AutoEnrollOnLaunchund ContainingAppBundleId werden über -mp nicht unterstützt, da sie automatisch vom App Wrapping Tool konfiguriert werden. Die Authentifizierungseinstellungen (ADALAuthority, ADALClientId, ADALRedirectUri) werden auch über -mp nicht unterstützt und müssen mit den Befehlszeilenparametern -aa, -ac und -ar konfiguriert werden. |
Verwenden einer plist zur Eingabe von Argumenten
Eine einfache Möglichkeit, das App Wrapping Tool auszuführen, besteht darin, alle Befehlsargumente in eine plist-Datei zu packen. plist ist ein XML-ähnliches Dateiformat, mit dem Sie Ihre Befehlszeilenargumente über eine Formularschnittstelle eingeben können.
Öffnen Sie Parameters.plist im Ordner IntuneMAMPackager/Contents/MacOS (eine leere plist-Vorlage) mit einem Text-Editor oder Xcode. Geben Sie Ihre Argumente für die folgenden Schlüssel ein:
| Plist-Schlüssel | Typ | Standardwert | Hinweise |
|---|---|---|---|
| Pfad des Eingabeanwendungspakets | Zeichenfolge | leer | Identisch mit -i |
| Pfad des Ausgabeanwendungspakets | Zeichenfolge | leer | Identisch mit -o |
| Pfad des Bereitstellungsprofils | Zeichenfolge | leer | Identisch mit -p |
| SHA-1-Zertifikathash | Zeichenfolge | leer | Entspricht -c |
| MSAL-Autorität | Zeichenfolge | leer | Entspricht -aa |
| MSAL-Client-ID | Zeichenfolge | leer | Identisch mit -ac |
| MSAL-Antwort-URI | Zeichenfolge | leer | Identisch mit -ar |
| Ausführlich aktiviert | Boolean | false | Entspricht -v |
| Fehlende Berechtigungen entfernen | Boolean | false | Identisch mit -e |
| Standardmäßiges Buildupdate verhindern | Boolean | false | Entspricht der Verwendung von -b ohne Argumente |
| Außerkraftsetzung der Buildzeichenfolge | Zeichenfolge | leer | Die benutzerdefinierte CFBundleVersion der App "Umschlossene Ausgabe" |
| Profilpfade für die Erweiterungsbereitstellung | Array von Zeichenfolgen | leer | Ein Array von Erweiterungsbereitstellungsprofilen für die App. |
| Telemetrie deaktivieren | Boolean | false | Identisch mit -dt |
| Außerkraftsetzung des MSAL-Protokolls deaktivieren | Boolean | false | Identisch mit -dl |
| MAM Einstellungen plist-Pfad | Zeichenfolge | leer | Identisch mit -mp |
Führen Sie IntuneMAMPackager mit der plist als einzigem Argument aus:
./IntuneMAMPackager –f Parameters.plist
Nach dem Umbruch
Nach Abschluss des Umbruchvorgangs wird die Meldung "Die Anwendung wurde erfolgreich umschlossen" angezeigt. Wenn ein Fehler auftritt, finden Sie Hilfe unter Fehlermeldungen .
Die umschlossene App wird in dem zuvor angegebenen Ausgabeordner gespeichert. Sie können die App in das Intune Admin Center hochladen und einer Richtlinie für die Verwaltung mobiler Anwendungen zuordnen.
Wichtig
Beim Hochladen einer umschlossenen App können Sie versuchen, eine ältere Version der App zu aktualisieren, wenn bereits eine ältere (umschlossene oder native) Version in Intune bereitgestellt wurde. Wenn ein Fehler auftritt, laden Sie die App als neue App hoch, und löschen Sie die ältere Version.
Sie können die App nun für Ihre Benutzergruppen bereitstellen und App-Schutzrichtlinien auf die App ausrichten. Die App wird auf dem Gerät mit den von Ihnen angegebenen Richtlinien zum Schutz der App ausgeführt.
Wie oft sollte ich meine iOS-Anwendung mit dem Intune App Wrapping Tool umschließen?
Die wichtigsten Szenarien, in denen Sie Ihre Anwendungen neu umschließen müssen, sind die folgenden:
- Die Anwendung selbst hat eine neue Version veröffentlicht. Die vorherige Version der App wurde umschlossen und in das Intune Admin Center hochgeladen.
- Die Intune App Wrapping Tool für iOS hat eine neue Version veröffentlicht, die wichtige Fehlerbehebungen oder neue, spezifische Features Intune Anwendungsschutzrichtlinien ermöglicht. Die Veröffentlichung einer neuen Version erfolgt alle 6 bis 8 Wochen über das GitHub-Repository für die Microsoft Intune App Wrapping Tool für iOS.
Für iOS/iPadOS können Sie die App mit einem anderen Zertifikat oder Bereitstellungsprofil umschließen als das, das ursprünglich zum Signieren der App verwendet wurde. Enthält das neue Bereitstellungsprofil jedoch nicht die in der App angegebenen Berechtigungen, schlägt der Umbruchvorgang fehl. Wenn Sie die Befehlszeilenoption "-e" verwenden, die alle fehlenden Berechtigungen aus der App entfernt, kann das Erzwingen des Umbruchs, damit der Umbruch in diesem Szenario nicht fehlschlägt, zu einer Funktionsunterbrechung in der App führen.
Einige bewährte Methoden für das Umbrechen sind:
- Stellen Sie sicher, dass ein anderes Bereitstellungsprofil über alle erforderlichen Berechtigungen wie jedes vorherige Bereitstellungsprofil verfügt.
Fehlermeldungen und Protokolldateien
Verwenden Sie die folgenden Informationen, um Probleme mit dem App-Umbruchtool zu beheben.
Fehlermeldungen
Wenn das App-Umbruchtool nicht erfolgreich abgeschlossen werden kann, wird eine der folgenden Fehlermeldungen in der Konsole angezeigt:
| Fehlermeldung | Weitere Informationen |
|---|---|
| Sie müssen ein gültiges iOS-Bereitstellungsprofil angeben. | Ihr Bereitstellungsprofil ist möglicherweise ungültig. Stellen Sie sicher, dass Sie über die richtigen Berechtigungen für Geräte verfügen und dass Ihr Profil ordnungsgemäß auf die Entwicklung oder Verteilung ausgerichtet ist. Möglicherweise ist auch Ihr Bereitstellungsprofil abgelaufen. |
| Geben Sie einen gültigen Namen für die Eingabeanwendung an. | Überprüfen Sie, ob der angegebene eingegebene Anwendungsname korrekt ist. |
| Geben Sie einen gültigen Pfad zur Ausgabeanwendung an. | Stellen Sie sicher, dass der Pfad zur angegebenen Ausgabeanwendung vorhanden und korrekt ist. |
| Geben Sie ein gültiges Eingabe-Bereitstellungsprofil an. | Stellen Sie sicher, dass Sie einen gültigen Namen und eine Erweiterung für das Bereitstellungsprofil angegeben haben. In Ihrem Bereitstellungsprofil fehlen möglicherweise Berechtigungen, oder die –p Befehlszeilenoption ist nicht enthalten. |
| Die angegebene Eingabeanwendung wurde nicht gefunden. Geben Sie einen gültigen Namen und Pfad für die Eingabeanwendung an. | Stellen Sie sicher, dass Ihr Eingabe-App-Pfad gültig ist und vorhanden ist. Stellen Sie sicher, dass sich die Eingabe-App an diesem Speicherort befindet. |
| Die angegebene Eingabedatei für das Bereitstellungsprofil wurde nicht gefunden. Geben Sie eine gültige Eingabe-Bereitstellungsprofildatei an. | Stellen Sie sicher, dass der Pfad zur Eingabe-Bereitstellungsdatei gültig ist und die angegebene Datei vorhanden ist. |
| Der angegebene Ausgabeanwendungsordner wurde nicht gefunden. Geben Sie einen gültigen Pfad zur Ausgabeanwendung an. | Stellen Sie sicher, dass der Ausgabepfad gültig ist und vorhanden ist. |
| Ausgabe-App hat keine IPA-Erweiterung . | Nur Apps mit den Erweiterungen .app und .ipa werden von der App Wrapping Tool akzeptiert. Stellen Sie sicher, dass Ihre Ausgabedatei eine gültige Erweiterung aufweist. |
| Es wurde ein ungültiges Signaturzertifikat angegeben. Geben Sie ein gültiges Apple-Signaturzertifikat an. | Stellen Sie sicher, dass Sie das richtige Signaturzertifikat aus dem Apple Developer-Portal heruntergeladen haben. Ihr Zertifikat ist möglicherweise abgelaufen, oder es fehlt ein öffentlicher oder privater Schlüssel. Wenn Ihr Apple-Zertifikat und Ihr Bereitstellungsprofil verwendet werden können, um eine App in Xcode korrekt zu signieren, sind sie für das App Wrapping Tool gültig. Überprüfen Sie außerdem, ob das Signaturzertifikat einen eindeutigen Namen im Schlüsselbund des macOS-Hostcomputers hat. Wenn mehrere Versionen desselben Zertifikats im Schlüsselbund vorhanden sind, gibt das Tool diesen Fehler zurück. |
| Die angegebene Eingabeanwendung ist ungültig. Geben Sie eine gültige Anwendung an. | Stellen Sie sicher, dass Ihre gültige iOS-Anwendung als .app ODER-Datei .ipa kompiliert ist. |
| Die angegebene Eingabeanwendung ist verschlüsselt. Geben Sie eine gültige, unverschlüsselte Anwendung an. | Das App Wrapping Tool unterstützt keine verschlüsselten Apps. Stellen Sie eine unverschlüsselte App bereit. |
| Die angegebene Eingabeanwendung hat kein PIE-Format (Position Independent Executable). Geben Sie eine gültige Anwendung im AE-Format an. | Positionsunabhängige ausführbare Apps (PIE) können beim Ausführen an einer zufälligen Speicheradresse geladen werden. Dieses Feature kann Sicherheitsvorteile bieten. Weitere Informationen zu den Sicherheitsvorteilen finden Sie in der Apple Developer-Dokumentation. |
| Die angegebene Eingabe-App ist umschlossen. Geben Sie eine gültige nicht umschlossene Anwendung an. | Sie können eine App nicht verarbeiten, wenn das Tool sie bereits verarbeitet hat. Wenn Sie eine App erneut verarbeiten möchten, führen Sie das Tool mit der ursprünglichen Version der App aus. |
| Die angegebene Eingabeanwendung ist nicht signiert. Geben Sie eine gültige signierte Anwendung an. | Das App-Umbruchtool erfordert, dass Apps signiert werden. Konsultieren Sie die Entwicklerdokumentation, um zu erfahren, wie Sie eine umschlossene App signieren. |
| Die angegebene Eingabeanwendung muss im IPA- oder .app Format vorliegen. | Das App-Umbruchtool akzeptiert .app nur AND-Erweiterungen .ipa . Stellen Sie sicher, dass Ihre Eingabedatei eine gültige Erweiterung hat und als ODER-Datei .app.ipa kompiliert wird. |
| Die angegebene Eingabe-App ist umschlossen und verfügt über die neueste Richtlinienvorlagenversion. | Das App Wrapping Tool umschließt eine vorhandene umschlossene App nicht erneut mit der neuesten Richtlinienvorlagenversion. |
| WARNUNG: Sie haben keinen SHA1-Zertifikathash angegeben. Stellen Sie sicher, dass Ihre umschlossene Anwendung signiert ist, bevor Sie sie bereitstellen. | Stellen Sie sicher, dass Sie einen gültigen SHA1-Hash nach dem –c Befehlszeilenflag angeben. |
Sammeln von Protokollen für Ihre umschlossenen Anwendungen vom Gerät
Führen Sie die folgenden Schritte aus, um während der Problembehandlung Protokolle für Ihre umschlossenen Anwendungen abzurufen.
- Wechseln Sie zur iOS-Einstellungs-App auf Ihrem Gerät, und wählen Sie Ihre Branchen-App aus.
- Wählen Sie Microsoft Intune aus.
- Schalten Sie die Einstellung der Anzeigediagnosekonsole auf "Ein".
- Starten Sie Ihre Branchenanwendung.
- Klicken Sie auf den Link "Erste Schritte".
- Sie können jetzt Protokolle direkt an Microsoft senden oder über eine andere Anwendung auf dem Gerät freigeben.
Hinweis
Die Protokollierungsfunktion ist für Apps aktiviert, die mit dem Intune App Wrapping Tool Version 7.1.13 oder höher umschlossen sind.
Sammeln von Absturzprotokollen aus dem System
Ihre App protokolliert möglicherweise nützliche Informationen in der iOS-Clientgerätekonsole. Diese Informationen sind nützlich, wenn Sie Probleme mit der Anwendung haben und feststellen müssen, ob das Problem mit dem App Wrapping Tool oder der App selbst zusammenhängt. Um diese Informationen abzurufen, führen Sie die folgenden Schritte aus:
Reproduzieren Sie das Problem, indem Sie die App ausführen.
Erfassen Sie die Konsolenausgabe, indem Sie die Anweisungen von Apple zum Debuggen bereitgestellter iOS-Apps befolgen.
Umschlossene Apps bieten Benutzern auch die Möglichkeit, Protokolle direkt vom Gerät per E-Mail zu senden, nachdem die App abgestürzt ist. Benutzer können die Protokolle an Sie zur Überprüfung senden und bei Bedarf an Microsoft weiterleiten.
Anforderungen an Zertifikat, Bereitstellungsprofil und Authentifizierung
Das App Wrapping Tool für iOS hat einige Anforderungen, die erfüllt sein müssen, um die volle Funktionalität zu gewährleisten.
| Anforderung | Details |
|---|---|
| iOS-Bereitstellungsprofil | Stellen Sie sicher, dass das Bereitstellungsprofil gültig ist, bevor Sie es einschließen. Das App Wrapping Tool überprüft bei der Verarbeitung einer iOS-App nicht, ob das Bereitstellungsprofil abgelaufen ist. Wenn Sie ein abgelaufenes Bereitstellungsprofil angeben, wird es vom App-Umbruchtool eingeschlossen. Erst wenn die App auf einem iOS-Gerät nicht installiert werden kann, wird ein Problem angezeigt. |
| iOS-Signaturzertifikat | Stellen Sie sicher, dass das Signaturzertifikat gültig ist, bevor Sie es angeben. Das Tool überprüft bei der Verarbeitung von iOS-Apps nicht, ob ein Zertifikat abgelaufen ist. Wenn der Hash für ein abgelaufenes Zertifikat bereitgestellt wird, verarbeitet und signiert das Tool die App, kann aber nicht auf Geräten installiert werden. Stellen Sie sicher, dass das zum Signieren der umschlossene App bereitgestellte Zertifikat eine Übereinstimmung im Bereitstellungsprofil aufweist. Das Tool überprüft nicht, ob das Bereitstellungsprofil eine Übereinstimmung mit dem Zertifikat aufweist, das zum Signieren der umschlossenen Anwendung bereitgestellt wurde. |
| Authentifizierung | Ein Gerät muss über eine PIN verfügen, damit die Verschlüsselung funktioniert. Auf Geräten, auf denen Sie eine umschlossene App bereitgestellt haben, muss sich der Benutzer zum Berühren der status-Leiste des Geräts erneut mit einem Geschäfts-, Schul- oder Unikonto anmelden. Die Standardrichtlinie in einer umschlossenen App ist die Authentifizierung beim Neustart. iOS verarbeitet alle externen Benachrichtigungen (z. B. einen Telefonanruf), indem die App beendet und dann neu gestartet wird. |
Festlegen von App-Berechtigungen
Vor dem Umschließen Ihrer App können Sie Berechtigungen erteilen, um der App zusätzliche Berechtigungen und Funktionen zu erteilen, die über die üblichen Möglichkeiten einer App hinausgehen. Während der Codesignierung wird eine Berechtigungsdatei verwendet, um spezielle Berechtigungen innerhalb Ihrer App anzugeben (z. B. den Zugriff auf einen freigegebenen Schlüsselbund). Bestimmte App-Dienste, die als Funktionen bezeichnet werden, werden in Xcode während der App-Entwicklung aktiviert. Nach der Aktivierung werden die Funktionen in Ihrer Berechtigungsdatei widergespiegelt. Weitere Informationen zu Berechtigungen und Funktionen finden Sie unter Hinzufügen von Funktionen in der iOS-Entwicklerbibliothek. Eine vollständige Liste der unterstützten Funktionen finden Sie unter Unterstützte Funktionen.
Unterstützte Funktionen für das App Wrapping Tool für iOS
| Funktion | Beschreibung | Empfohlene Anleitung |
|---|---|---|
| App-Gruppen | Verwenden Sie App-Gruppen, um mehreren Apps den Zugriff auf freigegebene Container zu ermöglichen und mehr prozessübergreifende Kommunikation zwischen Apps zu ermöglichen. Um App-Gruppen zu aktivieren, öffnen Sie den Bereich "Funktionen", und wählen Sie in "App-Gruppen" die Option "EIN" aus. Sie können App-Gruppen hinzufügen oder vorhandene Gruppen auswählen. |
Verwenden Sie beim Konfigurieren von App-Gruppen die umgekehrte DNS-Notation (Domain Name System): group.com.companyName.AppGroup |
| Hintergrundmodi | Wenn Sie Hintergrundmodi aktivieren, kann Ihre iOS-App weiterhin im Hintergrund ausgeführt werden. | |
| Datenschutz | Datenschutz fügt Dateien, die von Ihrer iOS-App auf der Festplatte gespeichert werden, eine zusätzliche Sicherheitsstufe hinzu. Der Datenschutz verwendet die integrierte Verschlüsselungshardware, die auf bestimmten Geräten vorhanden ist, um Dateien in einem verschlüsselten Format auf der Festplatte zu speichern. Ihre App muss für die Verwendung von Datenschutz bereitgestellt werden. | |
| In-App-Einkauf | Beim In-App-Kauf wird ein Store direkt in Ihre App eingebettet, indem Sie eine Verbindung mit dem Store herstellen und Zahlungen des Benutzers sicher verarbeiten können. Sie können In-App-Käufe verwenden, um Zahlungen für erweiterte Funktionen oder für weitere Inhalte einzuziehen, die von Ihrer App verwendet werden können. | |
| Schlüsselbundfreigabe | Wenn Sie die Schlüsselbundfreigabe aktivieren, kann Ihre App Kennwörter im Schlüsselbund mit anderen Apps teilen, die von Ihrem Team entwickelt wurden. | Verwenden Sie bei Verwendung der Schlüsselbundfreigabe die Reverse-DNS-Notation: com.companyName.KeychainGroup |
| Persönliches VPN | Aktivieren Sie persönliches VPN, damit Ihre App eine benutzerdefinierte System-VPN-Konfiguration mithilfe des Netzwerkerweiterungsframeworks erstellen und steuern kann. | |
| Pushbenachrichtigungen | Mit dem Apple Pushbenachrichtigungsdienst (APNs) kann eine App, die nicht im Vordergrund ausgeführt wird, den Benutzer darüber informieren, dass sie Informationen für den Benutzer enthält. | Damit Pushbenachrichtigungen funktionieren, müssen Sie ein App-spezifisches Bereitstellungsprofil verwenden. Folgen Sie den Anweisungen in der Apple-Entwicklerdokumentation. |
| Konfiguration von drahtlosem Zubehör | Wenn Sie die Konfiguration von drahtlosem Zubehör aktivieren, wird Ihrem Projekt das Framework für externes Zubehör hinzugefügt, und Ihre App kann Made for iPhone (MFi) Wi-Fi Zubehör einrichten. |
Schritte zum Aktivieren von Berechtigungen
Aktivieren Sie Funktionen in Ihrer App:
a. Wechseln Sie in Xcode zum Ziel Ihrer App, und wählen Sie Funktionen aus.
b. Aktivieren Sie die entsprechenden Funktionen. Ausführliche Informationen zu den einzelnen Funktionen und zum Bestimmen der richtigen Werte finden Sie unter Hinzufügen von Funktionen in der iOS-Entwicklerbibliothek.
c. Notieren Sie alle IDs, die Sie während des Vorgangs erstellt haben. Diese IDs werden möglicherweise als Werte
AppIdentifierPrefixbezeichnet.d. Erstellen und signieren Sie Ihre App, um sie zu umschließen.
Berechtigungen in Ihrem Bereitstellungsprofil aktivieren:
a. Melden Sie sich beim Apple Developer Member Center an.
b. Erstellen Sie ein Bereitstellungsprofil für Ihre App. Anweisungen finden Sie unter So erhalten Sie die Voraussetzungen für die Intune App Wrapping Tool für iOS.
c. Aktivieren Sie in Ihrem Bereitstellungsprofil die gleichen Berechtigungen, die Sie in Ihrer App haben. Sie müssen dieselben IDs (die Werte) angeben, die
AppIdentifierPrefixSie während der Entwicklung Ihrer App angegeben haben.d. Schließen Sie den Assistenten für das Bereitstellungsprofil ab, und laden Sie die Datei herunter.
Stellen Sie sicher, dass Sie alle Voraussetzungen erfüllt haben, und umschließen Sie dann die App.
Problembehandlung häufiger Fehler mit Berechtigungen
Wenn das App Wrapping Tool für iOS einen Berechtigungsfehler anzeigt, führen Sie die folgenden Schritte zur Problembehandlung aus.
| Problem | Ursache | Fehlerbehebung |
|---|---|---|
| Fehler beim Analysieren von Berechtigungen, die aus der Eingabeanwendung generiert wurden. | Das App Wrapping Tool kann die Berechtigungsdatei, die aus der App extrahiert wurde, nicht lesen. Die Berechtigungsdatei ist möglicherweise fehlerhaft. | Überprüfen Sie die Berechtigungsdatei für Ihre App. Die folgenden Anweisungen erläutern die dazu erforderliche Vorgehensweise. Überprüfen Sie beim Überprüfen der Berechtigungsdatei auf falsch formatierte Syntax. Die Datei sollte im XML-Format vorliegen. |
| Berechtigungen fehlen im Bereitstellungsprofil (fehlende Berechtigungen werden aufgelistet). Packen Sie die App mit einem Bereitstellungsprofil um, das über diese Berechtigungen verfügt. | Es besteht ein Konflikt zwischen den im Bereitstellungsprofil aktivierten Berechtigungen und den in der App aktivierten Funktionen. Diese Diskrepanz gilt auch für die IDs, die bestimmten Funktionen zugeordnet sind (z. B. App-Gruppen und Schlüsselbundzugriff). | Generell können Sie ein neues Bereitstellungsprofil erstellen, das die gleichen Funktionen wie die App ermöglicht. Wenn IDs zwischen dem Profil und der App nicht übereinstimmen, ersetzt das App Wrapping Tool die IDs, wenn es dazu in der Lage ist. Wenn dieser Fehler nach dem Erstellen eines neuen Bereitstellungsprofils weiterhin auftritt, können Sie versuchen, Berechtigungen mithilfe des –e Parameters aus der App zu entfernen (siehe Abschnitt Verwenden des –e Parameters zum Entfernen von Berechtigungen aus einer App). |
Suchen der vorhandenen Berechtigungen einer signierten App
So überprüfen Sie die vorhandenen Berechtigungen einer signierten App und eines Bereitstellungsprofils:
Suchen Sie die IPA-Datei, und ändern Sie ihre Erweiterung in .zip.
Erweitern Sie die .zip Datei. Mit dieser Aktion wird ein Nutzlastordner erstellt, der Ihr .app Paket enthält.
Verwenden Sie das Codesign-Tool, um die Berechtigungen für das .app Bundle zu überprüfen, wobei
YourApp.appder tatsächliche Name Ihres .app Bundles lautet.codesign -d --entitlements :- "Payload/YourApp.app"Verwenden Sie das Sicherheitstool, um die Berechtigungen des eingebetteten Bereitstellungsprofils der App zu überprüfen, wobei
YourApp.appder tatsächliche Name Ihres .app Pakets lautet.security cms -D -i "Payload/YourApp.app/embedded.mobileprovision"
Entfernen von Berechtigungen aus einer App mithilfe des Parameters –e
Mit diesem Befehl werden alle aktivierten Funktionen in der App entfernt, die sich nicht in der Berechtigungsdatei befinden. Wenn Sie Funktionen entfernen, die von der App verwendet werden, kann Ihre App beschädigt werden. Ein Beispiel dafür, wo Sie fehlende Funktionen entfernen können, ist eine vom Anbieter erstellte App, die standardmäßig über alle Funktionen verfügt.
./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
Sicherheit und Datenschutz für das App Wrapping Tool
Verwenden Sie die folgenden bewährten Methoden für Sicherheit und Datenschutz, wenn Sie das App Wrapping Tool verwenden.
Das Signaturzertifikat, das Bereitstellungsprofil und die Branchen-App, die Sie angeben, müssen sich auf demselben macOS-Computer befinden, den Sie zum Ausführen des App-Umbruchtools verwenden. Wenn sich die Dateien in einem UNC-Pfad befinden, stellen Sie sicher, dass der macOS-Computer darauf zugreifen kann. Der Pfad muss über IPsec oder SMB-Signatur gesichert werden.
Die umschlossene Anwendung, die in das Admin Center importiert wird, sollte sich auf demselben Computer befinden, auf dem Sie das Tool ausführen. Wenn sich die Datei in einem UNC-Pfad befindet, stellen Sie sicher, dass Sie auf dem Computer, auf dem das Admin Center ausgeführt wird, darauf zugreifen können. Der Pfad muss über IPsec oder SMB-Signatur gesichert werden.
Die Umgebung, in der das App Wrapping Tool aus dem GitHub-Repository heruntergeladen wird, muss über IPsec oder SMB-Signatur gesichert werden.
Die App, die Sie verarbeiten, muss aus einer vertrauenswürdigen Quelle stammen, um Schutz vor Angriffen zu gewährleisten.
Stellen Sie sicher, dass der Ausgabeordner, den Sie im App Wrapping Tool angeben, gesichert ist, insbesondere, wenn es sich um einen Remoteordner handelt.
iOS-Apps, die ein Dialogfeld zum Hochladen einer Datei enthalten, können Benutzern das Umgehen, Ausschneiden, Kopieren und Einfügen von Einschränkungen ermöglichen, die auf die App angewendet werden. Beispielsweise kann ein Benutzer das Dialogfeld zum Hochladen von Dateien verwenden, um einen Screenshot der App-Daten hochzuladen.
Wenn Sie den Dokumentenordner auf Ihrem Gerät aus einer umschlossenen App heraus überwachen, wird möglicherweise ein Ordner mit dem Namen
.msftintuneapplauncherangezeigt. Wenn Sie diese Datei ändern oder löschen, kann dies das ordnungsgemäße Funktionieren eingeschränkter Apps beeinträchtigen.Durch das Registrieren von benutzerdefinierten URL-Schemas können bestimmte URLs in Ihre App umgeleitet werden. iOS und iPadOS ermöglichen mehreren Apps, dasselbe benutzerdefinierte URL-Schema zu registrieren, und das Betriebssystem bestimmt, welche Anwendung aufgerufen wird. Weitere Informationen finden Sie in der Apple-Dokumentation zum Definieren eines benutzerdefinierten URL-Schemas für Ihre App . Empfehlungen zur Vermeidung von Konflikten mit benutzerdefinierten URL-Schemas sowie Sicherheitsrichtlinien für den Umgang mit falsch formatierten URLs.