Příprava aplikací pro Android na zásady ochrany aplikací pomocí nástroje Intune App Wrapping Tool
Pomocí nástroje Microsoft Intune App Wrapping Tool pro Android můžete změnit chování vašich interních aplikací pro Android omezením funkcí aplikace beze změny kódu samotné aplikace.
Tento nástroj je aplikace příkazového řádku Windows, která běží v PowerShellu a kolem vaší aplikace pro Android vytvoří obálku. Po zabalení aplikace můžete změnit její funkce konfigurací zásad správy mobilních aplikací v Intune.
Před spuštěním nástroje si projděte aspekty zabezpečení pro spuštění nástroje App Wrapping Tool. Pokud si chcete nástroj stáhnout, přejděte na Microsoft Intune App Wrapping Tool pro Android na GitHubu.
Poznámka
Pokud máte problémy s používáním nástroje Intune App Wrapping Tool s vašimi aplikacemi, odešlete žádost o pomoc na GitHubu.
Splnění požadavků pro použití nástroje App Wrapping Tool
Vaše aplikace musí používat aktuální knihovny.
Vaše aplikace musí být kompatibilní s požadavky na Google Play.
Pokud je vaše aplikace složitá, musí se integrovat se sadou Intune App SDK pro Android.
Nástroj App Wrapping Tool musíte spustit na počítači s Windows 10 nebo novějším.
Vstupní aplikace musí být platným balíčkem aplikace pro Android s příponou .apk a:
- Nelze ji zašifrovat.
- Nesmí být dříve zabalený nástrojem Intune App Wrapping Tool.
- Musí být napsaný pro Android 9.0 nebo novější.
Poznámka
Pokud je vstupní aplikací sada aplikací pro Android (.aab), budete ji muset před použitím nástroje Intune App Wrapping Tool převést na soubor APK. Podrobnosti najdete v tématu Převod sady aplikací pro Android (AAB) na soubor APK. Od srpna 2021 je možné nové soukromé aplikace publikovat v obchodě Google Play jako sady APK.
Aplikace musí být vyvinuta společností nebo pro vaši společnost. Tento nástroj nelze použít v aplikacích, které jsou k dispozici v Obchodě Google Play. To zahrnuje stažení nebo získání aplikace z Obchodu Google Play.
Pokud chcete spustit nástroj App Wrapping Tool, musíte nainstalovat nejnovější verzi prostředí Java Runtime Environment a pak se ujistit, že proměnná cesta Java je v proměnných prostředí Windows nastavená na C:\ProgramData\Oracle\Java\javapath. Další nápovědu najdete v dokumentaci k Javě.
Poznámka
V některých případech může 32bitová verze Javy způsobit problémy s pamětí. Je vhodné nainstalovat 64bitovou verzi.
Android vyžaduje podepsání všech balíčků aplikací (.apk). Informace o opakovaném použení existujících certifikátů a celkovém podepisování certifikátů najdete v tématu Opětovné pouužování podpisových certifikátů a zabalení aplikací. Po zabalení souboru .apk pomocí nástroje Intune App Wrapping Tool doporučujeme použít nástroj Apksigner od Googlu. Tím zajistíte, že jakmile se vaše aplikace dostane k zařízením koncových uživatelů, bude možné ji podle standardů Androidu správně spustit.
(Volitelné) Někdy může aplikace kvůli třídám sady Intune MAM SDK, které se přidají během zabalení, dojít k dosažení limitu velikosti spustitelného souboru Dalvik (DEX). Soubory DEX jsou součástí kompilace aplikace pro Android. Nástroj Intune App Wrapping Tool automaticky zpracovává přetečení souborů DEX během zabalení aplikací s minimální úrovní rozhraní API 21 nebo vyšší (k verzi 1.0.2501.1). Pro aplikace s minimální úrovní < rozhraní API 21 je osvědčeným postupem zvýšit minimální úroveň rozhraní API pomocí příznaku obálky
-UseMinAPILevelForNativeMultiDex
. Pro zákazníky, kteří nemůžou zvýšit minimální úroveň rozhraní API aplikace, jsou k dispozici následující alternativní řešení DEX overflow. V některých organizacích to může vyžadovat spolupráci s kýmkoli, kdo aplikaci zkompiluje (tj. tým pro sestavení aplikace):- Pomocí Nástroje ProGuard vyloučíte nepoužívané odkazy na třídy z primárního souboru DEX aplikace.
- Pro zákazníky, kteří používají modul plug-in Android Gradle verze 3.1.0 nebo vyšší, zakažte dexer D8.
Jak často mám aplikaci pro Android přebalovat pomocí nástroje 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 Microsoft Intune.
Nástroj Intune App Wrapping Tool pro Android vydal novou verzi, která umožňuje opravy klíčových chyb nebo nové specifické funkce zásad ochrany aplikací Intune. K tomu dochází každých 6 až 8 týdnů prostřednictvím úložiště GitHub pro nástroj Microsoft Intune App Wrapping Tool pro Android.
Mezi osvědčené postupy pro přebalování patří:
- Zachování podpisových certifikátů používaných během procesu sestavení najdete v tématu Opětovné použití podpisových certifikátů a zabalení aplikací.
Instalace nástroje App Wrapping Tool
Z úložiště GitHub si stáhněte instalační soubor InstallAWT.exe nástroje Intune App Wrapping Tool pro Android do počítače s Windows. Otevřete instalační soubor.
Přijměte licenční smlouvu a dokončete instalaci.
Poznamenejte si složku, do které jste nástroj nainstalovali. Výchozí umístění je: C:\Program Files (x86)\Microsoft Intune Mobile Application Management\Android\App Wrapping Tool.
Spuštění nástroje App Wrapping Tool
Důležité
Intune pravidelně vydává aktualizace nástroje Intune App Wrapping Tool. Pravidelně kontrolujte aktualizace v nástroji Intune App Wrapping Tool pro Android 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í.
Na počítači s Windows, na který jste nainstalovali nástroj App Wrapping Tool, otevřete okno PowerShellu.
Ze složky, do které jste nástroj nainstalovali, naimportujte modul PowerShellu nástroje App Wrapping Tool:
Import-Module .\IntuneAppWrappingTool.psm1
Spusťte nástroj pomocí příkazu invoke-AppWrappingTool , který má následující syntaxi použití:
Invoke-AppWrappingTool [-InputPath] <String> [-OutputPath] <String> [<CommonParameters>]
Následující tabulka podrobně popisuje vlastnosti příkazu invoke-AppWrappingTool :
Vlastnost | Informace |
---|---|
-InputPath<Řetězec> | Cesta zdrojové aplikace pro Android (.apk). |
-OutputPath<Řetězec> | Cesta k výstupní aplikaci pro Android Pokud se jedná o stejnou cestu k adresáři jako InputPath, balení selže. |
<CommonParameters> | (Volitelné) Příkaz podporuje běžné parametry PowerShellu, jako je podrobné a ladění. |
Seznam běžných parametrů najdete na webu Microsoft Script Center.
Pokud chcete zobrazit podrobné informace o využití nástroje, zadejte příkaz :
Help Invoke-AppWrappingTool
Příklad:
Importujte modul PowerShellu.
Import-Module "C:\Program Files (x86)\Microsoft Intune Mobile Application Management\Android\App Wrapping Tool\IntuneAppWrappingTool.psm1"
Na HelloWorld.apk nativní aplikace spusťte nástroj App Wrapping Tool.
invoke-AppWrappingTool -InputPath .\app\HelloWorld.apk -OutputPath .\app_wrapped\HelloWorld_wrapped.apk -Verbose
Zabalená aplikace a soubor protokolu se vygenerují a uloží do výstupní cesty, kterou jste zadali.
Opakované použádání podpisových certifikátů a zabalení aplikací
Android vyžaduje, aby všechny aplikace byly podepsané platným certifikátem, aby bylo možné je nainstalovat na zařízení s Androidem.
Zabalené aplikace je možné po zabalení podepsat pomocí existujících nástrojů pro podepisování (všechny informace o podepisování v aplikaci před zabalením se zahodí). Pokud je to možné, měly by se při zabalení použít podpisové informace, které se už použily během procesu sestavení. V některých organizacích to může vyžadovat spolupráci s kýmkoli, kdo vlastní informace o úložišti klíčů (tj. s týmem pro sestavení aplikace).
Pokud předchozí podpisový certifikát nelze použít nebo aplikace ještě nebyla nasazena, můžete vytvořit nový podpisový certifikát podle pokynů v Příručce pro vývojáře pro Android.
Pokud byla aplikace dříve nasazená s jiným podpisovým certifikátem, nejde ji po upgradu nahrát do Intune. Scénáře upgradu aplikací se přeruší, pokud je vaše aplikace podepsaná pomocí jiného certifikátu, než je certifikát, se kterým je sestavená. Všechny nové podpisové certifikáty by proto měly být zachovány pro upgrady aplikací.
Důležité informace o zabezpečení při spuštění nástroje App Wrapping Tool
Pokud chcete zabránit potenciálnímu falšování identity, zpřístupnění informací a útokům na zvýšení oprávnění:
Ujistěte se, že vstupní obchodní aplikace (LOB) a výstupní aplikace jsou na stejném počítači s Windows, na kterém je spuštěný nástroj App Wrapping Tool.
Naimportujte výstupní aplikaci do Intune na stejném počítači, na kterém je nástroj spuštěný. Další informace o nástroji java keytool najdete v tématu keytool.
Pokud se výstupní aplikace a nástroj nacházejí v cestě UNC (Universal Naming Convention) a nespouštět nástroj a vstupní soubory na stejném počítači, nastavte prostředí tak, aby bylo zabezpečené pomocí protokolu IPsec (Internet Protocol Security) nebo protokolu SMB (Server Message Block).
Ujistěte se, že aplikace pochází z důvěryhodného zdroje.
Zabezpečte výstupní adresář, který obsahuje zabalenou aplikaci. Zvažte použití adresáře na úrovni uživatele pro výstup.
Převod sady aplikací pro Android (AAB) na APK
Nástroj Intune App Wrapping Tool aktuálně podporuje jenom vstupy APK. Sady aplikací pro Android musí být nejprve převedeny na soubor APK pro použití s nástrojem.
Sadu aplikací pro Android lze převést na APK pomocí nástroje příkazového řádku společnosti Google . bundletool
Nejnovější verzi bundle-tool
nástroje si můžete stáhnout z úložiště GitHub bundletool společnosti Google.
bundletool
Pomocí následujícího příkazu můžete vytvořit jeden univerzální soubor APK pro použití s nástrojem Intune App Wrapping Tool:
bundletool build-apks --bundle=input.aab --mode=universal --output=input.apks
Výstupní .apks
soubor je archiv ZIP obsahující jeden univerzální soubor APK. Rozbalte archiv a použijte tento soubor APK jako vstup do nástroje Intune App Wrapping Tool.