Commit Graph

3 Commits

Author SHA1 Message Date
Hai Zhang
b295ac4793 Fix role granting flow.
This change fixes various issues realted to the role granting
flow, including allowing permission controller to be granted
SET_PREFERRED_APPLICATIONS for roles, granting
MANAGE_ROLE_HOLDERS permission to shell, and improving
RoleUserState XML parsing.

Bug: 110557011
Test: build
Change-Id: Ia095580ad497af9cf7b29e6bedab70046b09d542
2018-11-20 01:09:33 +00:00
Eugene Susla
a4200f82ed Groundwork for default grants in RoleController
This lays out some plumbing for moving the DfaultPermissionGrantPolicy grants
over to RoleControllerService

Test: enable DEBUG flag and `adb logcat | grep -n5 Role`
Change-Id: Ib0a15b7c839aeccb8848423ddaec38103808bdd6
2018-11-14 16:37:27 -08:00
Hai Zhang
b777668584 Add RoleManager into the system.
A role is a unique name within the system associated with certain
privileges. There can be multiple applications qualifying for a role,
but only a subset of them can become role holders. To qualify for a
role, an application must meet certain requirements, including
defining certain components in its manifest. Then the application will
need user consent to become the role holder.

Upon becoming a role holder, the application may be granted certain
privileges that are role specific. When an application loses its role,
these privileges will also be revoked.

Bug: 110557011
Test: build
Change-Id: Icd453a3b032857a8fd157048de8b9609f04e28b8
2018-10-27 11:14:32 -07:00