Android-Berechtigungen

Android-Berechtigungen bieten Steuerelemente, die das Bewusstsein der Benutzer erhöhen und den Zugriff einer App auf sensible Daten einschränken. Konfigurieren von Berechtigungen für Android 8.0 und umfasst die untere weiße Liste, ohne die privilegierte Anwendungen deaktiviert sind, auch wenn sie in der sind priv-app - Pfad. Unter Android 9 und höher startet ein Gerät, das versucht, Apps zu verwenden, die nicht ordnungsgemäß auf der Whitelist stehen, nicht.

Der erhöhten Schutz vor potenziell schädlichen Apps (PHAs) verbessern

  • Transparenz über potenziell schädliches App-Verhalten.
  • Benutzerkontrolle über das App-Verhalten.
  • Ermessen der App-Entwickler bei der Verwendung privater Daten, geschützt durch Berechtigungen.

Paketinstallation und -berechtigung

In Android 9 und niedriger, installieren Sie das Paket und die Erlaubnis Steuerungsfunktionalitäten wurden in dem enthaltenen PackageInstaller Paket ( //packages/apps/PackageInstaller ). In Android 10 und höher, die Erlaubnis Steuerungsfunktionalität befindet sich in einem separaten Paket, PermissionController ( //packages/apps/PermissionController ). Abbildung 1 veranschaulicht , wo die beiden Pakete im Android 10.

Trennung von Paketinstallations- und Berechtigungskontrollfunktionen für System-Apps und wie sie von benutzerinstallierten Apps verwendet werden
Abbildung 1. Paket installieren und permission-Control - Funktionalitäten in Android 10

Whitelists und Zugriff

In Android 6.0 und höher, apps Anfrage Zugang zu gefährlichen Berechtigungen auf Laufzeit . Android 10 fügt Laufzeitberechtigungen für die Aktivitätserkennung (AR) hinzu, die den Benutzer auffordern, gefährliche Berechtigungen zu ändern oder zuzulassen.

Android 8.0 erforderlich Sie explizit weiße Liste privilegierter Anwendungen in der Systemkonfiguration von XML - Dateien in der Datei /etc/permissions - Verzeichnis. In Android 9 und höher, müssen privilegierten Berechtigungen der weißen Liste oder das Gerät nicht booten kann.

Zur Begrenzung interne API Sichtbarkeit und verhindert , dass Anwendungen versehentlich Zugriff auf Plattform - Bibliotheken, Android 7.0 eingeführt Namespaces für Native Bibliotheken . Dadurch werden Systembibliotheken von Anwendungsbibliotheken getrennt, und Gerätehersteller können ihre eigenen nativen Bibliotheken hinzufügen.

Ab Android 10 Apps muß beid Signatur - Berechtigungen und Benutzer Zustimmung muß ein Gerät Bildschirminhalt zugreifen . Privilegierte Anwendungen , die auf der stillen Capture - Funktionalität angewiesen ist , wie zum Beispiel eines Screenshot nehmen, sollen Sie die Verwendung MediaProjection statt Klasse.

Transparenz und Datenschutz

In Android 6.0 und höher ist eine werkseitige MAC-Adresse des Geräts vor dem Zugriff durch Wi-Fi-Dienstanbieter und Paketanalysatoren geschützt. Zusätzliche Einschränkungen von Android 10 Limit - Anwendungen den Zugriff auf die unveränderliche Gerätekennungen (IDs) , es sei denn sie sind für privilegierte Berechtigungen der weißen Liste . (Der Connectivity Abschnitt enthält eine damit verbundene Diskussion über Gerätekennungen , da dies Auswirkungen Träger.)

Unter Android 9 und niedriger treffen Benutzer dauerhafte Entscheidungen, wenn sie den Standortzugriff auf Apps gewähren. Ab Android 10, ein Tri - State - Standort Berechtigungen gibt Feature Benutzer drei Optionen App Zugriff auf ein Gerät Standort zu ermöglichen. Diese Berechtigungsanforderungen werden unabhängig vom Ziel-SDK auf Apps in Android 10 angewendet.

Konfigurieren Sie Berechtigungen für andere Transparenz- und Datenschutzfunktionen ab Android 10

Optimierte Konfigurationen

Die Berechtigungskonfigurationen wurden für Android 6.0 und höher optimiert.

  • Ambient - init .rc Funktionen für Dienste gestartet init halten alle Aspekte der Service - Konfiguration in einer einzigen .rc - Datei. Wenn Funktionen für die Dienste nicht gestartet , indem Sie init , configure Fähigkeiten Dateisystem fs_config.c statt.
  • Android 7.x und senken Sie die Android - IDs (AID) Mechanismus erstrecken, eine gerätespezifische Verwendung android_filesystem_config.h Datei Dateisystem - Funktionen und / oder benutzerdefinierte Gerätehersteller AID angeben. Android 8.0 und höher unterstützt eine neue Methode Dateisystem - Funktionen zu erweitern .
  • In Android 8.0, bewegt Handhabung USB Befehle von gerätespezifischen init Skripte (eine Substitution für die HAL - Schichten) und in ein natives USB - Dämon. Die USB - HAL - Schnittstelle muss auf jedem Gerät Start auf Android 8.0 und höher implementiert werden.