cryfs, roles: use user exec domain attribute

Signed-off-by: Kenton Groombridge <me@concord.sh>
This commit is contained in:
Kenton Groombridge 2021-08-08 12:54:41 -04:00
parent efd8b75386
commit b591857dcd
2 changed files with 24 additions and 9 deletions

View File

@ -4,18 +4,29 @@
## <summary> ## <summary>
## Role access for CryFS. ## Role access for CryFS.
## </summary> ## </summary>
## <param name="role"> ## <param name="role_prefix">
## <summary> ## <summary>
## Role allowed access. ## The prefix of the user role (e.g., user
## is the prefix for user_r).
## </summary> ## </summary>
## </param> ## </param>
## <param name="domain"> ## <param name="user_domain">
## <summary> ## <summary>
## User domain for the role. ## User domain for the role.
## </summary> ## </summary>
## </param> ## </param>
## <param name="user_exec_domain">
## <summary>
## User exec domain for execute and transition access.
## </summary>
## </param>
## <param name="role">
## <summary>
## Role allowed access
## </summary>
## </param>
# #
interface(`cryfs_role',` template(`cryfs_role',`
gen_require(` gen_require(`
attribute_role cryfs_roles; attribute_role cryfs_roles;
type cryfs_t, cryfs_exec_t; type cryfs_t, cryfs_exec_t;
@ -26,15 +37,19 @@ interface(`cryfs_role',`
# Declarations # Declarations
# #
roleattribute $1 cryfs_roles; roleattribute $4 cryfs_roles;
######################################## ########################################
# #
# Policy # Policy
# #
domtrans_pattern($2, cryfs_exec_t, cryfs_t) domtrans_pattern($3, cryfs_exec_t, cryfs_t)
allow $2 cryfs_t:process signal_perms; allow $3 cryfs_t:process signal_perms;
ps_process_pattern($2, cryfs_t) ps_process_pattern($3, cryfs_t)
optional_policy(`
systemd_user_app_status($1, cryfs_t)
')
') ')

View File

@ -1226,7 +1226,7 @@ ifndef(`distro_redhat',`
') ')
optional_policy(` optional_policy(`
cryfs_role(sysadm_r, sysadm_t) cryfs_role(sysadm, sysadm_t, sysadm_application_exec_domain, sysadm_r)
') ')
optional_policy(` optional_policy(`