Sdílet prostřednictvím


Příprava aplikací pro iOS na zásady ochrany aplikací pomocí Intune App Wrapping Tool

Pomocí Microsoft Intune App Wrapping Tool pro iOS povolte zásady Intune ochrany aplikací pro interní aplikace pro iOS beze změny kódu samotné aplikace.

Tento nástroj je aplikace příkazového řádku macOS, která kolem aplikace vytvoří obálku. Po zpracování aplikace můžete změnit její funkce tak, že do ní nasadíte zásady ochrany aplikací .

Pokud si chcete nástroj stáhnout, přečtěte si článek Microsoft Intune App Wrapping Tool pro iOS na GitHubu.

Poznámka

Pokud máte problémy s používáním Intune App Wrapping Tool s vašimi aplikacemi, odešlete žádost o pomoc na GitHubu.

Obecné požadavky pro App Wrapping Tool

Před spuštěním App Wrapping Tool musíte splnit některé obecné požadavky:

  • Stáhněte si Microsoft Intune App Wrapping Tool pro iOS z GitHubu.

  • Počítač s macOS, na který je nainstalovaná sada nástrojů Xcode verze 14.0 nebo novější.

  • Vstupní aplikaci pro iOS musí vyvinout a podepsat vaše společnost nebo nezávislý dodavatel softwaru (ISV).

    • Vstupní soubor aplikace musí mít příponu .ipa nebo .app.

    • Vstupní aplikace musí být zkompilovaná pro iOS 14.0 nebo novější.

    • Vstupní aplikaci nelze zašifrovat.

    • Vstupní aplikace nemůže mít rozšířené atributy souborů.

    • Vstupní aplikace musí mít před zpracováním Intune App Wrapping Tool nastavená oprávnění. Oprávnění poskytují aplikaci více oprávnění a možností nad rámec těch, které se obvykle udělují. Pokyny najdete v tématu Nastavení nároků aplikace .

  • Ujistěte se, že v systémovém klíči existují platné podpisové certifikáty. Pokud máte problémy s podepisováním kódu aplikace, při řešení postupujte následovně:
    • Resetování nastavení důvěryhodnosti pro všechny související certifikáty
    • Instalace zprostředkujících certifikátů v systémovém klíči a přihlašovacím klíči
    • Odinstalace a přeinstalace všech souvisejících certifikátů

Registrace aplikace pomocí Microsoft Entra ID

  1. Zaregistrujte aplikace pomocí Microsoft Entra ID. Další informace najdete v tématu Registrace aplikace pomocí Microsoft identity platform.
  2. Přidejte vlastní adresu URL pro přesměrování do nastavení aplikace. Další informace najdete v tématu Konfigurace knihovny MSAL.
  3. Udělte aplikaci přístup ke službě Intune MAM. Další informace najdete v tématu Udělení přístupu aplikace ke službě Intune Správa mobilních aplikací.
  4. Po dokončení výše uvedených změn spusťte nejnovější verzi nástroje Intune App Wrapping. Konfigurace aplikací pro Microsoft Authentication Library (MSAL): Přidejte ID klienta aplikace Microsoft Entra do parametrů příkazového řádku pomocí Intune App Wrapping Tool. Další informace najdete v tématu Parametry příkazového řádku.

Poznámka

Parametry -ac a -ar jsou povinné parametry. Každá aplikace bude potřebovat jedinečnou sadu těchto parametrů. -aa se vyžaduje pouze pro aplikace s jedním tenantem.

  1. Nasaďte aplikaci.

Požadavky pro vývojáře Apple pro App Wrapping Tool

Pokud chcete distribuovat zabalené aplikace výhradně uživatelům vaší organizace, potřebujete účet v programu Apple Developer Enterprise Program a několik entit pro podepisování aplikací, které jsou propojené s vaším účtem Apple Developer.

Další informace o interní distribuci aplikací pro iOS uživatelům vaší organizace najdete v oficiální příručce k distribuci aplikací programu Apple Developer Enterprise Program.

K distribuci aplikací zabalených pomocí Intune budete potřebovat následující:

  • Účet vývojáře s programem Apple Developer Enterprise Program.

  • Podpisový certifikát pro interní a ad hoc distribuci s platným identifikátorem týmu

    • Jako parametr pro Intune App Wrapping Tool budete potřebovat hodnotu hash SHA1 podpisového certifikátu.
  • Zřizovací profil interní distribuce

Postup vytvoření účtu Apple Developer Enterprise

  1. Přejděte na web Apple Developer Enterprise Program.

  2. V pravém horním rohu stránky klikněte na Zaregistrovat.

  3. Přečtěte si kontrolní seznam toho, co potřebujete k registraci. V dolní části stránky klikněte na Zahájit registraci .

  4. Přihlaste se pomocí Apple ID vaší organizace. Pokud ho nemáte, klikněte na Vytvořit Apple ID.

  5. Vyberte typ entity a klikněte na Pokračovat.

  6. Ve formuláři vyplňte informace o vaší organizaci. Klikněte na Continue (Pokračovat). V tomto okamžiku vás Apple kontaktuje, abyste ověřili, že máte oprávnění k registraci vaší organizace.

  7. Po ověření klikněte na Souhlasím s licencí.

  8. Po souhlasu s licencí dokončete nákupem a aktivací programu.

  9. Pokud jste agentem týmu (osoba, která se jménem vaší organizace připojuje k programu Apple Developer Enterprise Program), nejprve svůj tým sestavte tak, že pozvete členy týmu a přiřadíte role. Informace o tom, jak spravovat tým, najdete v dokumentaci společnosti Apple k tématu Správa týmu účtu vývojáře.

Postup vytvoření podpisového certifikátu Apple

  1. Přejděte na portál Pro vývojáře Apple.

  2. V pravém horním rohu stránky klikněte na Účet.

  3. Přihlaste se pomocí Apple ID organizace.

  4. Klikněte na Certifikáty, ID & profily.

    Portál pro vývojáře Apple – Certifikáty, ID & profily

  5. Kliknutím na portál Apple Developer Portal plus v pravém horním rohu přidejte certifikát pro iOS.

  6. Zvolte vytvoření interního certifikátu a certifikátu Ad Hoc v části Produkce.

    Výběr In-House a ad hoc certifikátu

    Poznámka

    Pokud nechcete aplikaci distribuovat a chcete ji jenom interně testovat, můžete místo certifikátu pro produkční prostředí použít certifikát pro vývoj aplikací pro iOS. Pokud používáte certifikát pro vývoj, ujistěte se, že mobilní zřizovací profil odkazuje na zařízení, na kterých se aplikace nainstaluje.

  7. V dolní části stránky klikněte na Další .

  8. Přečtěte si pokyny k vytvoření žádosti o podepsání certifikátu (CSR) pomocí aplikace Keychain Access na počítači s macOS.

    Přečtěte si pokyny k vytvoření CSR.

  9. Podle výše uvedených pokynů vytvořte žádost o podepsání certifikátu. Na počítači s macOS spusťte aplikaci Keychain Access .

  10. V nabídce macOS v horní části obrazovky přejděte na Pomocník s certifikátem > pro přístup ke > klíči Požádat o certifikát od certifikační autority.

    Vyžádání certifikátu od certifikační autority v přístupu k klíči

  11. Postupujte podle pokynů z výše uvedeného webu pro vývojáře Apple, jak vytvořit soubor CSR. Uložte soubor CSR do počítače s macOS.

    Zadejte informace o požadovaném certifikátu.

  12. Vraťte se na web Pro vývojáře Apple. Klikněte na Continue (Pokračovat). Pak nahrajte soubor CSR.

  13. Apple vygeneruje váš podpisový certifikát. Stáhněte si ho a uložte ho na zapamatovatelné místo na počítači s macOS.

    Stažení podpisového certifikátu

  14. Poklikejte na soubor certifikátu, který jste právě stáhli, a přidejte certifikát do řetězce klíčů.

  15. Znovu otevřete Přístup k klíči . Vyhledejte certifikát tak, že v pravém horním panelu hledání vyhledáte jeho název. Kliknutím pravým tlačítkem myši na položku otevřete nabídku a klikněte na Získat informace. Na ukázkových obrazovkách používáme certifikát pro vývoj místo produkčního certifikátu.

    Přidání certifikátu do řetězce klíčů

  16. Zobrazí se informační okno. Posuňte se dolů a podívejte se pod popisek Otisků prstů . Zkopírujte řetězec SHA1 (rozmazaný) a použijte ho jako argument pro "-c" pro App Wrapping Tool.

    Informace o iPhonu – Otisky prstů – řetězec SHA1

Postup vytvoření zřizovacího profilu distribuce In-House

  1. Zpět na portál účtu Apple Developer a přihlaste se pomocí Apple ID organizace.

  2. Klikněte na Certifikáty, ID & profily.

  3. Kliknutím na Apple Developer Portal plus v pravém horním rohu přidejte zřizovací profil pro iOS.

  4. V části Distribuce zvolte, že chcete vytvořit zřizovací profil In House.

    Vyberte Interní zřizovací profil.

  5. Klikněte na Continue (Pokračovat). Nezapomeňte propojit dříve vygenerovaný podpisový certifikát se zřizovacím profilem.

  6. Postupujte podle pokynů ke stažení profilu (s příponou .mobileprovision) do počítače s macOS.

  7. Uložte soubor na zapamatovatelné místo. Tento soubor se použije pro parametr -p při použití App Wrapping Tool.

Stáhnout App Wrapping Tool

  1. Stáhněte si soubory pro App Wrapping Tool z GitHubu do počítače s macOS.

  2. Poklikejte na Microsoft Intune Application Restrictions Packager pro iOS.dmg. Zobrazí se okno s licenční smlouvou s koncovým uživatelem (EULA). Pečlivě si dokument přečtěte.

  3. Pokud chcete přijmout smlouvu EULA, která balíček připojí k vašemu počítači, zvolte Souhlasím .

Spuštění App Wrapping Tool

Důležité

Intune pravidelně vydává aktualizace Intune App Wrapping Tool. Pravidelně kontrolujte aktualizace v Intune App Wrapping Tool pro iOS a začleňujte je do cyklu vydávání verzí softwaru, abyste měli jistotu, že vaše aplikace podporují nejnovější nastavení zásad ochrany aplikací.

Použití terminálu

Otevřete terminál macOS a spusťte následující příkaz:

/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> [-b [<output app build string>]] [-v] [-e] [-x /<array of extension provisioning profile paths>]

Poznámka

Některé parametry jsou volitelné, jak je znázorněno v následující tabulce.

Příklad: Následující příklad příkazu spustí App Wrapping Tool v aplikaci s názvem MyApp.ipa. Určí se zřizovací profil a hodnota hash SHA-1 podpisového certifikátu, které se použijí k podepsání zabalené aplikace. Výstupní aplikace (MyApp_Wrapped.ipa) se vytvoří a uloží do složky Plocha.

./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"  -v true

Parametry příkazového řádku

S App Wrapping Tool můžete použít následující parametry příkazového řádku:

Příklad: Následující příklad příkazu spustí App Wrapping Tool, který zahrnuje požadované příkazy při zabalení aplikace pro použití v rámci jednoho tenanta.

./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 true
Vlastnost Jak ho používat
-já <Path of the input native iOS application file>. Název souboru musí končit .app nebo .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 Zobrazuje podrobné informace o využití dostupných vlastností příkazového řádku pro App Wrapping Tool.
-střídavý proud <Client ID of the input app if the app uses the Microsoft Authentication Library> Toto je identifikátor GUID v poli ID klienta z výpisu vaší aplikace v okně Registrace aplikace.
-ar <Redirect/Reply URI of the input app if the app uses the Microsoft Authentication Library> Toto je identifikátor URI přesměrování nakonfigurovaný ve vaší registraci aplikace. Obvykle se jedná o protokol URL aplikace, ke kterému se aplikace Microsoft Authenticator vrátí po zprostředkované ověřování.
-Aa (Vyžaduje se pro aplikace s jedním tenantem)) <Authority URI of the input app> tj https://login.microsoftonline.com/<tenantID>/
-v (Volitelné) Vypíše podrobné zprávy do konzoly. Tento příznak doporučujeme použít k ladění chyb.
-e (Volitelné) Tento příznak použijte, pokud chcete, aby App Wrapping Tool při zpracování aplikace odebírala chybějící oprávnění. Další podrobnosti najdete v tématu Nastavení nároků aplikace .
-Xe (Volitelné) Vytiskne informace o rozšířeních pro iOS v aplikaci a o tom, jaká oprávnění se vyžadují k jejich použití. Další podrobnosti najdete v tématu Nastavení nároků aplikace .
-x (Volitelné) <An array of paths to extension provisioning profiles>. Tuto možnost použijte, pokud vaše aplikace potřebuje zřizovací profily rozšíření.
-b (Volitelné) -b bez argumentu použijte, pokud chcete, aby zabalená výstupní aplikace měla stejnou verzi sady prostředků jako vstupní aplikace (nedoporučuje se).

Použijte -b <custom bundle version> , pokud chcete, aby zabalená aplikace měla vlastní CFBundleVersion. Pokud se rozhodnete zadat vlastní CFBundleVersion, je vhodné zvýšit cfBundleVersion nativní aplikace o nejméně významnou komponentu, například 1.0.0 až> 1.0.1.
-f (Volitelné) <Path to a plist file specifying arguments.> Tento příznak použijte před souborem plist , pokud se rozhodnete použít šablonu plist k zadání zbývajících vlastností IntuneMAMPackager, jako jsou -i, -o a -p. Viz Zadání argumentů pomocí plistu.
-Dt (Volitelné) Zakažte shromažďování telemetrie klienta Microsoft Intune.
-Dl (Volitelné) Zakažte protokoly MSAL z protokolů INtune pro aplikace, které mají integrované s MSAL, a implementujte vlastní zpětné volání protokolování MSAL.

Zadání argumentů pomocí plistu

Snadný způsob, jak spustit App Wrapping Tool, je vložit všechny argumenty příkazu do souboru plist. Plist je formát souboru podobný formátu XML, který můžete použít k zadávání argumentů příkazového řádku pomocí rozhraní formuláře.

Ve složce IntuneMAMPackager/Contents/MacOS otevřete Parameters.plist (prázdná šablona plist) textový editor nebo Xcode. Zadejte argumenty pro následující klíče:

Klávesa Plist Typ Výchozí hodnota Poznámky
Cesta k balíčku vstupní aplikace String prázdný Stejné jako -i
Cesta k balíčku výstupní aplikace String prázdný Stejné jako -o
Cesta profilu zřizování String prázdný Stejné jako -p
Hodnota hash certifikátu SHA-1 String prázdný Stejné jako -c
Autorita MSAL String prázdný Stejné jako -aa
ID klienta MSAL String prázdný Stejné jako -ac
Identifikátor URI odpovědi MSAL String prázdný Stejné jako -ar
Povoleno podrobné Boolean falešný Stejné jako -v
Odebrání chybějících nároků Boolean falešný Stejné jako -e
Zabránit výchozí aktualizaci sestavení Boolean falešný Ekvivalent použití -b bez argumentů
Přepsání řetězce sestavení String prázdný Vlastní verze CFBundleVersion zabalené výstupní aplikace
Cesty profilu zřizování rozšíření Pole řetězců prázdný Pole zřizovacích profilů rozšíření pro aplikaci
Zakázat telemetrii Boolean falešný Stejné jako -dt
Zakázat přepsání protokolu MSAL Boolean falešný Stejné jako -dl

Spusťte IntuneMAMPackager s jediným argumentem plist:

./IntuneMAMPackager –f Parameters.plist

Pozábalování

Po dokončení procesu zabalení se zobrazí zpráva "Aplikace byla úspěšně zabalena". Pokud dojde k chybě, najdete nápovědu v části Chybové zprávy .

Zabalená aplikace se uloží do výstupní složky, kterou jste zadali dříve. Aplikaci můžete nahrát do centra pro správu Intune a přidružit ji k zásadám správy mobilních aplikací.

Důležité

Při nahrávání zabalené aplikace můžete zkusit aktualizovat starší verzi aplikace, pokud už byla starší (zabalená nebo nativní) verze nasazená do Intune. Pokud dojde k chybě, nahrajte aplikaci jako novou a odstraňte starší verzi.

Teď můžete aplikaci nasadit do skupin uživatelů a cílit zásady ochrany aplikací do aplikace. Aplikace se spustí na zařízení pomocí zásad ochrany aplikací, které jste zadali.

Jak často mám aplikaci pro iOS přebalovat pomocí Intune App Wrapping Tool?

Hlavní scénáře, ve kterých byste museli přebalit aplikace, jsou následující:

  • Aplikace sama vydala novou verzi. Předchozí verze aplikace se zabalila a nahrála do Centra pro správu Intune.
  • Intune App Wrapping Tool pro iOS vydala novou verzi, která umožňuje opravy klíčových chyb nebo nové specifické Intune funkcí zásad ochrany aplikací. K tomu dochází po 6 až 8 týdnech prostřednictvím úložiště GitHub pro Microsoft Intune App Wrapping Tool pro iOS.

Pro iOS/iPadOS je sice možné zabalit jiný profil certifikátu nebo zřizovacího profilu, než je původní profil použitý k podepsání aplikace, ale pokud nároky zadané v aplikaci nejsou zahrnuté v novém zřizovacím profilu, zabalení se nezdaří. Použití možnosti příkazového řádku -e, která z aplikace odebere všechny chybějící nároky, a vynutí tak, aby v tomto scénáři neselželo zabalení, může způsobit narušení funkčnosti aplikace.

Mezi osvědčené postupy pro přebalování patří:

  • Zajištění, aby jiný zřizovací profil má všechna požadovaná oprávnění jako jakýkoli předchozí profil zřizování.

Chybové zprávy a soubory protokolu

Při řešení potíží s nástrojem pro zabalení aplikace využijte následující informace.

Chybové zprávy

Pokud se nástroj pro zabalení aplikace nepodaří úspěšně dokončit, zobrazí se v konzole jedna z následujících chybových zpráv:

Zpráva o chybě Další informace
Musíte zadat platný zřizovací profil iOS. Váš zřizovací profil nemusí být platný. Zkontrolujte, že máte správná oprávnění pro zařízení a že váš profil správně cílí na vývoj nebo distribuci. Může také vypršela platnost vašeho zřizovacího profilu.
Zadejte platný název vstupní aplikace. Ujistěte se, že zadaný název vstupní aplikace je správný.
Zadejte platnou cestu k výstupní aplikaci. Ujistěte se, že cesta k zadané výstupní aplikaci existuje a je správná.
Zadejte platný vstupní zřizovací profil. Ujistěte se, že jste zadali platný název a rozšíření zřizovacího profilu. Ve vašem zřizovacím profilu můžou chybět oprávnění nebo jste možná nezahrnuli možnost příkazového řádku –p.
Zadaná vstupní aplikace nebyla nalezena. Zadejte platný název vstupní aplikace a cestu. Ujistěte se, že je cesta vstupní aplikace platná a existuje. Ujistěte se, že vstupní aplikace v daném umístění existuje.
Zadaný vstupní soubor zřizovacího profilu nebyl nalezen. Zadejte platný vstupní soubor zřizovacího profilu. Ujistěte se, že je cesta ke vstupnímu souboru zřizování platná a že zadaný soubor existuje.
Zadaná výstupní složka aplikace nebyla nalezena. Zadejte platnou cestu k výstupní aplikaci. Ujistěte se, že zadaná výstupní cesta je platná a že existuje.
Výstupní aplikace nemá příponu .ipa . App Wrapping Tool přijímá jenom aplikace s rozšířeními .app a .ipa. Ujistěte se, že výstupní soubor má platnou příponu.
Byl zadán neplatný podpisový certifikát. Zadejte platný podpisový certifikát Apple. Ujistěte se, že jste si z portálu pro vývojáře Apple stáhli správný podpisový certifikát. Možná vypršela platnost vašeho certifikátu nebo mu chybí veřejný nebo privátní klíč. Pokud je možné ke správnému podepsání aplikace v Xcode použít váš certifikát Apple a zřizovací profil, jsou platné pro App Wrapping Tool. Dále ověřte, že podpisový certifikát má jedinečný název v klíči hostitelského počítače s macOS. Pokud existuje více verzí stejného certifikátu v rámci řetězce klíčů, může se tato chyba vrátit.
Zadaná vstupní aplikace je neplatná. Zadejte platnou aplikaci. Ujistěte se, že máte platnou aplikaci pro iOS, která byla zkompilována jako soubor .app nebo .ipa.
Zadaná vstupní aplikace je zašifrovaná. Zadejte platnou nešifrovanou aplikaci. App Wrapping Tool nepodporuje šifrované aplikace. Zadejte nešifrovanou aplikaci.
Zadaná vstupní aplikace není ve formátu Pie (Position Independent Executable). Zadejte platnou aplikaci ve formátu PIE. Aplikace typu Position Independent Executable (PIE) je možné při spuštění načíst na náhodnou adresu paměti. To může mít výhody zabezpečení. Další informace o výhodách zabezpečení najdete v dokumentaci pro vývojáře Apple.
Zadaná vstupní aplikace už je zabalená. Zadejte platnou nezabalenou aplikaci. Aplikaci, kterou už nástroj zpracoval, nemůžete zpracovat. Pokud chcete aplikaci znovu zpracovat, spusťte nástroj v původní verzi aplikace.
Zadaná vstupní aplikace není podepsaná. Zadejte platnou podepsanou aplikaci. Nástroj pro zabalení aplikace vyžaduje podepsání aplikací. Informace o tom, jak podepsat zabalenou aplikaci, najdete v dokumentaci pro vývojáře.
Zadaná vstupní aplikace musí být ve formátu .ipa nebo .app. Nástroj pro zabalení aplikace přijímá jenom rozšíření .app a .ipa. Ujistěte se, že vstupní soubor má platnou příponu a je zkompilovaný jako soubor .app nebo .ipa.
Zadaná vstupní aplikace už je zabalená a používá nejnovější verzi šablony zásad. App Wrapping Tool nepřebalí existující zabalenou aplikaci s nejnovější verzí šablony zásad.
UPOZORNĚNÍ: Nezadali jste hodnotu hash certifikátu SHA1. Před nasazením se ujistěte, že je zabalená aplikace podepsaná. Ujistěte se, že za příznakem příkazového řádku –c zadáte platnou hodnotu hash SHA1.

Shromažďování protokolů pro zabalené aplikace ze zařízení

Pomocí následujícího postupu získáte protokoly pro zabalené aplikace během řešení potíží.

  1. Na zařízení přejděte do aplikace Nastavení pro iOS a vyberte obchodní aplikaci.
  2. Vyberte Microsoft Intune.
  3. Přepněte nastavení Konzola pro diagnostiku zobrazení na Zapnuto.
  4. Spusťte obchodní aplikaci.
  5. Klikněte na odkaz Začínáme.
  6. Teď můžete odesílat protokoly přímo do Microsoftu nebo je sdílet prostřednictvím jiné aplikace na zařízení.

Poznámka

Funkce protokolování je povolená pro aplikace zabalené se Intune App Wrapping Tool verze 7.1.13 nebo vyšší.

Shromažďování protokolů chyb ze systému

Vaše aplikace možná protokoluje užitečné informace do konzoly klientského zařízení s iOSem. Tyto informace jsou užitečné, když máte problémy s aplikací a potřebujete zjistit, jestli problém souvisí s App Wrapping Tool nebo samotnou aplikací. Pokud chcete tyto informace načíst, postupujte následovně:

  1. Reprodukujte problém spuštěním aplikace.

  2. Shromážděte výstup konzoly podle pokynů společnosti Apple k ladění nasazených aplikací pro iOS.

Zabalené aplikace také uživatelům nabídne možnost posílat protokoly přímo ze zařízení e-mailem po chybovém ukončení aplikace. Uživatelé vám můžou protokoly poslat, aby je v případě potřeby prozkoumali a předali Microsoftu.

Požadavky na certifikát, profil zřizování a ověřování

App Wrapping Tool pro iOS má některé požadavky, které musí být splněny, aby byla zaručena plná funkčnost.

Požadavek Podrobnosti
Zřizovací profil iOS Než ho zahrnete, ujistěte se, že je zřizovací profil platný. App Wrapping Tool při zpracování aplikace pro iOS nekontroluje, jestli vypršela platnost zřizovacího profilu. Pokud je zadaný profil zřizování s vypršenou platností, nástroj pro zabalení aplikace bude obsahovat profil zřizování, jehož platnost vypršela, a vy nebudete vědět, že došlo k problému, dokud se aplikaci nepodaří nainstalovat na zařízení s iOSem.
Podpisový certifikát pro iOS Než ho zadáte, ujistěte se, že je podpisový certifikát platný. Nástroj při zpracování aplikací pro iOS nekontroluje, jestli vypršela platnost certifikátu. Pokud je k dispozici hodnota hash pro prošlý certifikát, nástroj aplikaci zpracuje a podepíše, ale na zařízení se ji nepodaří nainstalovat.

Ujistěte se, že se certifikát poskytnutý pro podepsání zabalené aplikace shoduje se zřizovacím profilem. Nástroj neověřuje, jestli se zřizovací profil shoduje s certifikátem poskytnutým pro podepsání zabalené aplikace.
Ověřování Aby šifrování fungovalo, musí mít zařízení KÓD PIN. Na zařízeních, na která jste nasadili zabalenou aplikaci, bude při dotyku na stavovém řádku na zařízení vyžadovat, aby se uživatel znovu přihlásil pomocí pracovního nebo školního účtu. Výchozí zásadou v zabalené aplikaci je ověřování při opětovném spuštění. iOS zpracovává všechna externí oznámení (třeba telefonní hovor) tak, že aplikaci ukončí a pak ji znovu spustí.

Nastavení oprávnění aplikace

Před zabalením aplikace můžete udělit oprávnění , abyste aplikaci udělili další oprávnění a možnosti, které překračují možnosti, které aplikace obvykle umí. Soubor oprávnění se používá při podepisování kódu k určení zvláštních oprávnění v rámci vaší aplikace (například přístup ke sdílenému řetězci klíčů). Konkrétní aplikační služby označované jako schopnosti jsou povolené v rámci Xcode během vývoje aplikací. Po povolení se možnosti projeví v souboru nároků. Další informace o oprávněních a možnostech najdete v tématu Přidání funkcí do knihovny pro vývojáře pro iOS. Úplný seznam podporovaných funkcí najdete v tématu Podporované funkce.

Podporované funkce pro App Wrapping Tool pro iOS

Schopnost Popis Doporučené pokyny
Skupiny aplikací Pomocí skupin aplikací můžete povolit více aplikacím přístup ke sdíleným kontejnerům a umožnit další meziprocesové komunikace mezi aplikacemi.

Pokud chcete povolit skupiny aplikací, otevřete podokno Schopnosti a klikněte na ZAPNUTO v Skupiny aplikací. Můžete přidat skupiny aplikací nebo vybrat existující.
Pokud používáte app Skupiny, použijte reverzní zápis DNS:

group.com.companyName.AppGroup
Režimy pozadí Když povolíte režimy na pozadí, aplikace pro iOS bude dál běžet na pozadí.
Ochrana dat Ochrana dat přidává úroveň zabezpečení k souborům uloženým na disku vaší aplikací pro iOS. Ochrana dat používá integrovaný šifrovací hardware, který je k ukládání souborů v šifrovaných formátech na disku na konkrétních zařízeních. Aby vaše aplikace používala ochranu dat, musí být zřízená.
Nákup v aplikaci Nákup v aplikaci vloží obchod přímo do vaší aplikace tím, že vám umožní připojit se k obchodu a bezpečně zpracovávat platby od uživatele. Nákup v aplikaci můžete použít ke shromažďování plateb za rozšířené funkce nebo za další obsah, který vaše aplikace může používat.
Sdílení řetězce klíčů Povolení sdílení řetězce klíčů umožní vaší aplikaci sdílet hesla v klíči s dalšími aplikacemi vyvinutými vaším týmem. Pokud používáte sdílení řetězce klíčů, použijte reverzní zápis DNS:

com.companyName.KeychainGroup
Osobní SÍŤ VPN Povolte osobní síť VPN, aby vaše aplikace mohla vytvářet a řídit vlastní systémovou konfiguraci VPN pomocí architektury rozšíření sítě.
Nabízená oznámení Služba Apple Push Notification Service (APNs) umožňuje aplikaci, která není spuštěná v popředí, upozornit uživatele, že má pro uživatele informace. Aby nabízená oznámení fungovala, musíte použít zřizovací profil specifický pro aplikaci.

Postupujte podle pokynů v dokumentaci pro vývojáře Apple.
Konfigurace bezdrátového příslušenství Povolení konfigurace bezdrátového příslušenství přidá do projektu architekturu externího příslušenství a umožní vaší aplikaci nastavit MFi Wi-Fi příslušenství.

Postup povolení nároků

  1. Povolení funkcí ve vaší aplikaci:

    a. V Xcode přejděte na cíl vaší aplikace a klikněte na Schopnosti.

    b. Zapněte příslušné funkce. Podrobné informace o jednotlivých funkcích a o tom, jak určit správné hodnoty, najdete v tématu Přidání funkcí ve vývojářské knihovně pro iOS.

    c. Poznamenejte si všechna ID, která jste během procesu vytvořili. Tyto hodnoty mohou být také označovány AppIdentifierPrefix jako hodnoty.

    d. Sestavte a podepište aplikaci k zabalení.

  2. Povolení nároků ve zřizovacím profilu:

    a. Přihlaste se k centru Apple Developer Member Center.

    b. Vytvořte pro svou aplikaci zřizovací profil. Pokyny najdete v tématu Jak získat požadavky pro Intune App Wrapping Tool pro iOS.

    c. Ve svém zřizovacím profilu povolte stejná oprávnění, která máte ve své aplikaci. Budete muset zadat stejná ID ( AppIdentifierPrefix hodnoty), které jste zadali při vývoji aplikace.

    d. Dokončete průvodce zřizovacím profilem a stáhněte si soubor.

  3. Ujistěte se, že jste splnili všechny požadavky, a pak aplikaci zabalte.

Řešení běžných chyb s nároky

Pokud App Wrapping Tool pro iOS zobrazuje chybu nároku, zkuste následující postup řešení potíží.

Problém Příčina Řešení
Nepovedlo se analyzovat nároky vygenerované ze vstupní aplikace. App Wrapping Tool nemůže přečíst soubor nároků extrahovaný z aplikace. Soubor nároků může být poškozený. Zkontrolujte soubor nároků pro vaši aplikaci. Následující pokyny vysvětlují, jak to udělat. Při kontrole souboru nároků zkontrolujte, jestli není poškozená syntaxe. Soubor by měl být ve formátu XML.
Ve zřizovacím profilu chybí oprávnění (chybějící nároky jsou uvedené). Znovu zabalte aplikaci pomocí zřizovacího profilu, který má tato oprávnění. Mezi oprávněními povolenými ve zřizovacím profilu a možnostmi povolenými v aplikaci dochází k neshodě. Tato neshoda se vztahuje také na ID přidružená k určitým možnostem (jako jsou skupiny aplikací a přístup k řetězce klíčů). Obecně můžete vytvořit nový zřizovací profil, který umožňuje stejné funkce jako aplikace. Pokud se ID mezi profilem a aplikací neshoduje, nahradí je App Wrapping Tool, pokud je to možné. Pokud se tato chyba zobrazuje i po vytvoření nového zřizovacího profilu, můžete zkusit odebrat oprávnění z aplikace pomocí parametru –e (viz Část Odebrání nároků z aplikace pomocí parametru –e).

Vyhledání existujících nároků podepsané aplikace

Kontrola existujících nároků podepsané aplikace a zřizovacího profilu:

  1. Vyhledejte soubor .ipa a změňte jeho příponu na .zip.

  2. Rozbalte soubor .zip. Tím se vytvoří složka Datové části obsahující sadu .app.

  3. Pomocí nástroje codesign zkontrolujte nároky na sadu .app, kde YourApp.app je skutečný název sady .app.

    codesign -d --entitlements :- "Payload/YourApp.app"
    
  4. Pomocí nástroje zabezpečení zkontrolujte nároky ve vloženém zřizovacím profilu aplikace, kde YourApp.app je skutečný název sady .app.

    security cms -D -i "Payload/YourApp.app/embedded.mobileprovision"
    

Odebrání nároků z aplikace pomocí parametru –e

Tento příkaz odebere všechny povolené funkce v aplikaci, které nejsou v souboru nároků. Pokud odeberete možnosti, které aplikace používá, může to aplikaci poškodit. Příkladem toho, kde můžete odebrat chybějící funkce, je aplikace vytvořená dodavatelem, která má ve výchozím nastavení všechny možnosti.

./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> -e

Zabezpečení a ochrana osobních údajů pro App Wrapping Tool

Při používání App Wrapping Tool použijte následující osvědčené postupy zabezpečení a ochrany osobních údajů.

  • Podpisový certifikát, profil zřizování a obchodní aplikace, které zadáte, musí být na stejném počítači s macOS, který používáte ke spuštění nástroje pro zabalení aplikace. Pokud jsou soubory v cestě UNC, ujistěte se, že jsou přístupné z počítače s macOS. Cesta musí být zabezpečená pomocí protokolu IPsec nebo podepisování SMB.

    Zabalená aplikace importovaná do Centra pro správu by měla být na stejném počítači, na který nástroj spouštíte. Pokud je soubor v cestě UNC, ujistěte se, že je přístupný na počítači, na kterém běží Centrum pro správu. Cesta musí být zabezpečená pomocí protokolu IPsec nebo podepisování SMB.

  • Prostředí, do kterého se App Wrapping Tool stahuje z úložiště GitHub, musí být zabezpečené pomocí protokolu IPsec nebo podepisování SMB.

  • Aplikace, kterou zpracováváte, musí pocházet z důvěryhodného zdroje, aby byla zajištěna ochrana před útoky.

  • Ujistěte se, že výstupní složka, kterou zadáte v App Wrapping Tool, je zabezpečená, zejména pokud se jedná o vzdálenou složku.

  • Aplikace pro iOS, které obsahují dialogové okno pro nahrání souboru, můžou uživatelům umožnit obejít, vyjmout, kopírovat a vložit omezení, která se na aplikaci vztahují. Uživatel může například použít dialogové okno pro nahrání souboru k nahrání snímku obrazovky s daty aplikace.

  • Když v zařízení monitorujete složku dokumentů z zabalené aplikace, může se zobrazit složka s názvem .msftintuneapplauncher. Pokud tento soubor změníte nebo odstraníte, může to mít vliv na správné fungování aplikací s omezeným přístupem.

  • Registrace vlastních schémat adres URL umožňuje přesměrování konkrétních adres URL do vaší aplikace. IOS a iPadOS umožňují více aplikacím registrovat stejné vlastní schéma adres URL a operační systém určuje, která aplikace se vyvolá. Doporučení, která vám pomůžou vyhnout se kolizím vlastních schémat adres URL, a pokyny k zabezpečení pro zpracování poškozených adres URL najdete v dokumentaci společnosti Apple Definování vlastního schématu adres URL.

Viz také