Aplikace VPN žádá kontakty a přístupnost: co povolit
VPN potřebuje jedno síťové oprávnění. Přístupnost, kontakty a instalace certifikátů potřebují vlastní důvod, který funkce směrování nabídnout nemůže.
Instalátor nejprve žádá přístup k síti, potom ke kontaktům, přístupnost a instalaci certifikátu. Jen první žádost patří k této úloze. Skutečné rozhodnutí leží na druhé obrazovce.
Posuzujte každou žádost podle funkce, kterou jste si vybrali, na platformě, kterou používáte. Univerzální seznam oprávnění nepokrývá každý produkt VPN a dlouhý seznam sám o sobě nic nedokazuje.
Jediné oprávnění, které úloha skutečně potřebuje
Android žádá uživatele, aby před spuštěním tunelu schválil službu VPN v systémovém dialogu, a služba aplikace deklaruje BIND_VPN_SERVICE, aby se k ní systém mohl navázat. Provozně aplikace dělá směrování. Souhlas dává člověk, který drží zařízení, v dialogu, který aplikaci pojmenuje, a pozdější odvolání je podporovaná akce.
Platformy Apple vyjadřují tutéž myšlenku pomocí síťového rozšíření a schválení instalace místo obrazovky oprávnění. Windows používá ovladač virtuálního adaptéru a výzvu ke zvýšení oprávnění. Dva tvary, jeden význam: tento program smí zpracovávat pakety. Nic v tomto oprávnění nepokrývá čtení vašeho adresáře ani vydání vlastní certifikační autority.
Další přístup je samostatné oprávnění se samostatnými účinky. Směrovací klient, který ho chce, potřebuje vlastní důvod.
Kde potřebují další žádosti vlastní vysvětlení
Služba přístupnosti může číst obsah obrazovky a jednat vaším jménem, což je daleko za směrováním. Správa zařízení může vynucovat zásady uzamčení a mazat data. Uživatelem nainstalovaný kořenový certifikát umožňuje tomu, kdo má odpovídající klíč, číst provoz, který by jinak chránil TLS.
Kterákoli z těchto věcí může být oprávněná. Produkty pro spravovaná zařízení a rodičovskou kontrolu mohou potřebovat pravomoci k zásadám a nástroj podpory může potřebovat přístupnost, aby vás provedl nastavením.
Požadavkem je dohledatelnost: žádost ukazuje na pojmenovanou funkci a tato funkce je vidět v produktu, který jste nainstalovali. Žádost o kontakty bez obrazovky věnované kontaktům nemá co vysvětlit. Ani argument šifrováním se nepřenáší, protože ochrana paketů nic neříká o tom, kdo jsou vaši přátelé. Legitimní produkt přesto může žádat příliš mnoho prostřednictvím přiložené knihovny, a to je vada k nahlášení, nikoli zločin k oznámení.
Zapište žádost a funkci, ke které patří, a potom rozhodněte. Tato poznámka je také to, co ukážete podpoře, když se funkce po odmítnutí rozbije.
Jak žádost přečíst v zařízení
Záznam v obchodě popisuje záměr, zatímco nainstalovaný balíček popisuje realitu. Než cokoli dalšího schválíte, zeptejte se správce balíčků, co bylo deklarováno a co uděleno. Tato dvojice je nejdůležitější, když se záznam a manifest rozcházejí.
Většinu toho pokryjí dva dotazy:
adb shell dumpsys package com.example.vpn | grep -E "requested permissions|install permissions" -A 30 adb shell cmd appops get com.example.vpn
První vypisuje deklarovaná oprávnění proti uděleným, a právě toto srovnání odhalí příliš široký manifest. Druhý ukazuje běhové operace aplikace, včetně zvláštních přístupů, které se nikdy neobjeví jako běžná oprávnění. Kde nejsou k dispozici nástroje pro vývojáře, přečtěte si stejná fakta na obrazovkách nastavení platformy.
Tyto obrazovky zaberou minutu a nepotřebují žádný software. Přístupnost, správa zařízení a úložiště certifikátů každé vypisuje aplikace, které oprávnění mají.
Rozhodnout a potom omezit škody
Udělte síťové oprávnění klientovi, kterého jste si vybrali, a každou další žádost berte jako samostatné rozhodnutí. Odmítněte ty bez odpovídající funkce a podívejte se, co se rozbije. Směrovací klient, který selže, když je přístup ke kontaktům odmítnut, nikdy nežádal kontakty vaším jménem.
Odvolání jednoho oprávnění obvykle vypne jedinou funkci, aniž by odinstalovalo aplikaci nebo rozbilo každý profil. Potom se znovu připojte a ověřte, že tunel stále vzniká.
Oddělte dvě otázky, které žádost často slévá: co tento program smí v zařízení dělat a co jeho provozovatel dělá s provozem, jakmile tunel běží. Na první se odpovídá zde. Druhá potřebuje zásadu uchovávání a žádný dialog ji neposkytne.