[anDROID für Anfänger erklärt] Teil 10: App-Berechtigungen und was sie bedeuten!
Hand aufs Herz – wer von uns Android Nutzern, ob Anfänger oder langjähriger User, liest sich die Berechtigungen bei einem Kauf oder Gratis Download aus dem Google Play Store noch durch? In der Regel stimmt man diesen ungelesen zu und will die neue Applikation auf den eigenen Tablet oder Smartphone nutzen. Doch auch wenn wir uns die Mühe machen, wer von uns weiß denn was diese Berechtigungen wirklich bedeuteten? Antworten auf die häufigsten Berechtigungen gibt es in unserem 10. Teil der Reihe anDROID für Anfänger erklärt.
Yin und Yang
Wie immer im Leben müssen wir auch bei unserem schönen quelloffenen mobilen Betriebssystem Android, welches uns Google freundlicherweise zur Verfügung stellt, feststellen dass da wo Sonne scheint auch Schatten fällt. Die Möglichkeit, dass ein jeder halbwegs begabter Entwickler eine Applikation mit einfachsten Mitteln programmieren und dem Google Play Store zur Verfügung stellen kann, ruft zum einen natürlich mit unter schlecht programmierte Apps und zum anderen solche, die die Sicherheitslücken bewusst zu ihren Gunsten ausnutzen, auf die Tagesordnung.
Hierfür hat Google unter anderen die sogenannten Berechtigungen ins Leben gerufen, die wie Datenbestimmungen von jeden der eine App aus dem Google Play Store herunterlädt und installiert, gelesen und bestätigt werden müssen.
Der Alltag sieht leider so aus das kaum einer diese Berechtigungen bewusst wahrnimmt und sie ungelesen bestätigt. Aus diesem Grunde wollen wir uns dieser Thematik einmal ein wenig ausführlicher widmen.
Die Berechtigungen und ihre Gruppen
Das Google Entwickler Team ist im Grunde für alle programmiertechnischen Belange in dem Android Betriebssystem verantwortlich, die an dieser Stelle angemerkt nicht mit den Entwicklern der vielen Spiele und Applikationen aus dem Google Play Store gleichzusetzen sind, denn App-Entwickler kann ein jeder von uns sein oder werden.
Jenes Google Developers Team unterteilt die aktuell ca. 130 Berechtigungen in 30 Berechtigungsgruppen. Aktuell – aus dem Grund, da diese Liste ständig durch die jeweiligen Software Entwickler mit neuen Berechtigungen erweitert werden kann.
Je nach Betriebssystem sind die den Anwendungen zugeordneten Berechtigungs-Gruppen mit einem Icon oder Text versehen.
Wir haben hier einmal die Originalen (englischen) Berechtigungs-Gruppen aufgelistet:
[EXPAND Berechtigungs-Gruppen (ausklappbar)]ACCESSIBILITY_FEATURES | Used for permissions that allow requesting certain accessibility features. |
ACCOUNTS | Permissions for direct access to the accounts managed by the Account Manager. |
AFFECTS_BATTERY | Used for permissions that provide direct access to the hardware on the device that has an effect on battery life. |
APP_INFO | Group of permissions that are related to the other applications installed on the system. |
AUDIO_SETTINGS | Used for permissions that provide direct access to speaker settings the device. |
BLUETOOTH_NETWORK | Used for permissions that provide access to other devices through Bluetooth. |
BOOKMARKS | Used for permissions that provide access to the user bookmarks and browser history. |
CALENDAR | Used for permissions that provide access to the device calendar to create / view events. |
CAMERA | Used for permissions that are associated with accessing camera or capturing images/video from the device. |
COST_MONEY | Used for permissions that can be used to make the user spend money without their direct involvement. |
DEVELOPMENT_TOOLS | Group of permissions that are related to development features. |
DEVICE_ALARMS | Used for permissions that provide access to the user voicemail box. |
DISPLAY | Group of permissions that allow manipulation of how another application displays UI to the user. |
HARDWARE_CONTROLS | Used for permissions that provide direct access to the hardware on the device. |
LOCATION | Used for permissions that allow access to the user’s current location. |
MESSAGES | Used for permissions that allow an application to send messages on behalf of the user or intercept messages being received by the user. |
MICROPHONE | Used for permissions that are associated with accessing microphone audio from the device. |
NETWORK | Used for permissions that provide access to networking services. |
PERSONAL_INFO | Used for permissions that provide access to information about the device user such as profile information. |
PHONE_CALLS | Used for permissions that are associated with accessing and modifyign telephony state: placing calls, intercepting outgoing calls, reading and modifying the phone state. |
SCREENLOCK | Group of permissions that are related to the screenlock. |
SOCIAL_INFO | Used for permissions that provide access to the user’s social connections, such as contacts, call logs, social stream, etc. |
STATUS_BAR | Used for permissions that change the status bar |
Die sogenannten Berechtigungs-Gruppen haben für uns keine besondere Bedeutung, sondern dienen lediglich der besseren Übersicht der knapp 130 Berechtigungen/Rechte. Diese sind aktuell wie folgt:
[EXPAND App-Berechtigungen (ausklappbar)]ACCESS_CHECKIN_PROPERTIES | Allows read/write access to the „properties“ table in the checkin database, to change values that get uploaded. | |
ACCESS_COARSE_LOCATION | Allows an app to access approximate location derived from network location sources such as cell towers and Wi-Fi. | |
ACCESS_FINE_LOCATION | Allows an app to access precise location from location sources such as GPS, cell towers, and Wi-Fi. | |
ACCESS_LOCATION_EXTRA_COMMANDS | Allows an application to access extra location provider commands | |
ACCESS_MOCK_LOCATION | Allows an application to create mock location providers for testing | |
ACCESS_NETWORK_STATE | Allows applications to access information about networks | |
ACCESS_SURFACE_FLINGER | Allows an application to use SurfaceFlinger’s low level features. | |
ACCESS_WIFI_STATE | Allows applications to access information about Wi-Fi networks | |
ACCOUNT_MANAGER | Allows applications to call into AccountAuthenticators. | |
ADD_VOICEMAIL | Allows an application to add voicemails into the system. | |
AUTHENTICATE_ACCOUNTS | Allows an application to act as an AccountAuthenticator for the AccountManager | |
BATTERY_STATS | Allows an application to collect battery statistics | |
BIND_ACCESSIBILITY_SERVICE | Must be required by an AccessibilityService, to ensure that only the system can bind to it. | |
BIND_APPWIDGET | Allows an application to tell the AppWidget service which application can access AppWidget’s data. | |
BIND_DEVICE_ADMIN | Must be required by device administration receiver, to ensure that only the system can interact with it. | |
BIND_INPUT_METHOD | Must be required by an InputMethodService, to ensure that only the system can bind to it. | |
BIND_NOTIFICATION_LISTENER_SERVICE | Must be required by an NotificationListenerService, to ensure that only the system can bind to it. | |
BIND_REMOTEVIEWS | Must be required by a RemoteViewsService, to ensure that only the system can bind to it. | |
BIND_TEXT_SERVICE | Must be required by a TextService (e.g. | |
BIND_VPN_SERVICE | Must be required by an VpnService, to ensure that only the system can bind to it. | |
BIND_WALLPAPER | Must be required by a WallpaperService, to ensure that only the system can bind to it. | |
BLUETOOTH | Allows applications to connect to paired bluetooth devices | |
BLUETOOTH_ADMIN | Allows applications to discover and pair bluetooth devices | |
BRICK | Required to be able to disable the device (very dangerous!). | |
BROADCAST_PACKAGE_REMOVED | Allows an application to broadcast a notification that an application package has been removed. | |
BROADCAST_SMS | Allows an application to broadcast an SMS receipt notification. | |
BROADCAST_STICKY | Allows an application to broadcast sticky intents. | |
BROADCAST_WAP_PUSH | Allows an application to broadcast a WAP PUSH receipt notification. | |
CALL_PHONE | Allows an application to initiate a phone call without going through the Dialer user interface for the user to confirm the call being placed. | |
CALL_PRIVILEGED | Allows an application to call any phone number, including emergency numbers, without going through the Dialer user interface for the user to confirm the call being placed. | |
CAMERA | Required to be able to access the camera device. | |
CHANGE_COMPONENT_ENABLED_STATE | Allows an application to change whether an application component (other than its own) is enabled or not. | |
CHANGE_CONFIGURATION | Allows an application to modify the current configuration, such as locale. | |
CHANGE_NETWORK_STATE | Allows applications to change network connectivity state | |
CHANGE_WIFI_MULTICAST_STATE | Allows applications to enter Wi-Fi Multicast mode | |
CHANGE_WIFI_STATE | Allows applications to change Wi-Fi connectivity state | |
CLEAR_APP_CACHE | Allows an application to clear the caches of all installed applications on the device. | |
CLEAR_APP_USER_DATA | Allows an application to clear user data. | |
CONTROL_LOCATION_UPDATES | Allows enabling/disabling location update notifications from the radio. | |
DELETE_CACHE_FILES | Allows an application to delete cache files. | |
DELETE_PACKAGES | Allows an application to delete packages. | |
DEVICE_POWER | Allows low-level access to power management. | |
DIAGNOSTIC | Allows applications to RW to diagnostic resources. | |
DISABLE_KEYGUARD | Allows applications to disable the keyguard | |
DUMP | Allows an application to retrieve state dump information from system services. | |
EXPAND_STATUS_BAR | Allows an application to expand or collapse the status bar. | |
FACTORY_TEST | Run as a manufacturer test application, running as the root user. | |
FLASHLIGHT | Allows access to the flashlight | |
FORCE_BACK | Allows an application to force a BACK operation on whatever is the top activity. | |
GET_ACCOUNTS | Allows access to the list of accounts in the Accounts Service | |
GET_PACKAGE_SIZE | Allows an application to find out the space used by any package. | |
GET_TASKS | Allows an application to get information about the currently or recently running tasks. | |
GET_TOP_ACTIVITY_INFO | Allows an application to retrieve private information about the current top activity, such as any assist context it can provide. | |
GLOBAL_SEARCH | This permission can be used on content providers to allow the global search system to access their data. | |
HARDWARE_TEST | Allows access to hardware peripherals. | |
INJECT_EVENTS | Allows an application to inject user events (keys, touch, trackball) into the event stream and deliver them to ANY window. | |
INSTALL_LOCATION_PROVIDER | Allows an application to install a location provider into the Location Manager. | |
INSTALL_PACKAGES | Allows an application to install packages. | |
INTERNAL_SYSTEM_WINDOW | Allows an application to open windows that are for use by parts of the system user interface. | |
INTERNET | Allows applications to open network sockets. | |
KILL_BACKGROUND_PROCESSES | Allows an application to call killBackgroundProcesses(). | |
LOCATION_HARDWARE | Allows an application to use location features in hardware, such as the geofencing api. | |
MANAGE_ACCOUNTS | Allows an application to manage the list of accounts in the AccountManager | |
MANAGE_APP_TOKENS | Allows an application to manage (create, destroy, Z-order) application tokens in the window manager. | |
MASTER_CLEAR | Not for use by third-party applications. | |
MODIFY_AUDIO_SETTINGS | Allows an application to modify global audio settings | |
MODIFY_PHONE_STATE | Allows modification of the telephony state – power on, mmi, etc. | |
MOUNT_FORMAT_FILESYSTEMS | Allows formatting file systems for removable storage. | |
MOUNT_UNMOUNT_FILESYSTEMS | Allows mounting and unmounting file systems for removable storage. | |
NFC | Allows applications to perform I/O operations over NFC | |
PERSISTENT_ACTIVITY | This constant was deprecated in API level 9. This functionality will be removed in the future; please do not use. Allow an application to make its activities persistent. | |
PROCESS_OUTGOING_CALLS | Allows an application to monitor, modify, or abort outgoing calls. | |
READ_CALENDAR | Allows an application to read the user’s calendar data. | |
READ_CALL_LOG | Allows an application to read the user’s call log. | |
READ_CONTACTS | Allows an application to read the user’s contacts data. | |
READ_EXTERNAL_STORAGE | Allows an application to read from external storage. | |
READ_FRAME_BUFFER | Allows an application to take screen shots and more generally get access to the frame buffer data. | |
READ_HISTORY_BOOKMARKS | Allows an application to read (but not write) the user’s browsing history and bookmarks. | |
READ_INPUT_STATE | This constant was deprecated in API level 16. The API that used this permission has been removed. | |
READ_LOGS | Allows an application to read the low-level system log files. | |
READ_PHONE_STATE | Allows read only access to phone state. | |
READ_PROFILE | Allows an application to read the user’s personal profile data. | |
READ_SMS | Allows an application to read SMS messages. | |
READ_SOCIAL_STREAM | Allows an application to read from the user’s social stream. | |
READ_SYNC_SETTINGS | Allows applications to read the sync settings | |
READ_SYNC_STATS | Allows applications to read the sync stats | |
READ_USER_DICTIONARY | Allows an application to read the user dictionary. | |
REBOOT | Required to be able to reboot the device. | |
RECEIVE_BOOT_COMPLETED | Allows an application to receive the ACTION_BOOT_COMPLETED that is broadcast after the system finishes booting. | |
RECEIVE_MMS | Allows an application to monitor incoming MMS messages, to record or perform processing on them. | |
RECEIVE_SMS | Allows an application to monitor incoming SMS messages, to record or perform processing on them. | |
RECEIVE_WAP_PUSH | Allows an application to monitor incoming WAP push messages. | |
RECORD_AUDIO | Allows an application to record audio | |
REORDER_TASKS | Allows an application to change the Z-order of tasks | |
RESTART_PACKAGES | This constant was deprecated in API level 8. The restartPackage() API is no longer supported. | |
SEND_RESPOND_VIA_MESSAGE | Allows an application (Phone) to send a request to other applications to handle the respond-via-message action during incoming calls. | |
SEND_SMS | Allows an application to send SMS messages. | |
SET_ACTIVITY_WATCHER | Allows an application to watch and control how activities are started globally in the system. | |
SET_ALARM | Allows an application to broadcast an Intent to set an alarm for the user. | |
SET_ALWAYS_FINISH | Allows an application to control whether activities are immediately finished when put in the background. | |
SET_ANIMATION_SCALE | Modify the global animation scaling factor. | |
SET_DEBUG_APP | Configure an application for debugging. | |
SET_ORIENTATION | Allows low-level access to setting the orientation (actually rotation) of the screen. | |
SET_POINTER_SPEED | Allows low-level access to setting the pointer speed. | |
SET_PREFERRED_APPLICATIONS | This constant was deprecated in API level 7. No longer useful, see addPackageToPreferred() for details. | |
SET_PROCESS_LIMIT | Allows an application to set the maximum number of (not needed) application processes that can be running. | |
SET_TIME | Allows applications to set the system time. | |
SET_TIME_ZONE | Allows applications to set the system time zone | |
SET_WALLPAPER | Allows applications to set the wallpaper | |
SET_WALLPAPER_HINTS | Allows applications to set the wallpaper hints | |
SIGNAL_PERSISTENT_PROCESSES | Allow an application to request that a signal be sent to all persistent processes. | |
STATUS_BAR | Allows an application to open, close, or disable the status bar and its icons. | |
SUBSCRIBED_FEEDS_READ | Allows an application to allow access the subscribed feeds ContentProvider. | |
SUBSCRIBED_FEEDS_WRITE | ||
SYSTEM_ALERT_WINDOW | Allows an application to open windows using the type TYPE_SYSTEM_ALERT, shown on top of all other applications. | |
UPDATE_DEVICE_STATS | Allows an application to update device statistics. | |
USE_CREDENTIALS | Allows an application to request authtokens from the AccountManager | |
USE_SIP | Allows an application to use SIP service | |
VIBRATE | Allows access to the vibrator | |
WAKE_LOCK | Allows using PowerManager WakeLocks to keep processor from sleeping or screen from dimming | |
WRITE_APN_SETTINGS | Allows applications to write the apn settings. | |
WRITE_CALENDAR | Allows an application to write (but not read) the user’s calendar data. | |
WRITE_CALL_LOG | Allows an application to write (but not read) the user’s contacts data. | |
WRITE_CONTACTS | Allows an application to write (but not read) the user’s contacts data. | |
WRITE_EXTERNAL_STORAGE | Allows an application to write to external storage. | |
WRITE_GSERVICES | Allows an application to modify the Google service map. | |
WRITE_HISTORY_BOOKMARKS | Allows an application to write (but not read) the user’s browsing history and bookmarks. | |
WRITE_PROFILE | Allows an application to write (but not read) the user’s personal profile data. | |
WRITE_SECURE_SETTINGS | Allows an application to read or write the secure system settings. | |
WRITE_SETTINGS | Allows an application to read or write the system settings. | |
WRITE_SMS | Allows an application to write SMS messages. | |
WRITE_SOCIAL_STREAM | Allows an application to write (but not read) the user’s social stream data. | |
WRITE_SYNC_SETTINGS | Allows applications to write the sync settings | |
WRITE_USER_DICTIONARY | Allows an application to write to the user dictionary. |
Top 10 der Berechtigungen
Keine Frage, an dieser Stelle können wir uns nicht allen Google Applikations-Berechtigungen annehmen, sodass wir euch einmal die Top 10 der häufigsten verwendeten Berechtigungen in alphabetischer Reihenfolge vorstellen wollen. Hierfür haben wir aus den Kategorien Android Apps und Android-Spiele des Google Play Store, die Top kostenlosen als auch kostenpflichtigen Apps herausgesucht:
- Genauer Standort (GPS- und netzwerkbasiert)
- Kompletter Netzwerkzugriff
- Netzwerkverbindungen anzeigen
- Ruhezustand deaktivieren
- SD-Karteninhalte ändern oder löschen
- Steuervibration
- Telefonstatus und Identität abrufen
- Ungefährer Standort (netzwerkbasiert)
- USB-Speicherinhalte ändern oder löschen
- Wi-Fi-Verbindungen anzeigen
Was bedeuten die wichtigsten Berechtigungen?
Vor noch nicht all zu langer Zeit, gab es im Google Play Store gleich neben dem „Neue Funktionen Tab“ einen separaten Karteireiter, mit dem Namen „Berechtigungen“. Bis heute ist ungeklärt warum Google im Zuge der Design-Überarbeitungen diesen entfernt hat. Mit etwas Daumen drücken besinnt sich Google vielleicht wieder dieser nützlichen Information im Vorfeld eines Download. Denn durchaus denkbar, dass das kalifornische Unternehmen darin einen Verkaufsvorteil sieht, diese teilweise unverständliche Einräumung bestimmter Rechte für eine Anwendung nicht zu früh preis zu geben.
Trotz alledem kommt es dann spätestens bei der besagten Installation der Applikation unserer Wahl, zu dieser Abfrage.
Google stellt unter jede Berechtigungs-Gruppe (fett geschrieben) die jeweilige(n) geforderte(n) App-Berechtigung(en) des Entwicklers. Drückt man nun auf einer der Berechtigungen/Rechte, so kommt eine kurze Beschreibung dieser.
Diese Abfrage kann man im übrigen auch bei bestehenden Applikationen abfragen. Wie das geht erklären wir ein wenig später.
Hier nun die häufigsten Berechtigungen in alphabetischer Reihenfolge der Berechtigungs-Gruppen (fett), inklusive der von Google zur Verfügung gestellten Beschreibung (kursiv) und wenn nötig, einer jeweiligen Bemerkung durch uns:
Akku/Batterie
* Ruhezustand deaktivieren
Ermöglicht der App, den Ruhezustand des Telefons zu deaktivieren
* Steuervibration/Vibrationsalarm steuern
Ermöglicht der App, den Vibrationsalarm zu steuern bzw. zu erzeugen
Beide Berechtigungen sind als unbedenklich einzustufen.
Anrufe
* Telefonnummern direkt anrufen
Ermöglicht der Anwendung Rufnummern ohne Ihr Zutun zu wählen. Dies kann zu unerwarteten Kosten oder Anrufen führen. Beachten Sie, dass dies der Anwendung nicht erlaubt Notrufnummern zu wählen. Schädliche Anwendungen können Sie Geld kosten, wenn Anrufe ohne Ihre Bestätigung gemacht werden.
* Telefonstatus und Identität abrufen
Ermöglicht der Anwendung auf die Telefonfunktion des Geräts zuzugreifen. Diese Berechtigung ermöglicht es der Anwendung:
- die Telefonnummer und Geräte-IDs zu ermitteln
- festzustellen, ob ein Anruf aktiv ist
- bei einem bestehendem Gespräch die Telefonnummer des Gesprächspartners zu ermitteln.
Diese Berechtigungen sind als bedenklich einzustufen! Überprüft genau ob eure Anwendung diese Berechtigung benötigt. Lest gegebenenfalls den Erfahrungsbericht und die Bewertung der App durch.
Bluetooth
* Auf Bluetooth-Einstellungen zugreifen/öffnen
Ermöglicht der App, das lokale Bluetooth-Telefon zu konfigurieren, Remote-Geräte zu erkennen und eine Verbindung zu diesen herzustellen.
* Pairing mit Bluetooth-Geräten durchführen
Ermöglicht der App, die Bluetooth-Konfiguration des Telefons einzusehen und Verbindungen mit gekoppelten Geräten herzustellen und zu akzeptieren.
Beide Berechtigungen sind als unbedenklich einzustufen.
Hintergrund
* Hintergrund festlegen
Ermöglicht der Anwendung, das Hintergrundbild zu ändern.
Diese Berechtigung ist als unbedenklich einzustufen.
Ihre Informationen
* Lesen von Kontaktdaten
Ermöglicht der App, auf Ihrem Gerät gespeicherte personenbezogene Profildaten zu lesen, einschließlich Ihres Namens und Ihrer Kontaktdaten. Die App kann Sie somit identifizieren und Ihre Profildaten an andere senden.
Diese Berechtigung ist als bedenklich einzustufen! Überprüft genau ob eure Anwendung diese Berechtigung benötigt. Lest gegebenenfalls den Erfahrungsbericht und die Bewertung der App durch.
Ihre Konten
* Google-Servicekonfiguration lesen
Ermöglicht dieser App, Konfigurationsdaten der Google-Dienste zu lesen
* Erstellen Sie Konten und richten Sie Passwörter ein
Ermöglicht einer Anwendung, die Kontoauthentifizierungsfunktionen des Konto-Managers zu verwenden, einschließlich die Funktionen zu Erstellen von Konten und zum Abrufen und Einstellen der entsprechenden Passwörter.
Diese Berechtigung ist als bedenklich einzustufen! Überprüft genau ob eure Anwendung diese Berechtigung benötigt. Lest gegebenenfalls den Erfahrungsbericht und die Bewertung der App durch.
* Hinzufügen oder Entfernen von Konten
Ermöglicht einer Anwendung, Konten hinzuzufügen und zu entfernen oder deren Passwörter zu löschen.
Diese Berechtigung ist als bedenklich einzustufen! Überprüft genau ob eure Anwendung diese Berechtigung benötigt. Lest gegebenenfalls den Erfahrungsbericht und die Bewertung der App durch.
* Konten auf dem Gerät verwenden
Ermöglicht einer Anwendung, Authentifizierungs-Token anzufordern.
Zusätzlich werden zur Sicherheit bei einem erstmaligem Zugriff auf eure Konto-Informationen eine erneute Bestätigung abgefragt.
Ihre Nachrichten
* Empfangen von Textnachrichten (SMS)
Ermöglicht einer Anwendung, SMS zu empfangen und zu verarbeiten. Schädliche Anwendungen können Ihre Nachrichten möglicherweise überwachen oder löschen, bevor sie angezeigt werden.
* Kurznachrichten senden
Ermöglicht einer Anwendung das Senden von SMS-Nachrichten. Bei schädlichen Anwendungen können unerwartete Kosten entstehen, wenn diese Nachrichten ohne Ihre Zustimmung versendet werden.
Diese Berechtigungen sind als bedenklich einzustufen! Überprüft genau ob eure Anwendung diese Berechtigung benötigt. Lest gegebenenfalls den Erfahrungsbericht und die Bewertung der App durch.
Ihr Standort
* Genauer Standort (GPS- und netzwerkbasiert)
Ermöglicht der App, Ihre genaue Position anhand von GPS-Daten (Global Positioning System) oder über Netzwerkstandortquellen wie Sendemasten oder WLAN zu ermitteln. Diese Standortdienste müssen auf Ihrem Gerät verfügbar und aktiviert sein, damit die Applikation sie verwenden kann. Apps können Ihren Standort anhand dieser Daten ermitteln und verbrauchen eventuell zusätzliche Akkuleistung.
Diese Berechtigung ist als unbedenklich einzustufen. Zumindest als Android User, kann aber zu Werbezwecken missbraucht werden.
* Ungefährer Standort (netzwerkbasiert)
Ermöglicht der App, Ihren ungefähren Standort zu ermitteln. Diese Standortangabe stammt von Standortdiensten, die Netzwerkstandortquellen wie etwas Sendemasten oder WLAN verwenden. Diese Standortdienste müssen auf ihrem Gerät verfügbar und aktiviert sein, damit die Applikation sie verwenden kann. Apps können Ihrem ungefähren Standort anhand dieser Daten ermitteln.
Diese Berechtigung ist als unbedenklich einzustufen.
Sollte zusätzlich zu der Berechtigung Ihr Standort auch die Berechtigung Kompletter Netzwerkzugriff gefordert werden, so ist Vorsicht geboten. In dieser Kombination können Bewegungs-Profile von euch erstellt werden.
Netzwerkkommunikation
* Google Play-Rechnungsdienst
Nutzer können mit dieser App Artikel über Google Play kaufen.
* Kompletter Netzwerkzugriff
Ermöglicht der Anwendung, Netzwerk-Sockets zu erstellen und benutzerdefinierte Netzwerkprotokolle zu benutzen. Der Browser und andere Anwendungen stellen Mittel dar, um Daten an das Internet zu senden, so dass diese Genehmigung nicht erforderlich ist, um Daten an das Internet zu senden.
Diese Berechtigung ist als bedenklich einzustufen! Überprüft genau ob eure Anwendung diese Berechtigung benötigt. Lest gegebenenfalls den Erfahrungsbericht und die Bewertung der App durch.
* Netzwerkverbindungen anzeigen
Ermöglicht der Anwendung, Informationen über Netzwerkverbindungen auszulesen, beispielsweise welche Netzwerke existieren und mit welchen das Gerät verbunden ist.
Diese Berechtigung ist als unbedenklich einzustufen.
* Wi-Fi verbinden und trennen
Ermöglicht einer Anwendung, eine Verbindung zu den Wi-Fi Zugangspunkten herzustellen und diese zu trennen oder Änderungen an den konfigurierten Wi-Fi Netzwerken vorzunehmen.
Diese Berechtigung ist als bedenklich einzustufen! Überprüft genau ob eure Anwendung diese Berechtigung benötigt. Lest gegebenenfalls den Erfahrungsbericht und die Bewertung der App durch.
* Wi-Fi-Verbindungen anzeigen
Ermöglicht der Anwendung, Informatonen über Wi-Fi-Netzwerken auszulesen, beispielsweise ob Wi-Fi aktiviert ist und der Name der verbundenen Wi-Fi-Geräte.
Diese Berechtigung ist als unbedenklich einzustufen.
Speicher
* SD-Karteninhalte ändern oder löschen
Ermöglicht der App, auf die SD-Karte zu schreiben und Inhalte zu löschen.
* USB-Speicherinhalte ändern oder löschen
Ermöglicht es einer Applikation, auf das USB-Speichermedium zu schreiben.
Mit diesen Rechten kann die App direkt auf alle Dokumente wie Musik, Fotos oder andere Daten des Speichers zugreifen. Dies in Verbindung mit einem Zugriff auf das Internet (Kompletter Netzwerkzugriff) als bedenklich einzustufen! Leider wird diese Berechtigung auch von vielen Games genutzt um entsprechende Spielstände abzuspeichern, zu überschreiben oder zu löschen.
Sytem-Tools
* Systemeinstellungen ändern
Ermöglicht der Anwendung, die Einstellungsdaten des Systems zu ändern. Schädliche Anwendungen können so die Systemkonfiguration beschädigen.
Diese Berechtigung ist als bedenklich einzustufen! Überprüft genau ob eure Anwendung diese Berechtigung benötigt. Lest gegebenenfalls den Erfahrungsbericht und die Bewertung der App durch.
* Zugriff auf geschützten Speicher testen
Ermöglicht der Anwendung, einer Erlaubnis für USB-Speicher, die auf zukünftigen Geräten verfügbar sein wird, zu testen.
Diese Berechtigung ist als bedenklich einzustufen! Überprüft genau ob eure Anwendung diese Berechtigung benötigt. Lest gegebenenfalls den Erfahrungsbericht und die Bewertung der App durch.
* Verknüpfungen deinstallieren
Ermöglicht der Anwendung das Entfernen von Verknüpfungen ohne Eingriff oder zusätzlicher Abfrage des Benutzers.
Diese Berechtigung ist als unbedenklich einzustufen.
* Verknüpfungen installieren
Ermöglicht der Anwendung das Hinzufügen von Verknüpfungen ohne Eingriff oder zusätzlicher Abfrage des Benutzers.
Diese Berechtigung ist als unbedenklich einzustufen, ist sogar als Standardeinstellung im Google Play Store vorgesehen (Einstellungen/Widgets automatisch hinzufügen).
Wo stehen die Berechtigungen bei installierten Apps?
Selbstverständlich räumt Google bei dem mobilen Betriebssystem Android dem Anwender die Möglichkeit ein, auch im nach hinein, also in sofern schon ein Spiel, Widget oder App installiert ist, diese akzeptierten Berechtigungen/Rechte einzusehen.
Dazu gehen wir aus dem Homescreen in die „Systemeinstellungen“. Dort suchen wir uns unter der Kategorie „Telefon“ den Begriff „Apps“ oder „Anwendungen“. Hier befinden sich nun unter dem Karteireiter „HERUNTERGELADEN“ alle durch uns installierten Applikationen und Widgets. Wenn wir nun ein weiteres mal auf die uns interessierte App drücken, sehen wir alle damit in Verbindung stehenden Informationen inklusive der von uns gesuchten App-Berechtigungen/Rechte ganz am Ende der Liste. Je nach Versionsnummer des Betriebssystem kann man nun hier wieder die Berechtigungs-Gruppen in Form eines Icons oder in Schrift sehen mit der/den jeweilige(n) geforderte(n) App-Berechtigung(en). Aktuelle Versionen von Android zeigen auf einen weiteren Druck der jeweiligen App-Berechtigung auch noch eine Zusatz-Erklärung an. Sollte das bei euch nicht der Fall sein so besteht kein Grund zur Sorge, ihr habt einfach noch eine „ältere“ Android Version.
Berechtigungs-Manager
HUAWEI hat beispielsweise für seine aktuellen Modelle wie dem HUAWEI Ascend Mate und dem Ascend P6 einen sogenannten Berechtigungs-Manager eingeführt. Dieser kontrolliert permanent alle Applikationen auf ungewöhnliche Dinge wie beispielsweise Push-Nachrichten, Internetzugriff oder Zugriff auf private Kontaktdaten, blockt diese und fragt vorab in der Benachrichtigungsleiste ab ob diese genehmigt werden können.
Nun müsst ihr euch nicht extra ein HUAWEI Smartphone zulegen, obwohl das schon ein überragendes Verkaufsargument ist, um auf diesen Service zurückgreifen zu können. Nein, selbstverständlich hat auch der Google Play Store für solche Fälle eine App:
Meine Berechtigung fehlt!
Aufgrund der Menge und dem Fakt das ständig Berechtigungen dazu kommen, konnten wir hier natürlich nur auf die wichtigsten Google App-Berechtigungen eingehen. Wenn euch Berechtigungen über den Weg laufen, bei denen ihr euch unsicher seit oder nicht wisst welche Bedeutung sie haben beziehungsweise was sie anstellen können, dann schreibt sie uns doch bitte in die Kommentare und wir werden diesen Beitrag ständig entsprechend aktualisieren.
Fazit App-Berechtigungen
Im allgemeinen kann man davon ausgehen das es aufgrund der Google Play Erfahrungsberichte, recht schnell die Runde macht wenn sogenannte „Schwarze Schafe“ ihr Unwesen treiben. Solche, die Applikationen und deren Berechtigungen dazu ausnutzen um beispielsweise an eure privaten Dokumente wie E-Mails, SMS, Fotos und ähnliches zu gelangen, würden über kurz oder lang dort niedergeschrieben werden und sich negativ in den Bewertungen bemerkbar machen.
Obwohl Google stichprobenartig immer wieder Applikationen vor der Veröffentlichung prüft, ist es eine Philosophie des kalifornischen Unternehmens, das die Anwender sich gegenseitig kontrollieren.
Unter dem Strich gilt unser Tipp immer die Berechtigungen vor der Installation durchzulesen. Macht eine Berechtigung im Zusammenhang der Software keinen Sinn, so lest euch aufmerksam die Erfahrungsberichte und Bewertungen der App durch. Ist diese so neu das es noch keine oder nur wenige Informationen gibt, dann lieber die Finger weg und abwarten. Entweder gibt es eine App die im Grunde das Gleiche kann oder man schaut in ein paar Tagen noch einmal vorbei und kontrolliert erneut die Erfahrungsberichte.
Bereits veröffentlichte Beiträge:
- Übersicht
- Teil 1: Was ist anDROID überhaupt?
- Teil 2: Was ist eine Benutzeroberfläche?
- Teil 3: Was kann ich gegen starken Akkuverbrauch tun?
- Teil 4: Was sind Apps und wo bekomme ich sie her?
- Teil 5: Wie richte ich mir meinen Homescreen ein?
- Teil 9: Was ist ein Custom ROM [1]
In Kürze folgende Beiträge:
- Teil 6: Datensicherung
- Teil 7: Datenaustausch über BT, WLAN und USB
- Teil 8: Welches ist das richtige anDROID Smartphone für mich?
Wie sieht es mit euch aus: Gibt es noch Themenbereiche die wir völlig vergessen haben und über die dringend aufgeklärt werden muss?
Dann ab in die Kommentare damit!
Super Beitrag und nicht nur für Anfänger empfehlenswert. Drücke leider auch immer die Abfrage ungelesen weg. Da sollte man sich später nicht beschweren.
Schöner Artikel, auch wenn ich nicht immer mit Eurer Bewertung „einverstanden“ bin:
* Accounts: Bei erstmaligem Zugriff auf Konto-Informationen muss der Anwender selbigen bestätigen, daher eher relativ zu sehen.
* Standort: Für sich genommen zwar unbedenklich, zusammen mit Internet allerdings riskant: So können Bewegungs-Profile erstellt werden, wenn der Standort immer unauffällig im Hintergrund auf einen „fremden Server“ übertragen wird.
* WiFi trennen/verbinden: Da dies auch Änderungen an der Konfiguration beinhaltet, könnte eine böswillige App hier einen beliebigen Zugang konfigurieren (Stichwort: Sicherheit in offenen Netzen). Als „völlig unbedenklich“ kann man das also eher nicht bezeichnen.
* Speicher: Lesender Zugriff auf die SD-Karte ist auch ohne diese Berechtigung möglich, sodass das dargestellte Szenario auch ohne selbige möglich wäre.
Vielleicht mögt Ihr das ja noch anpassen?
Na klar!
Wenn es von einem so berühmten Android Buch Autoren kommt 😉 gerne!
Gruß
MaTT
Post scriptum: Passiert aber erst morgen im Laufe des Tages 😉
Ooops, ich bin enttarnt… Danke Dir, MaTT!
Spoiler: Der Artikel wird in der nächsten Ausgabe vom „Anwender-Handbuch“ verlinkt sein (in der nächsten Druck-Version dann natürlich per QR-Code). Schön auch, dass die anderen Teile der Reihe immer gleich mit verlinkt sind: So findet jeder das für sich wichtige auf Anhieb. Thumbs up! 🙂
Deine Anmerkung zu dem Speicher verstehe ich nicht. Man benötigt also keine Berechtigung um auf der SD-Card zu lesen? (Rest wurde angepasst, thx)
Gruß
MaTT
Soweit mir bekannt, (derzeit noch) nicht. Die SD-Karte wird ja „ohne Rechteverwaltung“ eingebunden – es gibt hier also nicht einmal „Eigentümer“. Eine Änderung ist wohl für zukünftige Versionen geplant (siehe entsprechende Permission in der Gruppe „Development“).
Da ich kein Entwickler bin, konnte ich das bislang nicht verifizieren; wenn Du die Möglichkeit dazu hast, und es probieren/verifizieren kannst (eine App zum Zugriff auf SD-Karte ohne diese Berechtigung zu nutzen), freue ich mich natürlich auf Feedback! Ich versuche das parallel auch einmal, über Entwickler aus meinem Bekanntenkreis bestätigen zu lassen. Du hast ganz Recht, das so ganz ohne „verlässliche Quelle“ nicht zum Fakt zu erklären 🙂
http://developer.android.com/about/versions/android-4.1.html#Permissions
„READ_EXTERNAL_STORAGE
Provides protected read access to external storage. In Android 4.1 by default all applications still have read access. This will be changed in a future release to require that applications explicitly request read access using this permission.“
Das sollte auch die letzte Frage nun beantworten: Zumindest bis einschließlich Android 4.1 benötigt eine App keine explizite Berechtigung um auf der SD-Card zu lesen. Bis zu 4.3 scheint das nach wie vor zu gelten (auf den entsprechenden Seiten sind die Permissions leider nicht aufgeführt); für 4.4 konnte ich es noch nicht verifizieren.