The refactoring in S unintendedly introduced a change that allowed
signature|privileged to be granted to platform-signed privileged apps
without being in the allowlist XML, so we should revert to the old
behavior.
The refactoring was done in the hope that we can have one step that
handles privileged permission granting. However upon retrospection, we
have to do this in two separate steps because the privapp permission
allowlist should always be enforced first.
This change reverts to the old behavior by looking at both the current
code and the R source code, then extracts the privapp permission
enforcement as a separate step that happens first, to be used by both
signature and the new internal permission protection.
Also simplified the check about privileged permission, because vendor
privileged permission is always a privileged permission, as made sure
in PermissionInfo.fixProtectionLevel().
In the mean time, added the missing privapp permission allowlist entry
for Settings and RESTART_WIFI_SUBSYSTEM for device to boot.
Fixes: 179309876
Test: manual
Change-Id: I93cfe7a4621fc5ac65229d42c7a8ebd825ae8ae5
Settings application needs the previleged permission to
get AoD supression status by using PowerManager API
Bug: 173425264
Change-Id: I5da006b7c88dc36d3eefebc559f2a2f3ab50823f
Test: Manual & bootup device
- READ_COMPAT_CHANGE_CONFIG is required to read the current state of the
config
- LOG_COMPAT_CHANGE is required to log the status of a compat change for
a package and/or uid to statsd
- OVERRIDE_COMPAT_CHANGE_CONFIG is required to add overrides
The permissions must be signature|privileged, as there are already
examples of code which this would not be sufficient (e.g.
MediaProvider).
This is a re-landing of https://r.android.com/1209240, which was
reverted due to http://b/142942524. The actual fix was done in
http://ag/10234812.
Bug: 142650523
Test: atest PlatformCompatTest
Test: atest PlatformCompatPermissionsTest
Change-Id: Ie9429477c9a1725b5cb67756787bf742038e5d2b
After adding MANAGE_EXTERNAL_STORAGE permission to several apps on the
system partition, we should whitelist them
Test: m
Bug: 144914977
Change-Id: Ia4401904e23193b8628071d6a2a6d789faf0ece5
This adds new permissions required when setting the time /zone in
response to telephony signals and when setting the time / zone manually
along the lines of "principle of least privilege".
The intent is to later restrict the number of distinct processes that
can manipulate the device system clock / time zone property directly so
that all time changes go through the time / time zone detector services,
which can enforce policy, log the reasons for changes, and so on.
Bug: 140712361
Test: atest com.android.server.timedetector
Change-Id: Iabd3a5f449ad2ef2b6581475ef2535a4a8a88ef9
Settings application needs the previleged permission to retrieve UICC
card information by using Telephony Manager API.
Bug: 141256483
Test: Manual and SimStatusDialogControllerTest
Change-Id: I33d3bb1947d828e283ee62b7cd0936b8baf73acb
This reverts commit 82f37f83a8.
Reason for revert: Wifi services no longer plan to be a separate
APK/process for mainline. Will instead become a jar loaded from Apex.
Bug: 145114247
Change-Id: I993dd4d35cc280afe6dc044fa1dee0ea268f9bca
The wifi stack (signed by Google on non-Pixel devices) need to obtain this permission,
so it can no longer be signature only.
Bug: 113174748
Test: Compiles
Change-Id: Id9557a6d164a40698ee7d1e5926e56fd616868d0
This makes it possible to move the permission around separately
from all the other permissions. This permission file is included
automatically when the respective app is included.
Bug: 110072687
Test: make
Change-Id: I91b30561d4a4000334ffbf3b98bb632d962f4b97