Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Använd Microsoft Intune App Wrapping Tool för iOS för att aktivera Intune appskyddsprinciper för interna iOS-appar utan att ändra koden för själva appen.
Verktyget är ett macOS-kommandoradsprogram som skapar en omslutning runt en app. När en app har bearbetats kan du ändra appens funktioner genom att distribuera appskyddsprinciper till den.
Information om hur du laddar ned verktyget finns i Microsoft Intune App Wrapping Tool för iOS på GitHub.
Obs!
Om du har problem med att använda Intune App Wrapping Tool med dina appar skickar du en begäran om hjälp på GitHub.
Allmänna förutsättningar för App Wrapping Tool
Innan du kör App Wrapping Tool måste du uppfylla några allmänna krav:
Ladda ned Microsoft Intune App Wrapping Tool för iOS från GitHub.
En macOS-dator som har Xcode Toolset version 16.0 eller senare installerat.
Ditt företag eller en oberoende programvaruleverantör (ISV) måste utveckla och signera iOS-indataappen.
Filen måste ha filnamnstillägget .ipa eller .app.
Den måste vara kompilerad för iOS 16.0 eller senare.
Det kan inte krypteras.
Inga utökade filattribut.
Ange berättiganden innan du bearbetar appen med Intune App Wrapping Tool. Berättiganden ger appen fler behörigheter och funktioner utöver de behörigheter som vanligtvis beviljas. Anvisningar finns i Ange apprättigheter .
- Kontrollera att det finns giltiga signeringscertifikat i systemnyckelringen. Om du har problem med appkodsignering kan du lösa detta genom att följa stegen nedan:
- Återställa förtroendeinställningar för alla relaterade certifikat
- Installera mellanliggande certifikat i systemnyckelringen och inloggningsnyckelringen
- Avinstallera och installera om alla relaterade certifikat
Registrera din app med Microsoft Entra ID
- Registrera dina appar med Microsoft Entra ID. Mer information finns i Registrera ett program med Microsofts identitetsplattform.
- Lägg till den anpassade omdirigerings-URL:en i appinställningarna. Mer information finns i Konfigurera MSAL.
- Ge din app åtkomst till Intune MAM-tjänsten. Mer information finns i Ge din app åtkomst till Intune Mobile App Management-tjänsten.
- När ändringarna ovan har slutförts kör du den senaste versionen av Intune App Wrapping-verktyget. Konfigurera dina appar för Microsofts autentiseringsbibliotek (MSAL): Lägg till klient-ID:t för Microsoft Entra program i kommandoradsparametrarna med Intune App Wrapping Tool. Mer information finns i Kommandoradsparametrar.
Obs!
Parametrarna -ac och -ar är obligatoriska parametrar. Varje app måste ha en unik uppsättning av dessa parametrar.
-aa krävs endast för program med en enda klientorganisation.
- Distribuera appen.
Apple Developer-krav för App Wrapping Tool
Om du vill distribuera paketerade appar exklusivt till organisationens användare behöver du ett konto i Apple Developer Enterprise Program och flera enheter för appsignering som är kopplade till ditt Apple Developer-konto.
Om du vill veta mer om hur du distribuerar iOS-appar internt till organisationens användare läser du den officiella guiden för distribution av Apple Developer Enterprise Program-appar.
Du behöver följande för att distribuera appar som omslutits av Intune:
Ett utvecklarkonto i Apple Developer Enterprise Program.
Signeringscertifikat för intern och ad hoc-distribution med giltig teamidentifierare.
- Du behöver SHA1-hashen för signeringscertifikatet som en parameter till Intune App Wrapping Tool.
Profil för etablering av intern distribution.
Skapa ett Apple Developer Enterprise-konto
Längst upp till höger på sidan väljer du Registrera.
Läs checklistan för vad du behöver för att registrera dig. Välj Starta registreringen längst ned på sidan.
Logga in med Apple-kontot för din organisation. Om du inte har ett väljer du Skapa Apple-konto.
Välj din entitetstyp och välj Fortsätt.
Fyll i formuläret med information om din organisation. Välj Fortsätt. I det här läget kontaktar Apple dig för att bekräfta att du har behörighet att registrera din organisation.
Efter verifieringen väljer du Godkänn licens.
När du har godkänt licensieringen slutför du genom att köpa och aktivera programmet.
Om du är teamagent (den person som går med i Apple Developer Enterprise Program för din organisation) bjuder du in teammedlemmar och tilldelar roller för att bygga upp ditt team. Mer information om hur du hanterar ditt team finns i Apples dokumentation om hur du hanterar teamet för utvecklarkontot.
Skapa ett Apple-signeringscertifikat
Gå till Apple Developer-portalen.
Längst upp till höger på sidan väljer du Konto.
Logga in med ditt Apple-konto för organisationen.
Välj Certifikat, ID & Profiler.
Välj
i det övre högra hörnet. Den här åtgärden lägger till ett iOS-certifikat.Välj att skapa ett internt och ad hoc-certifikat under Produktion.
Obs!
Om du inte planerar att distribuera appen och bara vill testa den internt kan du använda ett iOS App Development-certifikat i stället för ett certifikat för produktion. Om du använder ett utvecklingscertifikat kontrollerar du att mobiletableringsprofilen innehåller de enheter där du planerar att installera appen.
Välj Nästa längst ned på sidan.
Läs anvisningarna om hur du skapar en begäran om certifikatsignering (CSR) med hjälp av programmet Nyckelhanterare på din macOS-dator.
Följ anvisningarna ovan för att skapa en begäran om certifikatsignering. Starta programmet Nyckelhanterare på din macOS-dator.
På macOS-menyn högst upp på skärmen går du till Certifikatassistenten > för nyckelhanterare > Begär ett certifikat från en certifikatutfärdare.
Följ anvisningarna på Apples webbplats för utvecklare för att skapa en CSR-fil (Certificate Signing Request). Spara CSR-filen på din macOS-dator.
Gå tillbaka till Apples webbplats för utvecklare. Välj Fortsätt. Ladda sedan upp CSR-filen.
Apple genererar ditt signeringscertifikat. Ladda ned och spara den på en minnesvärd plats på din macOS-dator.
Dubbelklicka på certifikatfilen du laddade ned för att lägga till certifikatet i en nyckelring.
Öppna Nyckelhanterare igen. Leta reda på ditt certifikat genom att söka efter dess namn i sökfältet längst upp till höger. Högerklicka på objektet för att visa menyn och välj Visa information. På exempelskärmarna använder vi ett utvecklingscertifikat i stället för ett produktionscertifikat.
Ett informationsfönster visas. Bläddra längst ned och titta under fingeravtrycksetiketten . Kopiera SHA1-strängen (suddig) som ska användas som argument för "-c" för App Wrapping Tool.
Skapa en profil för In-House distributionsetablering
Gå tillbaka till Apple Developer-kontoportalen och logga in med ditt Apple-konto för organisationen.
Välj Certifikat, ID & Profiler.
Välj
i det övre högra hörnet. Den här åtgärden lägger till en iOS-etableringsprofil.Välj att skapa en intern etableringsprofil under Distribution.
Välj Fortsätt. Se till att länka det tidigare genererade signeringscertifikatet till etableringsprofilen.
Följ stegen för att ladda ned din profil (med filnamnstillägg
.mobileprovision) till din macOS-dator.Spara filen på en minnesvärd plats. Den här filen används för parametern -p när du använder App Wrapping Tool.
Ladda ned App Wrapping Tool
Ladda ned filerna för App Wrapping Tool från GitHub till en macOS-dator.
Dubbelklicka på Microsoft Intune Application Restrictions Packager för iOS.dmg. Ett fönster med licensavtalet (EULA) visas. Läs dokumentet noggrant.
Välj Godkänn för att acceptera EULA, vilket monterar paketet på din dator.
Kör App Wrapping Tool
Viktigt
Intune släpper regelbundet uppdateringar till Intune App Wrapping Tool. Kontrollera regelbundet om det finns uppdateringar i Intune App Wrapping Tool för iOS och använd dem i din versionscykel för programvaruutveckling för att säkerställa att dina appar har stöd för de senaste inställningarna för appskyddsprinciper.
Använd Terminal
Öppna macOS-terminalen och kör följande kommando:
/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]
Obs!
Vissa parametrar är valfria, som du ser i följande tabell.
Exempel: Följande exempelkommando kör App Wrapping Tool på appen MyApp.ipa. En etableringsprofil och SHA-1-hash för signeringscertifikatet anges och används för att signera den omslutna appen. Utdataappen (MyApp_Wrapped.ipa) skapas och lagras i mappen Skrivbord.
./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
Kommandoradsparametrar
Du kan använda följande kommandoradsparametrar med App Wrapping Tool:
Exempel: Följande exempelkommando kör App Wrapping Tool, som innehåller de kommandon som krävs när du omsluter ett program för användning inom en enda klientorganisation.
./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
| Egenskap | Så här använder du den |
|---|---|
-i |
<Path of the input native iOS application file>. Filnamnet måste sluta på .app eller .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 |
Visar detaljerad användningsinformation om tillgängliga kommandoradsegenskaper för App Wrapping Tool. |
-ac |
<Client ID of the input app if the app uses the Microsofts autentiseringsbibliotek> Det här är GUID i fältet Klient-ID från appens lista i Appregistreringen. |
-ar |
<Redirect/Reply URI of the input app if the app uses the Microsofts autentiseringsbibliotek> Det här är den omdirigerings-URI som konfigurerats i din Appregistrering. Vanligtvis är det URL-protokollet för programmet som Microsoft Authenticator-appen återgår till efter asynkron autentisering. |
-aa |
(Krävs för appar för en enda klientorganisation) <Authority URI of the input app> d.v.s. https://login.microsoftonline.com/<tenantID>/ |
-v |
(Valfritt) Utförliga meddelanden matas ut till konsolen. Använd den här flaggan för att felsöka eventuella fel. |
-e |
(Valfritt) Använd den här flaggan om du vill att App Wrapping Tool ta bort saknade rättigheter när appen bearbetas. Mer information finns i Ange apprättigheter. |
-xe |
(Valfritt) Skriver ut information om iOS-tilläggen i appen och vilka rättigheter som krävs för att använda dem. Mer information finns i Ange apprättigheter. |
-x |
(Valfritt) <An array of paths to extension provisioning profiles>. Använd den här egenskapen om din app behöver tilläggsetableringsprofiler. |
-b |
(Valfritt) Använd -b utan argument om du vill att den omslutna utdataappen ska ha samma paketversion som indataappen (rekommenderas inte). Använd -b <custom bundle version> det här alternativet om du vill att den omslutna appen ska ha en anpassad CFBundleVersion. Om du väljer att ange en anpassad CFBundleVersion är det en bra idé att öka den interna appens CFBundleVersion med den minst betydande komponenten, till exempel 1.0.0 –> 1.0.1. |
-f |
(Valfritt) <Path to a plist file specifying arguments.> Använd den här flaggan framför plist-filen om du väljer att använda plist-mallen för att ange resten av IntuneMAMPackager-egenskaperna som -i, -o och -p. Se Använda en plist för att ange argument. |
-dt |
(Valfritt) Inaktivera insamling av Microsoft Intune klientdata. |
-dl |
(Valfritt) Inaktivera MSAL-loggar från Intune -loggarna för program som är integrerade med MSAL och implementera sin egen MSAL logging callback. |
-ds |
(Valfritt) Inaktivera Intunes skydd för SFSafariViewController, SFAuthSession och ASWebAuthenticationSession. |
-mp |
(Valfritt) <Path to a plist file containing MAM settings to merge into the wrapped app>. Använd den här egenskapen för att ange anpassade Intune MAM SDK-inställningar som ska sammanfogas i appens IntuneMAMSettings-ordlista under omslutningsprocessen. Obs! Inställningarna MultiIdentity, MAMPolicyRequired, AutoEnrollOnLaunchoch ContainingAppBundleId stöds inte via -mp eftersom de konfigureras automatiskt av App Wrapping Tool. Autentiseringsinställningar (ADALAuthority, ADALClientId, ADALRedirectUri) stöds inte heller via -mp och måste konfigureras med kommandoradsparametrarna -aa, -ac och -ar. |
Använda en plist för att ange argument
Ett enkelt sätt att köra App Wrapping Tool är att placera alla kommandoargument i en plist-fil. Plist är ett filformat som påminner om XML och som du kan använda för att ange dina kommandoradsargument i ett formulärgränssnitt.
I mappen IntuneMAMPackager/Contents/MacOS öppnar du Parameters.plist (en tom plist-mall) med en textredigerare eller Xcode. Ange dina argument för följande nycklar:
| Plist-tangent | Typ | Standardvärde | Kommentar |
|---|---|---|---|
| Sökväg till indataprogrampaket | Sträng | tom | Samma som -i |
| Sökväg till utdataprogrampaket | Sträng | tom | Samma som -o |
| Sökväg för etableringsprofil | Sträng | tom | Samma som -p |
| Hash för SHA-1-certifikat | Sträng | tom | Samma som -c |
| MSAL Authority | Sträng | tom | Samma som -aa |
| MSAL-klient-ID | Sträng | tom | Samma som -ac |
| MSAL Reply URI | Sträng | tom | Samma som -ar |
| Utförlig aktiverad | Boolesk | falskt | Samma som -v |
| Ta bort rättigheter som saknas | Boolesk | falskt | Samma som -e |
| Förhindra standardversionsuppdatering | Boolesk | falskt | Motsvarar att använda -b utan argument |
| Åsidosättning av byggsträng | Sträng | tom | Den anpassade CFBundleVersion av den omslutna utdataappen |
| Sökvägar för tilläggsetableringsprofiler | Matris med strängar | tom | En matris med tilläggsetableringsprofiler för appen. |
| Inaktivera telemetri | Boolesk | falskt | Samma som -dt |
| Inaktivera åsidosättning av MSAL-logg | Boolesk | falskt | Samma som -dl |
| MAM-inställningar Plist-sökväg | Sträng | tom | Samma som -mp |
Kör IntuneMAMPackager med plist som enda argument:
./IntuneMAMPackager –f Parameters.plist
Efter inslagning
När omslutningsprocessen är klar visas meddelandet "Programmet har paketerats". Om ett fel uppstår, se Felmeddelanden för hjälp.
Den omslutna appen sparas i den utdatamapp som du angav tidigare. Du kan ladda upp appen till Intune administrationscenter och associera den med en princip för hantering av mobilprogram.
Viktigt
När du laddar upp en omsluten app kan du försöka uppdatera en äldre version av appen om en äldre (inkapslad eller inbyggd) version redan har distribuerats till Intune. Om du får ett fel laddar du upp appen som en ny app och tar bort den äldre versionen.
Nu kan du distribuera appen till dina användargrupper och rikta appskyddsprinciper till appen. Appen körs på enheten med hjälp av de appskyddsprinciper som du har angett.
Hur ofta ska jag omsluta mitt iOS-program med Intune App Wrapping Tool?
De huvudsakliga scenarierna där du skulle behöva omsluta dina program är följande:
- Själva applikationen släppte en ny version. Den tidigare versionen av programmet paketerades och laddades upp till Intune administrationscenter.
- I Intune App Wrapping Tool för iOS släpptes en ny version som möjliggör viktiga felkorrigeringar eller nya, specifika Intune principfunktioner för programskydd. Lanseringen av en ny version sker var 6–8:e vecka via GitHub-lagringsplatsen för Microsoft Intune App Wrapping Tool för iOS.
För iOS/iPadOS kan du omsluta appen med ett annat certifikat eller en annan etableringsprofil än den som ursprungligen användes för att signera appen. Men om den nya etableringsprofilen inte innehåller de berättiganden som anges i appen misslyckas omslutningsprocessen. Om du använder kommandoradsalternativet "-e", som tar bort alla rättigheter som saknas från programmet, kan framtvinga radbrytning att inte misslyckas i det här scenariot orsaka felaktiga funktioner i appen.
Här är några beprövade metoder för att paketera om:
- Se till att en annan etableringsprofil har alla nödvändiga rättigheter som alla tidigare etableringsprofiler.
Felmeddelanden och loggfiler
Använd följande information för att felsöka problem som du har med programhanteringsverktyget.
Felmeddelanden
Om programhanteringsverktyget inte slutförs korrekt visas något av följande felmeddelanden i konsolen:
| Felmeddelande | Mer information |
|---|---|
| Du måste ange en giltig iOS-etableringsprofil. | Din etableringsprofil kanske inte är giltig. Kontrollera att du har rätt behörigheter för enheter och att din profil är inriktad på utveckling eller distribution. Etableringsprofilen kan också ha upphört att gälla. |
| Ange ett giltigt namn på indataprogrammet. | Kontrollera att namnet på det angivna indataprogrammet är korrekt. |
| Ange en giltig sökväg till utdataprogrammet. | Kontrollera att sökvägen till det utdataprogram som du angav finns och är korrekt. |
| Ange en giltig profil för indataetablering. | Kontrollera att du har angett ett giltigt namn och tillägg för etableringsprofilen. Etableringsprofilen kanske saknar rättigheter eller så –p ingår inte kommandoradsalternativet. |
| Det indataprogram som du angav hittades inte. Ange ett giltigt indataprogramnamn och en giltig sökväg. | Kontrollera att sökvägen till indataappen är giltig och finns. Kontrollera att indataappen finns på den platsen. |
| Det gick inte att hitta profilfilen för indataetableringsprofilen som du angav. Ange en giltig profilfil för indataetablering. | Kontrollera att sökvägen till filen för indataetablering är giltig och att filen du angav finns. |
| Det gick inte att hitta mappen för det utdataprogram som du angav. Ange en giltig sökväg till utdataprogrammet. | Kontrollera att utdatasökvägen är giltig och finns. |
| Utdataappen har inte filnamnstillägget .ipa . | Endast appar med tilläggen .app och .ipa accepteras av App Wrapping Tool. Kontrollera att utdatafilen har ett giltigt filnamnstillägg. |
| Ett ogiltigt signeringscertifikat har angetts. Ange ett giltigt Apple-signeringscertifikat. | Kontrollera att du har laddat ned rätt signeringscertifikat från Apple Developer-portalen. Ditt certifikat kan ha upphört att gälla eller saknar en offentlig eller privat nyckel. Om ditt Apple-certifikat och din etableringsprofil kan användas för att signera en app korrekt i Xcode är de giltiga för App Wrapping Tool. Kontrollera dessutom att signeringscertifikatet har ett unikt namn i macOS-värdens nyckelring. Om det finns flera versioner av samma certifikat i nyckelringen returnerar verktyget det här felet. |
| Det indataprogram som du angav är ogiltigt. Ange ett giltigt program. | Kontrollera att ditt giltiga iOS-program har kompilerats som en .app eller-fil .ipa . |
| Indataprogrammet som du anger är krypterat. Ange ett giltigt okrypterat program. | App Wrapping Tool stöder inte krypterade appar. Tillhandahålla en okrypterad app. |
| Indataprogrammet som du angav är inte i ett PIE-format (Position Independent Executable). Ange ett giltigt program i PIE-format. | PIE-appar (Position Independent Executable ) kan läsas in på en slumpmässig minnesadress när de körs. Den här funktionen kan ge säkerhetsfördelar. Mer information om säkerhetsfördelar finns i dokumentationen för Apple Developer. |
| Indataappen som du angav är omsluten. Ange ett giltigt program som inte har paketerats. | Du kan inte bearbeta en app om verktyget redan har bearbetat den. Om du vill bearbeta en app igen kör du verktyget med den ursprungliga versionen av appen. |
| Indataprogrammet du angav är inte signerat. Ange ett giltigt signerat program. | Programhanteringsverktyget kräver att appar är signerade. Läs dokumentationen för utvecklare om hur du signerar en omsluten app. |
| Det indataprogram du anger måste vara i formatet .ipa eller .app. | Med programhanteringsverktyget kan .app du endast ta emot tillägg .ipa . Se till att indatafilen har ett giltigt filnamnstillägg och hanteras som en .app eller-fil .ipa . |
| Indataappen som du angav är omsluten och använder den senaste versionen av principmallen. | App Wrapping Tool omsluter inte en befintlig inslagen app med den senaste principmallversionen. |
| VARNING! Du angav inte en SHA1-certifikathash. Kontrollera att det omslutna programmet är signerat innan du distribuerar. | Se till att du anger en giltig SHA1-hash efter kommandoradsflaggan –c . |
Samla in loggar för dina omslutna program från enheten
Använd följande steg för att hämta loggar för dina omslutna program under felsökningen.
- Gå till appen iOS-inställningar på enheten och välj din LOB-app.
- Välj Microsoft Intune.
- Växla inställningen för konsolen Visa diagnostik till På.
- Starta LOB-programmet.
- Välj länken "Kom igång".
- Nu kan du skicka loggar direkt till Microsoft eller dela dem via ett annat program på enheten.
Obs!
Loggningsfunktionen är aktiverad för appar som är omslutna med Intune App Wrapping Tool version 7.1.13 eller senare.
Samla in kraschloggar från systemet
Din app kan logga användbar information till iOS-klientenhetskonsolen. Den här informationen är användbar när du har problem med programmet och behöver avgöra om problemet är relaterat till App Wrapping Tool eller själva appen. Använd följande steg för att hämta den här informationen:
Återskapa problemet genom att köra appen.
Samla in konsolens utdata genom att följa Apples instruktioner för felsökning av distribuerade iOS-appar.
Omslutna appar ger också användarna möjlighet att skicka loggar direkt från enheten via e-post när appen kraschar. Användare kan skicka loggarna till dig för granskning och vidarebefordra till Microsoft om det behövs.
Certifikat, etableringsprofil och autentiseringskrav
App Wrapping Tool för iOS har några krav som måste uppfyllas för att garantera full funktionalitet.
| Krav | Information |
|---|---|
| Profil för iOS-etablering | Kontrollera att etableringsprofilen är giltig innan du inkluderar den. App Wrapping Tool kontrollerar inte om etableringsprofilen har upphört att gälla när en iOS-app bearbetas. Om du anger en utgången etableringsprofil inkluderas den i programhanteringsverktyget. Du ser inte ett problem förrän appen inte kan installeras på en iOS-enhet. |
| iOS-signeringscertifikat | Kontrollera att signeringscertifikatet är giltigt innan du anger det. Verktyget kontrollerar inte om ett certifikat har upphört att gälla vid bearbetning av iOS-appar. Om hashvärdet för ett utgånget certifikat anges bearbetar och signerar verktyget appen, men den kan inte installeras på enheterna. Kontrollera att certifikatet som tillhandahålls för signering av den omslutna appen har en matchning i etableringsprofilen. Verktyget verifierar inte om etableringsprofilen har en matchning för certifikatet som tillhandahålls för signering av det omslutna programmet. |
| Autentisering | En enhet måste ha en PIN-kod för att kryptering ska fungera. På enheter som du har distribuerat en omsluten app till måste användaren logga in igen med ett arbets- eller skolkonto om användaren trycker på statusfältet på enheten. Standardprincipen i en omsluten app är autentisering vid omstart. iOS hanterar eventuella externa meddelanden (till exempel ett telefonsamtal) genom att avsluta appen och sedan starta om den. |
Ange appberättiganden
Innan du omsluter appen kan du bevilja rättigheter för att ge appen extra behörigheter och funktioner som överskrider vad en app normalt kan göra. En rättighetsfil används under kodsignering för att ange särskilda behörigheter i appen (till exempel åtkomst till en delad nyckelring). Specifika apptjänster som kallas funktioner aktiveras i Xcode under apputveckling. När funktionerna är aktiverade återspeglas de i berättigandefilen. Mer information om berättiganden och funktioner finns i Lägga till funktioner i biblioteket för iOS-utvecklare. En fullständig lista över funktioner som stöds finns i Funktioner som stöds.
Funktioner som stöds för App Wrapping Tool för iOS
| Funktion | Beskrivning | Rekommenderad vägledning |
|---|---|---|
| Appgrupper | Använd appgrupper för att tillåta flera appar att komma åt delade containrar och tillåta mer kommunikation mellan appar. Om du vill aktivera appgrupper öppnar du fönstret Funktioner och väljer PÅ i Appgrupper. Du kan lägga till appgrupper eller välja befintliga grupper. |
Använd omvänd DNS-notation (Domain Name System) när du konfigurerar appgrupper: group.com.companyName.AppGroup |
| Bakgrundslägen | Om du aktiverar bakgrundslägen kan iOS-appen fortsätta köras i bakgrunden. | |
| Dataskydd | Dataskydd ger en säkerhetsnivå för filer som lagras på disk av din iOS-app. Dataskydd använder den inbyggda krypteringsmaskinvaran som finns på specifika enheter för att lagra filer i krypterat format på disken. Din app måste etableras för att använda dataskydd. | |
| Köp via app | Köp via app bäddar in en butik direkt i din app genom att göra det möjligt för dig att ansluta till butiken och på ett säkert sätt behandla betalningar från användaren. Du kan använda köp i appar för att debitera för förbättrad funktionalitet eller för mer innehåll som kan användas i appen. | |
| Delning av nyckelring | Om du aktiverar nyckelringsdelning kan appen dela lösenorden i nyckelringen med andra appar som utvecklats av din grupp. | Använd omvänd DNS-notation när du använder nyckelringsdelning: com.companyName.KeychainGroup |
| Privat VPN | Aktivera personlig VPN så att din app kan skapa och styra en anpassad VPN-konfiguration för systemet med hjälp av ramverket för nätverkstillägg. | |
| Push-meddelanden | Med Apples tjänst för push-aviseringar (APNs) kan en app som inte körs i förgrunden meddela användaren att den har information om användaren. | För att push-meddelanden ska fungera måste du använda en appspecifik etableringsprofil. Följ stegen i Apples dokumentation för utvecklare. |
| Konfiguration av trådlöst tillbehör | Om du aktiverar konfigurationen av trådlösa tillbehör läggs ramverket för externa tillbehör till i projektet, så att appen kan konfigurera Made for iPhone (MFi) Wi-Fi tillbehör. |
Steg för att aktivera berättiganden
Aktivera funktioner i appen:
a. I Xcode går du till appens mål och väljer Funktioner.
b. Aktivera lämpliga funktioner. Detaljerad information om varje funktion och hur du fastställer rätt värden finns i Lägga till funktioner i iOS-utvecklarbiblioteket.
c. Anteckna alla ID:n som du har skapat under processen. Dessa ID:n kan kallas värden
AppIdentifierPrefix.d. Skapa och signera appen som ska omslutas.
Aktivera berättiganden i etableringsprofilen:
a. Logga in på Apple Developer Member Center.
b. Skapa en etableringsprofil för din app. Anvisningar finns i Så här hämtar du förutsättningarna för Intune App Wrapping Tool för iOS.
c. Aktivera samma berättiganden som du har i din app i din etableringsprofil. Du måste ange samma ID:n (värdena
AppIdentifierPrefix) som du angav under utvecklingen av appen.d. Slutför guiden för etableringsprofilen och ladda ned filen.
Kontrollera att du har uppfyllt alla krav och omslut sedan appen.
Felsöka vanliga fel med berättiganden
Om App Wrapping Tool för iOS visar ett rättighetsfel kan du prova följande felsökningssteg.
| Fråga | Orsak | Åtgärd |
|---|---|---|
| Det gick inte att parsa rättigheter som genererats från indataprogrammet. | App Wrapping Tool kan inte läsa rättighetsfilen som extraherades från appen. Berättigandefilen kan ha felaktigt format. | Kontrollera berättigandefilen för din app. Hur du gör det beskrivs i anvisningarna nedan. Kontrollera om det finns någon felaktig syntax när du inspekterar rättighetsfilen. Filen ska vara i XML-format. |
| Berättiganden saknas i etableringsprofilen (saknade berättiganden visas). Paketera om appen med en etableringsprofil som har dessa rättigheter. | Det finns ett matchningsfel mellan de rättigheter som är aktiverade i etableringsprofilen och de funktioner som är aktiverade i appen. Det här matchningsfelet gäller även ID:n som är associerade med vissa funktioner (t.ex. appgrupper och nyckelringsåtkomst). | Vanligtvis kan du skapa en ny etableringsprofil som har samma funktioner som appen. När ID:n mellan profilen och appen inte matchar ersätter App Wrapping Tool ID:n om det går. Om du fortfarande får det här felet när du har skapat en ny etableringsprofil kan du försöka ta bort berättiganden från appen med hjälp –e av parametern (se avsnittet Använda –e parametern för att ta bort rättigheter från en app). |
Hitta befintliga rättigheter för en signerad app
Så här granskar du befintliga berättiganden för en signerad app och etableringsprofil:
Leta reda på .ipa-filen och ändra filnamnstillägget till .zip.
Expandera den .zip filen. Den här åtgärden skapar en nyttolastmapp som innehåller ditt .app-paket.
Använd codesign-verktyget för att kontrollera rättigheterna i det .app paketet, där
YourApp.appär det faktiska namnet på .app paketet.codesign -d --entitlements :- "Payload/YourApp.app"Använd säkerhetsverktyget för att kontrollera berättigandena för appens inbäddade etableringsprofil, där
YourApp.appär det faktiska namnet på ditt .app paket.security cms -D -i "Payload/YourApp.app/embedded.mobileprovision"
Ta bort berättiganden från en app med hjälp av parametern –e
Det här kommandot tar bort alla aktiverade funktioner i appen som inte finns i berättigandefilen. Om du tar bort funktioner som används av appen kan det skada appen. Ett exempel på var du kan ta bort saknade funktioner är i en leverantörsproducerad app som har alla funktioner som standard.
./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äkerhet och sekretess för App Wrapping Tool
Använd följande metodtips för säkerhet och sekretess när du använder App Wrapping Tool.
Signeringscertifikatet, etableringsprofilen och den verksamhetsspecifika app som du anger måste finnas på samma macOS-dator som du använder för att köra programhanteringsverktyget. Om filerna finns på en UNC-sökväg kontrollerar du att macOS-datorn kan komma åt dem. Sökvägen måste skyddas via IPsec- eller SMB-signering.
Det omslutna programmet som importeras till administrationscentret bör finnas på samma dator som du kör verktyget på. Om filen finns på en UNC-sökväg kontrollerar du att den är tillgänglig på datorn som kör administrationscentret. Sökvägen måste skyddas via IPsec- eller SMB-signering.
Miljön där App Wrapping Tool laddas ned från GitHub-lagringsplatsen måste skyddas via IPsec- eller SMB-signering.
Appen du bearbetar måste komma från en pålitlig källa för att säkerställa skydd mot attacker.
Se till att den utdatamapp du anger i App Wrapping Tool är skyddad, särskilt om det är en fjärrmapp.
iOS-appar som innehåller en dialogruta för filöverföring kan tillåta användare att kringgå, klippa ut, kopiera och klistra in begränsningar som tillämpas på appen. En användare kan till exempel använda dialogrutan för filuppladdning för att ladda upp en skärmbild av appdata.
När du övervakar mappen Dokument på enheten inifrån en inkapslad app kan en mapp med namnet
.msftintuneapplauncher. Om du ändrar eller tar bort den här filen kan det påverka hur begränsade appar fungerar korrekt.Om du registrerar anpassade URL-scheman kan specifika URL-adresser omdirigeras till din app. iOS och iPadOS tillåter att flera appar registrerar samma anpassade URL-schema och operativsystemet avgör vilket program som anropas. Se Apple-dokumentationen Definiera ett anpassat URL-schema för din app för rekommendationer för att undvika kollisioner med anpassade URL-scheman och säkerhetsriktlinjer för hantering av felaktiga URL-adresser.