Kazalo:
- Dovoljenja - vnaprej in osebna v Android Marketu
- Aplikacije zunaj Android Market
- Na strani razvijalcev … in kako morajo potrošniki opraviti svoj del
- In še zadnja stvar …
V zadnjem času je bilo veliko novic o prekinitvi varnosti ali sodbe - oboje, res - pri Applu, ki aplikacijam iOS omogoča, da si izposodijo vaše kontaktne podatke in jih pošljejo v neznane dele brez vašega soglasja. Apple je težavo naslovil na člane ameriškega kongresa in sprejel bo ukrepe za strožji nadzor v prihodnji posodobitvi sistema iOS. To je dobra novica in veseli smo, da se dogaja.
Kaj pa Android? Med vsem tem osredotočanjem na aplikacije, ki delajo stvari brez izrecnega dovoljenja uporabnika, vidite ljudi, ki se sklicujejo na model dovoljenj Android. Vse vam razrešimo. Ni popoln, vendar deluje precej dobro - in vsekakor je boljši od nobenega dovoljenega sistema.
Poglejmo vas o dovoljenjih za Android in o tem, kako morate biti prepričani, da boste sodelovali.
Zasnova nobena Android aplikacija nima dovoljenja za izvajanje nobene operacije, ki bi "negativno vplivala na druge aplikacije, operacijski sistem ali uporabnika." Da bi aplikacija imela dostop do stvari, kot so zasebni podatki o stikih, podatki druge aplikacije, dostop do omrežja ali celo nekaj podobnega kot pisanje lastnih podatkov v shrambo naprave, mora aplikacija izjaviti, da bo imela dovoljenja za to in nato morate sprejeti to dovoljenje, preden lahko namestite aplikacijo. Ko namestite aplikacijo, se vam prikaže seznam dovoljenj, ki jih prijavi aplikacija.
In upoštevajte, da pravimo, da aplikacije "objavljajo" dovoljenja in jih ne zahtevajo. Predvidevamo semantiko, toda ni polja, ki bi pisalo "Hej, Jerry! Jaz sem aplikacija in rad bi, da mi omogočite ogled vaših kontaktnih podatkov. To je v redu?" Namesto tega so aplikacije za Android bolj neposredne in pravijo: "Yo, Jerry. Jaz sem aplikacija. Tu je seznam tega, kar lahko naredim, samo tako veš. Vzemi ali pusti."
Aplikacije za Android izjavijo, do katerih dovoljenj imajo dostop in s tem v peskovnike, v katerih se lahko igrajo. In lahko izberete, ali jih sprejmete in namestite aplikacijo, ali ne. Smiselno?
Dovoljenja - vnaprej in osebna v Android Marketu
Takole je videti, če namestite, recimo, Pot. Dobite makro seznam dovoljenj, ki jih Path izjavlja. Dotaknite se enega in ta razlaga dovoljenje nekoliko podrobneje.
Tako je videti, če na Android Market namestite katero koli aplikacijo. Če jih želite videti, se boste morali pomakniti po seznamu. Nekaj poti navzdol je tista, ki ima Path (in druge) v najrazličnejših težavah v iOS-u. V njegovi obliki Android lahko jasno vidite, da Path izjavi dovoljenje za "Vaši osebni podatki - preberite kontaktne podatke." Tapnite to dovoljenje in dobili boste več podrobnosti:
"Programu dovoljuje branje vseh podatkov o stikih (naslovih), shranjenih v vašem telefonu. Zlonamerne aplikacije lahko to uporabijo za pošiljanje vaših podatkov drugim osebam."
Tako vam je Path povedal, da ima dostop do vaših kontaktnih podatkov. Ni nujno, da vam pove, kaj bo s tem (če ga ne bi samo predstavili, bi res radi vedeli?), Ampak vam pove, da lahko to preberete.
Aplikacije zunaj Android Market
Kaj pa če naložite aplikacijo? Ali uporabljate Amazon Appstore? V programih naj bi še vedno razglasili, katera dovoljenja uporabljajo, in videl je seznam dovoljenj, ko namestite aplikacijo. (Ne pozabite, da Amazon Appstore nalaga aplikacije, zato je tisto, kar vidite, popolnoma enako, kot če bi namestili aplikacijo iz e-pošte ali jo prenesli.)
Tukaj je videti, kako bi izgledal Gmail s stransko naložitvijo. Edina resnična razlika med stranskim nalaganjem in nameščanjem iz trgovine Android Market, kolikor gre za dovoljenja, je ta, da pri stranskem nalaganju ne dobite podrobnejših opisov dovoljenj.
Zakaj vse to? Aplikacije za Android so "peskovljene" - igrajo se v svojem prostoru in v tem peskovniku imajo svoje podatkovne datoteke. Predvajanje lahko delijo v peskovniku nekoga drugega, šele ko izrecno zaprosijo za dovoljenje, in to storijo prek zgornjih zaslonov. Ko sprejmete ta dovoljenja in ga namestite, mu dajete dovoljenje za igranje v peskovniku, za katerega pravi, da se želi igrati.
Na strani razvijalcev … in kako morajo potrošniki opraviti svoj del
Razvojniki aplikacij ta dovoljenja izjavijo v datoteki AndroidManifest.xml, ki je obvezen del izvorne kode za aplikacijo Android. Te izjave so statične in vsaka od njih se uporabniku predstavi, kot smo videli zgoraj. Android nima možnosti za dinamično dodeljevanje dovoljenj med izvajanjem, saj po besedah razvijalcev Android OS "zaplete uporabniško izkušnjo v škodo varnosti." Prisiljanje aplikacije, da vam pove, kaj želi narediti, vnaprej in nikoli ne bo mogla spremeniti - to je najboljši varnostni model.
Stran? Uporabniki so tudi najlažje prezrti.
Vemo vse o dogajanju s Pathom v iOS-u. Kot številne druge aplikacije za iOS je tudi ta kontakt uporabljal brez dovoljenja. Ne za zmerne namene, vendar kljub temu brez kakršnega koli predhodnega dovoljenja in brez poznejšega spraševanja. Pot za Android je na svoje strežnike pošiljala vse vrste podatkov, tako kot v iOS-u. Toda kot smo pokazali v tej objavi, mora Android v aplikaciji najprej prijaviti dovoljenje. Ali natančneje, razglasi dovoljenje in ga bodisi sprejmete ali zavrnete.
Težava je, ko namestite aplikacijo, najverjetneje se boste pomaknili takoj pod razdelek z dovoljenji. Resnično ne bi smeli, ampak vsi to počnemo. Dejstvo, da dovoljenja niso napisana v preprostem jeziku, je del težave. Toda tudi če bi bili, bi večina od nas tako ali tako kliknila mimo. Tako je na vseh platformah. Po drugi strani pa obstajajo tisti, ki prestrašijo dovoljenja, ker jih ne razumejo. Tu bi spet pomagal prijaznejši jezik.
Ena od drugih možnosti je, da aplikacija prosi za dovoljenja v času izvajanja, ko želi narediti nekaj, česar ne zmore normalno. Prebrali smo že, da Androidova ekipa meni, da je to neprijetno in negotovo, zato se verjetno ne bo zgodilo.
Druga možnost je, da omogočite izbrana dovoljenja, podobno kot to počne RIM s BlackBerryjem. Na koncu končate z aplikacijami, ki delajo le polovico, ker ste zavrnili dovoljenja, tako kot BlackBerry. Ni prave brezhibne metode, razen branja vsega, ko namestite to aplikacijo in poskušate razumeti, kaj je treba storiti in zakaj jo sprašujete.
To je tisto, kar vsi prihajamo. Nekateri od nas razumejo dovoljenja za aplikacije bolj kot drugi, in ko aplikacija naredi nekaj, česar ne bi smela početi, slišite krik. Preberite dovoljenja. Preberite tržne komentarje. Preberite Android Central. Ko gre kaj narobe, boste slišali o tem.
In še zadnja stvar …
Tukaj je treba opozoriti na varnostne ranljivosti. Vsak računalniški program - in to pomeni tudi vsak mobilni operacijski sistem - je poln njih. Ko se ugotovi ranljivost, ki aplikaciji omogoča, da zaobide varnostni model, jo Google hitro popravi. To se zgodi in vedno se bo zgodilo. Kako hitro se vam bo ta posodobitev predstavila, je odvisno od ljudi, ki izdelujejo vaš telefon. Zasluge si zaslužijo, ko to storijo pravilno, in prezirajo, ko trajajo predolgo in delajo narobe. To kmalu ne bo več kmalu, zato smo ravno pri vas, da pokličemo OEM-ja, ki stvari ne bo varoval tako varno, kot bi morale biti.
Če se želite še bolj poglobiti v dovoljenja za Android, si oglejte Googlovo stran za razvijalce na njih.