Logo androidermagazine.com
Logo androidermagazine.com

Android App-Berechtigungen - wie Google es richtig macht ...

Inhaltsverzeichnis:

Anonim

In letzter Zeit gab es eine Menge Neuigkeiten über Sicherheitslücken oder Urteile bei Apple, die es iOS-Anwendungen ermöglichen, Ihre Kontaktdaten auszuleihen und ohne Ihre Zustimmung an unbekannte Stellen weiterzuleiten. Apple hat das Problem an Mitglieder des US-Kongresses gerichtet und wird Schritte unternehmen, um die Kontrolle in einem zukünftigen iOS-Update zu verschärfen. Das sind gute Nachrichten, und wir freuen uns, dass das passiert.

Aber was ist mit Android? Bei all dem Fokus auf Apps, die Dinge ohne explizite Benutzerberechtigung ausführen, sehen Sie Leute, die auf das Android-Berechtigungsmodell verweisen. Wir werden alles für Sie aufschlüsseln. Es ist nicht perfekt, aber es funktioniert ziemlich gut - und es ist auf jeden Fall besser als gar kein Berechtigungssystem.

Lassen Sie sich durch die Berechtigungen auf Android führen und erfahren, wie Sie sicher sein müssen, dass Sie sich trennen.

In der Regel verfügt keine Android-Anwendung über die Berechtigung, Vorgänge auszuführen, die sich "nachteilig auf andere Anwendungen, das Betriebssystem oder den Benutzer auswirken" würden. Damit eine App Zugriff auf private Kontaktdaten, die Daten einer anderen Anwendung, den Netzwerkzugriff oder sogar etwas so Alltägliches wie das Schreiben eigener Daten in den Gerätespeicher hat, muss sie erklären, dass sie dazu berechtigt ist, und dann Sie müssen diese Berechtigung akzeptieren, bevor Sie die App installieren können. Wenn Sie eine App installieren, wird eine Liste der Berechtigungen angezeigt, die die Anwendung deklariert.

Und beachten Sie, dass wir sagen, dass Anwendungen Berechtigungen "deklarieren" und nicht unbedingt "anfordern". Semantik, nehmen wir an, aber es gibt kein Kästchen mit der Aufschrift "Hey, Jerry! Ich bin eine App, und ich würde mich freuen, wenn Sie mir einen Blick auf Ihre Kontaktinformationen erlauben. Das ist in Ordnung?" Stattdessen sind Android-Apps direkter und sagen: "Yo, Jerry. Ich bin eine App. Hier ist eine Liste der Möglichkeiten, die ich habe. Nimm sie oder lass sie."

Android-Apps geben an, auf welche Berechtigungen sie Zugriff haben und in welchen Sandboxen sie spielen können. Sie können sie entweder akzeptieren und die App installieren oder nicht. Sinn ergeben?

Berechtigungen - direkt und persönlich im Android Market

So sieht es aus, wenn Sie beispielsweise Path installieren. Sie erhalten die Makroliste der Berechtigungen, die Path deklariert. Tippen Sie auf eine, um diese Berechtigung etwas ausführlicher zu erläutern.

So sieht es aus, wenn Sie eine Anwendung aus dem Android Market installieren. Sie müssen durch die Liste scrollen, um alle zu sehen. Etwas weiter unten ist der Weg, der unter iOS (und anderen) in allerlei Schwierigkeiten geraten ist. In seiner Android-Form können Sie deutlich sehen, dass Path die Berechtigung für "Ihre persönlichen Daten - Kontaktdaten lesen" erklärt. Tippen Sie auf diese Berechtigung und Sie erhalten weitere Details:

"Ermöglicht einer Anwendung, alle auf Ihrem Telefon gespeicherten Kontakt- (Adress-) Daten zu lesen. Schädliche Anwendungen können diese verwenden, um Ihre Daten an andere Personen zu senden."

Path hat Ihnen also mitgeteilt, dass es Zugriff auf Ihre Kontaktdaten hat. Es sagt Ihnen nicht unbedingt, was es damit zu tun hat (wenn wir es nicht gerade angesprochen hätten, würden Sie es wirklich wissen wollen?), Aber es sagt Ihnen, dass es es lesen kann.

Apps außerhalb des Android Market

Was aber, wenn Sie eine App von der Seite laden? Oder nutzen Sie den Amazon Appstore? Anwendungen müssen weiterhin deklarieren, welche Berechtigungen sie verwenden, und diese Berechtigungsliste wird bei der Installation der App angezeigt. (Denken Sie daran, dass der Amazon Appstore Apps seitlich lädt. Sie sehen also genau das Gleiche, als hätten Sie eine App per E-Mail oder Download installiert.)

So würde das seitliche Laden von Google Mail aussehen. Der einzige wirkliche Unterschied zwischen dem Seitenladen und der Installation über den Android Market besteht darin, dass Sie beim Seitenladen keine detaillierteren Beschreibungen der Berechtigungen erhalten.

Warum das alles? Android-Anwendungen sind "sandboxed" - sie spielen in ihrem eigenen Bereich und haben ihre eigenen Datendateien in dieser Sandbox. Sie können das Spiel nur in der Sandbox eines anderen Spielers teilen, wenn sie ausdrücklich um Erlaubnis gebeten werden. Dies geschieht über die oben angezeigten Bildschirme. Wenn Sie diese Berechtigungen akzeptieren und die App installieren, erteilen Sie dieser App die Berechtigung, in den Sandboxen zu spielen, in denen die App spielen möchte.

Auf der Entwicklerseite … und wie Verbraucher ihren Beitrag leisten müssen

Hinter den Kulissen erklären App-Entwickler diese Berechtigungen in der Datei AndroidManifest.xml, die ein erforderlicher Bestandteil des Quellcodes für eine Android-App ist. Diese Deklarationen sind statisch und werden dem Benutzer wie oben dargestellt angezeigt. Android hat keine Möglichkeit, Berechtigungen dynamisch zur Laufzeit zu erteilen, da es laut den Android-OS-Entwicklern "die Benutzererfahrung zum Nachteil der Sicherheit verkompliziert". Eine App zu zwingen, Ihnen zu sagen, was sie tun möchte, ohne Änderungen vornehmen zu müssen - das ist das höchste Sicherheitsmodell.

Die Kehrseite? Es ist auch für Benutzer am einfachsten zu ignorieren.

Wir wissen alles darüber, was mit Path auf iOS passiert ist. Wie bei vielen anderen iOS-Apps wurde der Kontakt ohne Erlaubnis verwendet. Nicht für ruchlose Zwecke, aber dennoch, ohne vorherige Genehmigung und ohne nachzufragen. Path für Android hat alle Arten von Daten an seine Server gesendet, genau wie unter iOS. Aber wie wir in diesem Beitrag gezeigt haben, muss Path in Android zuerst die Erlaubnis deklarieren. Genauer gesagt, es erklärt die Erlaubnis und Sie akzeptieren sie oder lehnen sie ab.

Das Problem ist, wenn Sie eine App installieren, dass Sie höchstwahrscheinlich direkt am Berechtigungsabschnitt vorbeiziehen werden. Das solltest du wirklich nicht, aber wir alle tun es. Die Tatsache, dass die Berechtigungen nicht in Klartext geschrieben sind, ist Teil des Problems. Aber selbst wenn sie es wären, würden die meisten von uns sowieso direkt vorbei klicken. So ist es auf jeder Plattform. Auf der anderen Seite gibt es diejenigen, die sich über Berechtigungen hinwegsetzen, weil sie diese nicht verstehen. Auch hier würde eine benutzerfreundlichere Sprache helfen.

Eine der Alternativen dazu besteht darin, die Anwendung zur Laufzeit nach Berechtigungen fragen zu lassen, wenn sie etwas tun möchte, was sie normalerweise nicht kann. Wir haben bereits gelesen, dass das Android-Team dies für unpraktisch und unsicher hält, sodass dies wahrscheinlich nicht der Fall ist.

Eine andere Alternative besteht darin, ausgewählte Berechtigungen zuzulassen, ähnlich wie dies bei RIM mit BlackBerry der Fall ist. Am Ende haben Sie Anwendungen, die nur zur Hälfte funktionieren, weil Sie Berechtigungen verweigert haben, genau wie BlackBerry. Es gibt keine wirklich narrensichere Methode, außer alles zu lesen, wenn Sie diese App installieren und zu verstehen versuchen, wonach es verlangt und warum es danach fragt.

Hier kommen wir alle ins Spiel. Einige von uns verstehen Anwendungsberechtigungen besser als andere, und wenn eine App etwas tut, das sie eigentlich nicht tun sollte, hört man den Aufschrei. Lesen Sie die Berechtigungen. Lesen Sie die Marktkommentare. Lesen Sie Android Central. Wenn etwas schief geht, werden Sie davon hören.

Und noch eine letzte Sache …

Hier muss ein besonderer Hinweis zu Sicherheitslücken gegeben werden. Jedes Computerprogramm - und damit auch jedes mobile Betriebssystem - ist voll davon. Wenn eine Sicherheitsanfälligkeit gefunden wird, die es einer Anwendung ermöglicht, das Sicherheitsmodell zu umgehen, wird es von Google schnell gepatcht. Das passiert und es wird immer passieren. Wie schnell dieses Update für Sie bereitgestellt wird, hängt von den Personen ab, die Ihr Telefon herstellen. Sie verdienen die Anerkennung, wenn sie es richtig machen, und die Verachtung, wenn sie zu lange brauchen und es falsch machen. Das ist nichts, was in absehbarer Zeit verschwinden wird, und wir sind genau dort, wo Sie einen OEM anrufen können, der die Dinge nicht so sicher und sicher hält, wie sie sein sollten.

Wenn Sie sich noch eingehender mit Android-Berechtigungen befassen möchten, besuchen Sie die Google-Entwicklerseite.