[root]-App: Permissions Denied - Berechtigungen unterbinden leicht gemacht!

  • Antworten:5
Roon
  • Forum-Beiträge: 193

31.05.2011, 11:30:32 via Website

Hinweis: Die App benötigt root-Rechte.

Permissions Denied dient dazu jedwede Berechtigungen der installierten Apps zu kontrollieren.
Dabei werden alle heruntergeladenen Apps gelistet und deren Berechtigungen angezeigt.
Die App ist in der Lage einzelnen Programmen z.B. die Standortsendung zu untersagen.

Zu jeder Berechtigung liefert die App detaillierte Erklärungen und deaktiviert sie per "klick".

Im Menü unter dem Punkt Advanced Options, Master Control besteht zudem die Möglichkeit, eine Berechtigung für alle Applikationen zu sperren - z.B. den Internetzugang - ob dieser Punkt sinnvoll ist, sei mal dahingestellt...


Damit Änderungen wirksam werden, muss das System neu booten. Dies geht direkt über das Programm.

Weitere Funktionen sind: Backup (sinnvoll vor jeder Änderung!), Restore all Permissions und Fix Permissions.


Fazit:
Genau so ein Programm hab ich lange gesucht und endlich gefunden. Endlich kann ich bei Anwendungen, bei denen ich z.B. die Sinnhaftigkeit der Standorterkennung stark anzweifle, gezielt diese Permission unterbinden :)



Anmerkungen bzw. Hinweise:
Permission Denied ist nicht mit jedem Smartphone / jeder Custom Rom funktionabel.
Das Blockieren von Berechtigungen kann je nach App und Programmierung auch zum Absturz der betroffenen App führen.

Bugs:
Manchmal sorgt das Nutzen der Zurück-Taste dafür, dass man auf dem Homescreen statt dem vorherigen Menü landet.

— geändert am 31.05.2011, 11:47:45

Antworten
Izzy
  • Forum-Beiträge: 6.929

31.05.2011, 13:32:10 via Website

Die App habe ich ja auch bereits in meiner Übersicht genannt. Da Du sie bereits im Einsatz hast, kurze Frage:

Änderungen werden ja erst nach einem Reboot wirksam. Bleiben sie anschließend (auch über mehrere Neustarts hinweg) wirksam, oder muss man sie immer erst wieder neu aktivieren?

Wenn ich den Hintergrund für den benötigten Neustart richtig geraten habe, müssten sie eigentlich bestehen bleiben -- bis man sie erneut ändert. Aber ich frage halt lieber nochmal nach...

Antworten
Roon
  • Forum-Beiträge: 193

31.05.2011, 15:34:20 via Website

Glatt übersehen, bin mehr oder weniger zufällig drüber gestolpert ^^

Kannst den Thread übrigens auch gerne in deine Übersicht einschmelzen :)

Liegst mit deiner Vermutung richtig, die Änderungen bleiben erhalten, auch nach mehreren Neustarts.

Antworten
Roon
  • Forum-Beiträge: 193

31.05.2011, 18:35:59 via Website

Es wird beim booten gestartet und unterbindet sie dann? Teile deine Gedanken ;)

Antworten
Izzy
  • Forum-Beiträge: 6.929

01.06.2011, 13:02:16 via Website

Fast richtig -- nur ist es nicht die App, die beim Booten gestartet wird, sondern ein Service, der nur dann die gesamten Permissions einmalig ausliest.

Das mit den Permissions im Standard-System läuft im Prinzip so: Da gibt es eine Datei im System (nennen wir sie mal permissions.xml), wo die ganzen Permissions für jede App verzeichnet sind. Beim Booten startet der für die Permissions zuständige Service, liest diese Datei aus, und "cacht" die relevanten Daten. Er liest sie also nur beim Booten -- deswegen greift hier auch das "Windows-Prinzip": "Sie haben die Maus bewegt, bitte starten Sie den Rechner neu, damit die Änderungen wirksam werden"...

Installierst Du eine neue App, bekommt dieser Service das auch mit (vermutlich hat er einen "Intent"/"Listener" auf das Ereignis "Install" am Laufen, und wird so vom System entsprechend benachrichtigt), und ergänzt seinen Cache dann um die entsprechenden Daten (aus dem Manifest der gerade installierten App, denke ich). Also wird auch dabei die permissions.xml nicht neu gelesen. Eine Änderung an selbiger greift also erst nach einem Neustart -- und es gibt auch keine (offizielle) API, um dem Service entsprechende Änderungen mitzuteilen...

Das nur so ganz grob -- genauer habe ich mir das noch nicht angeschaut, bin halt selbst kein Entwickler...

Antworten