Jak spravovat oprávnění aplikací pomocí App Ops

  • App Ops a jeho varianty vám umožňují ovládat a rušit oprávnění aplikací v systému Android, včetně těch skrytých od verze Android 4.4.2.
  • S root přístupem můžete jít mnohem dál, spravovat oprávnění systémových aplikací a používat moduly jako AppOpsXposed nebo vlastní ROM.
  • Kombinace App Ops s firewallem, jako je DroidWall, omezuje odesílání dat a podezřelých připojení z aplikací.
  • Správa oprávnění je klíčová jak pro uživatele, kteří dbají na soukromí, tak pro vývojáře, kteří chtějí vytvářet bezpečné a etické aplikace.

Jak spravovat oprávnění aplikací pomocí App Ops

Pokud máte obavy o soukromí v systému Android , je nezbytné ovládat, co každá aplikace dělá s vašimi daty . Mnoho aplikací požaduje přístup k vaší poloze, kontaktům, mikrofonu nebo SMS zprávám bez většího odůvodnění a po léta byla jedinou skutečnou možností buď vše přijmout, nebo aplikaci nenainstalovat.

V této souvislosti se objevila funkce App Ops – funkce, kterou Google zpočátku integroval a později skryl – spolu se sadou aplikací a triků, které tisícům uživatelů umožnily skutečně spravovat oprávnění svých aplikací . Pokud vás zajímá, jak pomocí App Ops ovládat, co každá aplikace může dělat, jaké existují alternativy a jak daleko můžete zajít s root přístupem, zde je komplexní průvodce založený na všem, co bylo k tomuto tématu publikováno.

Co jsou oprávnění aplikací a proč jsou důležitá?

Když si nainstalujete aplikaci z Google Play a téměř bez pohledu klepnete na tlačítko Přijmout, ve skutečnosti udělujete seznam oprávnění k přístupu k systému : fotoaparát, poloha, SMS, kontakty, úložiště, hovory atd.

Tato oprávnění umožňují aplikaci využívat zdroje a data vašeho telefonu , například připojení k internetu, čtení nebo odesílání zpráv, prohlížení fotografií nebo zaznamenávání vaší polohy pomocí GPS. V mnoha aplikacích je to oprávněné, ale v jiných se to zdá podezřelé.

Například pro mapovou aplikaci nebo vyhledávač restaurací dává smysl požadovat GPS a přístup k síti , aby správně fungovala. Pokud vás ale jednoduchá baterka nebo ležérní hra požádá o přečtení e-mailů, přístup ke kontaktům nebo odeslání textových zpráv, pak to změní situaci.

Problém je v tom, že ve starších verzích Androidu jste buď během instalace akceptovali všechna oprávnění, nebo jste aplikaci vůbec nemohli používat . Neexistoval žádný oficiální způsob, jak následně zakázat konkrétní oprávnění, a proto sehrála klíčovou roli App Ops a její varianty.

Některá oprávnění navíc jdou dál, než se zdá: například tím, že aplikaci dáte přístup k vašim SMS zprávám, si je může nejen číst, ale také odesílat zprávy bez vašeho výslovného vědomí , s rizikem zvýšení vašeho účtu nebo zneužití k tichému ověřování, jak se to děje v mnoha seznamovacích aplikacích.

App Ops: Skrytý správce oprávnění v systému Android

S Androidem 4.3 Google tiše představil nástroj s názvem App Ops jako interní správce oprávnění . Umožňoval uživatelům vidět, která oprávnění jednotlivé aplikace používají, a jednotlivě je deaktivovat, což byla vítaná funkce pro nadšence do ochrany soukromí.

Tato funkce zůstala i v Androidu 4.4 a 4.4.1, ačkoli byla tak skrytá, že si jí většina uživatelů nikdy nevšimla. S aktualizací na Android 4.4.2 se Google rozhodl odstranit rozhraní App Ops , což vyvolalo značnou kontroverzi mezi uživateli a obhájci soukromí.

Jak sama společnost uznala nadaci Electronic Frontier Foundation, App Ops byla experimentální funkcí určenou pro vývoj , která nikdy neměla být vydána pro širokou veřejnost, protože by mohla způsobit pád mnoha aplikací odebráním kritických oprávnění.

Realita je taková, že jakmile objevíte možnost vybrat si, která oprávnění může každá aplikace používat, je těžké se jí vzdát. Proto se rychle objevila řešení třetích stran, která umožňují trvalý přístup k App Ops nebo napodobují jeho funkcionalitu i v systému Android 4.4.2 a novějších verzích.

Souběžně s tím Android přidal další vrstvy zabezpečení, jako například SELinux v režimu Enforcing , které posilují interní kontrolu systému nad tím, co aplikace mohou dělat, i když ne vždy způsobem, který je viditelný pro průměrného uživatele.

Jak funguje App Ops na úrovni uživatele

Oprávnění klasifikovaná v sekci App Ops

Aplikace, které se spoléhají na App Ops, obvykle zobrazují seznam všech nainstalovaných aplikací s oprávněními, která používají , uspořádaný přehledněji než standardní nabídka systému Android, zejména ve starších verzích.

Rozhraní obvykle seskupuje oprávnění do několika karet nebo kategorií, například Poloha, Zprávy, Osobní informace a Zařízení . To vám umožňuje na první pohled vidět, které aplikace mají přístup k GPS, které mohou číst vaše SMS zprávy, které mohou používat fotoaparát nebo mikrofon atd.

V každé kategorii jsou uvedeny související aplikace; když klepnete na konkrétní aplikaci, zobrazí se všechna její aktivní oprávnění , nejen ta v dané kategorii, takže uvidíte celý balíček oprávnění, která jste při instalaci přijali.

Pro každé oprávnění existuje malý přepínač nebo zaškrtávací políčko, které umožňuje jednotlivě jej zapnout nebo vypnout . Pokud nechcete, aby Facebook používal vaši polohu nebo Google+ pro přístup ke kontaktům, jednoduše zrušte zaškrtnutí u těchto konkrétních oprávnění.

Stejná aplikace se může opakovat na několika kartách, ale není nutné je všechny otevírat: když přejdete do podrobností aplikace, zobrazí se všechna související oprávnění , včetně těch, která se vztahují k jiným sekcím.

Je však třeba mít na paměti jednu důležitou věc: pokud zakážete oprávnění nezbytná pro fungování aplikace, je docela možné, že přestane správně fungovat, neočekávaně se zavře nebo ztratí klíčové funkce . Pokud k tomu dojde, můžete problematické oprávnění vždy znovu povolit a zjistit, zda se vše vrátí do normálu.

Verze, typy App Ops a další funkce

Na Google Play najdete různé verze a klienty App Ops, které využívají skryté funkce nebo je reimplementují, aby vám poskytly výkonnější ovládací panel oprávnění . Jedním z nejznámějších jmen je aplikace App Ops vyvinutá společností Lars Team.

Tato aplikace, dostupná v bezplatné verzi a verzi Pro, vám umožňuje spravovat širokou škálu oprávnění: přístup k poloze, kontaktům, nastavení zařízení, fotoaparátu, mikrofonu a mnoha dalším systémovým prostředkům.

Bezplatná verze obvykle splňuje potřeby většiny uživatelů, protože umožňuje zobrazit a odebrat oprávnění pro všechny nainstalované aplikace . Verze Pro přidává velmi praktické doplňky pro pokročilejší uživatele.

Mezi placenými funkcemi vyniká možnost hromadně blokovat jedno oprávnění pro všechny aplikace , které o něj požádaly (například zabránění přístupu k vaší poloze jakékoli aplikaci kromě těch, které si vyberete). Umožňuje také definovat pravidla, aby nově nainstalované aplikace automaticky nezískaly určitá oprávnění.

Některé implementace také integrují systém oznámení, který zobrazuje upozornění, když aplikace v popředí odvolá oprávnění , abyste lépe pochopili, proč něco nemusí fungovat podle očekávání.

Je třeba si uvědomit, že tato řešení se v průběhu času vyvíjela a že ačkoli byla původně navržena pro Android 4.3 a 4.4.x, výrazně ovlivnila způsob, jakým Android dnes nativně spravuje oprávnění , zejména od Androidu 6 a Androidu 10.

Používání App Ops s root přístupem a bez něj

Potenciál App Ops a aplikací, které ho využívají, se značně liší v závislosti na tom, zda máte na svém zařízení Android přístup root . Čím hlouběji chcete spravovat oprávnění, tím výhodnější bude přístup root.

Pokud váš telefon není rootnutý, některé aplikace nabízejí režim s názvem Native App Ops , který v podstatě odhalí nativní správce oprávnění, který Google nechal skrytý. Klepnutím na toto tlačítko se otevře klasické rozhraní, ze kterého můžete bez větších potíží začít spravovat oprávnění.

Na zařízeních s Androidem 4.4.2 nebo vyšším, kde byla tato funkce zcela skrytá, vám tyto typy nástrojů třetích stran umožňují prakticky obnovit panel App Ops bez změny ROM, za předpokladu, že se aplikaci podaří přistupovat k příslušným interním komponentám.

Pokud jste uživatel s oprávněním root, situace se značně mění: App Ops a jeho rozšíření mohou spravovat také oprávnění nativních systémových aplikací , nejen těch, které jste si nainstalovali z Google Play.

Abyste mohli tyto pokročilé možnosti využít, je obvykle nutné nainstalovat doplňkové nástroje, jako je App Ops X , rozšířená placená verze, která se spoléhá na root oprávnění pro správu všech aplikací v zařízení, včetně těch předinstalovaných výrobcem nebo operátorem.

S App Ops X můžete například odepřít konkrétní oprávnění jakékoli aplikaci, která o něj požádá , a to i globálně. To je obzvláště užitečné pro zastavení sledování reklam, omezení invazivní analytiky nebo zabránění zneužívání vašich dat některými systémovými aplikacemi.

Další aplikace pro zobrazení a správu oprávnění v systému Android

Kromě App Ops nabízí ekosystém Androidu i další aplikace zaměřené na výpis a organizaci udělených oprávnění , což je velmi užitečné, pokud máte nainstalováno mnoho aplikací a chcete provést důkladné vyčištění.

Jedním z nich je ASpotCat, který analyzuje všechny aplikace v zařízení a uspořádává je podle jejich aktivních oprávnění . To vám umožní rychle zjistit, které aplikace mají přístup k obzvláště citlivým datům.

ASpotCat vám také pomůže najít a odinstalovat aplikace, které již nepoužíváte, což nejen zlepšuje zabezpečení, ale také výkon a zvětšuje dostupné místo na vašem zařízení Android.

Dalším zajímavým řešením je Gemini App Manager, který kombinuje správu oprávnění s funkcemi zálohování aplikací . S jeho pomocí můžete ukládat aplikace, přesouvat je mezi interním úložištěm a SD kartou a zároveň kontrolovat, jaká oprávnění používají.

Mnoho z těchto nástrojů není tak detailních ani výkonných jako App Ops v jeho nejpokročilejší verzi, ale nabízejí globální přehled o tom, co každá aplikace dělá s vašimi daty , a mohou vám pomoci s rozhodnutím, co ponechat nainstalované a co smazat.

Správa oprávnění z Androidu 10 a novějších verzí

S každou novou verzí Google začlenil některé nápady z App Ops přímo do systému. Například v Androidu 10 se oprávnění spravují v Nastavení > Soukromí > Správce oprávnění.

V tomto panelu můžete vidět, které aplikace mají přístup k jednotlivým typům dat nebo zdrojů (poloha, kamera, mikrofon, kontakty atd.), a to podle jednotlivých oprávnění . Zadáním jednoho z nich můžete dané oprávnění pro konkrétní aplikace povolit, odepřít nebo omezit.

Kromě toho se nyní mnoho žádostí o oprávnění odesílá za běhu , což znamená, že když se aplikace poprvé pokusí použít kameru, polohu nebo mikrofon, Android zobrazí varování, abyste se mohli rozhodnout, zda to povolíte či nikoli.

To je v souladu s filozofií, která je již patrná v systému iOS: pokud aplikace potřebuje použít citlivý zdroj, systém vás na to upozorní přesně v okamžiku, kdy ho potřebuje , a ne až během instalace. Pokud si ale instalujete mnoho aplikací, může to být poněkud těžkopádné.

I přes tento pokrok zůstávají nástroje jako App Ops relevantní pro pokročilé uživatele, protože umožňují jemnější a konzistentnější úroveň kontroly nad oprávněními než standardní nastavení.

DroidWall: Firewall pro omezení připojení aplikací

Správa oprávnění v systému Android nebrání aplikaci, která již má přístup k internetu, v odesílání informací na externí servery . Pro řešení tohoto problému přichází na řadu DroidWall, firewall speciálně navržený pro Android, spolu s řešeními proti krádeži.

DroidWall se spoléhá na síťové možnosti systému, aby vám umožnil rozhodnout, které aplikace se mohou připojit k internetu a jak , což je nezbytné, pokud chcete mít skutečnou kontrolu nad tokem dat opouštějících vaše zařízení.

Po instalaci a spuštění aplikace z Google Play se zobrazí seznam všech aplikací a služeb, které mají oprávnění k připojení k síti . Každá položka má dvě pole: jedno pro připojení Wi-Fi a jedno pro mobilní data (3G, 4G atd.).

Aplikace má dva základní režimy: bílou listinu a černou listinu . V režimu bílé listiny se mohou připojit pouze vámi vybrané aplikace; v režimu černé listiny budou vámi vybrané aplikace blokovány.

V praxi většina uživatelů považuje za pohodlnější používat režim černé listiny, kdy vybírá pouze aplikace, kterým chce zabránit v přístupu k internetu , nebo pro každou z nich omezuje typ připojení.

Můžete například povolit aplikaci připojení pouze tehdy, když jste připojeni k Wi-Fi, a blokovat tak mobilní data, abyste zabránili nadměrnému využití, nebo zcela zablokovat Wi-Fi i 3G/4G pro aplikace, které by se vůbec neměly připojovat.

Stejně jako mnoho pokročilých ovládacích aplikací vyžaduje DroidWall oprávnění superuživatele, takže pro to, aby firewall vynucoval pravidla blokování, musíte mít zařízení rootnuté .

Jakmile jsou pravidla definována, jednoduše aktivujte možnost „Firewall aktivní“ a udělte root přístup, aby se připojení začala blokovat . Pokud si to rozmyslíte, můžete upravit nastavení pro každou aplikaci a klepnout na „Použít pravidla“, aby se změny projevily okamžitě.

Pokročilá řešení: Xposed Framework a vlastní ROMy

Jak spravovat oprávnění aplikací pomocí App Ops

Pro pokročilejší uživatele nebo pro ty, kteří chtějí plnou integraci App Ops v rámci systému, existují moduly a vlastní ROM, které dále rozšiřují správu oprávnění.

Jedním z nejznámějších přístupů je AppOpsXposed, modul známého frameworku Xposed, který vrací rozhraní App Ops zpět do nastavení Androidu, a to i ve verzích, ze kterých jej Google odstranil.

Proces zahrnuje rootnutí zařízení, instalaci Xposed Frameworku a následné přidání modulu AppOpsXposed ze sekce Stažení instalačního programu Xposed . Po instalaci a restartování zařízení se sekce AppOps znovu zobrazí v nastavení systému.

Další možností je sáhnout přímo po vlastních ROM, jako je CyanogenMod (a jeho nástupci) , které již léta obsahují vlastního správce oprávnění, nezávisle na rozhodnutích Googlu.

Tyto ROMy obvykle obsahují panel, který umožňuje nejen odebrat oprávnění pro libovolnou aplikaci , ale také přidat další funkce ochrany osobních údajů, jako je šifrování SMS, černé listiny telefonních čísel nebo přísnější kontroly sledování reklamy.

Výhodou tohoto přístupu je, že si se změnami od Googlu nemusíte hrát „na kočku a myš“ ; správa oprávnění se stává klíčovou funkcí ROM, kterou může aktualizovat vlastní komunita vývojářů.

Zabezpečení, soukromí a odpovědnost vývojáře

Z bezpečnostního hlediska se otázka oprávnění netýká jen koncového uživatele, ale také způsobu, jakým vývojáři programují své aplikace . Etický přístup k vyžádání oprávnění je téměř stejně důležitý jako nástroje, které máme k dispozici k jejich odebrání.

V ideálním případě by aplikace měla vyžadovat pouze oprávnění nezbytně nutná k plnění své funkce . Například restaurační aplikace bude potřebovat GPS pro výpočet vzdálenosti, připojení k internetu pro zobrazení recenzí, případně SMS pro potvrzení rezervace a přístup ke kontaktům, pokud obsahuje pozvánky k přátelství.

Vyžadování nadměrného počtu oprávnění nebo nejasné vysvětlení jejich účelu však otevírá dveře zneužití a únikům dat . Případy jako ten s baterkou, která shromažďovala údaje o poloze a připojení za účelem prodeje inzerentům, jsou dobrým příkladem toho, co nedělat.

Nedávné studie ukazují, že značná část nejstahovanějších aplikací má zásady ochrany osobních údajů v souladu s právními předpisy , ale to nezbavuje vývojáře ani uživatele odpovědnosti.

Pokud bude aplikace zpracovávat obzvláště citlivá data, jako je tomu ve zdravotnictví (om-health), doporučují se osvědčené postupy, jako je řízení přístupu zaměřené na uživatele, robustní ověřování, silné šifrování (AES, TLS) , jasné zásady a protokoly pro uchovávání dat, které upozorní na narušení bezpečnosti, nebo používání aplikací ke skrytí souborů, když je to vhodné.

V každém případě, i při dodržování osvědčených postupů, konečné rozhodnutí vždy zůstává na uživateli: pokud aplikace požaduje oprávnění, se kterými nejste spokojeni, nejbezpečnější možností je ji neinstalovat nebo hledat méně rušivou alternativu.

Na starších systémech Android, pokud omezíte určitá oprávnění pomocí App Ops nebo jiných nástrojů, některé aplikace mohou odmítnout správně fungovat . V tomto okamžiku je volba obvykle jasná: buď obnovit oprávnění, nebo přepnout na jinou aplikaci.

Jak zobrazit a změnit oprávnění v systému Android bez externích aplikací

Kromě App Ops a pokročilých nástrojů Android vždy nabízel určitou základní úroveň kontroly oprávnění v nastavení systému, zejména v novějších verzích.

V mnoha verzích systému Android jednoduše přejděte do Nastavení > Aplikace > Stažené , vyberte aplikaci, která vás zajímá, a přejděte dolů do sekce oprávnění. Tam uvidíte, jaký přístup jí byl udělen, a v některých případech jej můžete upravit.

V systému Android 10 a novějších verzích se pozornost soustředí na Správce oprávnění v nabídce Soukromí , který usnadňuje zobrazení aplikací, které používají který typ oprávnění, podobně jako v systému App Ops, ale již v samotném systému.

Je důležité si uvědomit, že určitá oprávnění jsou pro fungování aplikace nezbytná; pokud je v těchto nabídkách zablokujete, téměř jistě si všimnete chyb, pádů nebo neustálých varování o chybějících oprávněních . Proto je důležité kombinovat selský rozum s dostupnými nástroji.

Pro mnoho uživatelů je dobrou strategií nejprve použít nativní nastavení systému Android k omezení nejzřetelnějšího a nejpodezřelejšího chování a poté se v případě potřeby uchýlit k externím aplikacím, jako jsou App Ops, ASpotCat nebo Gemini App Manager, pro přesnější kontrolu.

Kombinace nativních panelů, nástrojů jako App Ops, firewallů typu DroidWall a trochy selského rozumu při instalaci aplikací vám v konečném důsledku umožňuje dosáhnout rozumné rovnováhy mezi pohodlím, funkčností a soukromím, aniž byste se museli zbláznit nebo vzdát aplikací, které skutečně potřebujete.

Celý tento ekosystém řešení v kombinaci s pokrokem Androidu ve správě oprávnění podle kategorií a požadavků na použití vytvořil situaci, kdy si uživatelé mohou, pokud chtějí věnovat pár minut, převzít kontrolu nad tím, co aplikace dělají s jejich daty, a to jak na základní úrovni, tak i ve velmi pokročilých konfiguracích s root, Xposed nebo vlastními ROM.

Blokovat stahování aplikace
Související článek:
Blokování instalace aplikací v systému Android

Přidat jako preferovaný zdroj v Googlu