diff --git a/policy/modules/apps/rssh.if b/policy/modules/apps/rssh.if index 6ecadcbc1..1b2c22f1c 100644 --- a/policy/modules/apps/rssh.if +++ b/policy/modules/apps/rssh.if @@ -4,25 +4,36 @@ ## ## Role access for rssh. ## -## +## ## -## Role allowed access. +## The prefix of the user role (e.g., user +## is the prefix for user_r). ## ## -## +## ## ## User domain for the role. ## ## +## +## +## User exec domain for execute and transition access. +## +## +## +## +## Role allowed access +## +## # -interface(`rssh_role',` +template(`rssh_role',` gen_require(` attribute_role rssh_roles; type rssh_t, rssh_exec_t, rssh_ro_t; type rssh_rw_t; ') - roleattribute $1 rssh_roles; + roleattribute $4 rssh_roles; domtrans_pattern($2, rssh_exec_t, rssh_t) diff --git a/policy/modules/roles/staff.te b/policy/modules/roles/staff.te index 834a33ee5..685f183d1 100644 --- a/policy/modules/roles/staff.te +++ b/policy/modules/roles/staff.te @@ -163,7 +163,7 @@ ifndef(`distro_redhat',` ') optional_policy(` - rssh_role(staff_r, staff_t) + rssh_role(staff, staff_t, staff_application_exec_domain, staff_r) ') optional_policy(` diff --git a/policy/modules/roles/sysadm.te b/policy/modules/roles/sysadm.te index ae3048301..b0cc530fe 100644 --- a/policy/modules/roles/sysadm.te +++ b/policy/modules/roles/sysadm.te @@ -885,7 +885,7 @@ optional_policy(` ') optional_policy(` - rssh_role(sysadm_r, sysadm_t) + rssh_role(sysadm, sysadm_t, sysadm_application_exec_domain, sysadm_r) ') optional_policy(` diff --git a/policy/modules/roles/unprivuser.te b/policy/modules/roles/unprivuser.te index 532f10ecc..07c7d71a6 100644 --- a/policy/modules/roles/unprivuser.te +++ b/policy/modules/roles/unprivuser.te @@ -135,7 +135,7 @@ ifndef(`distro_redhat',` ') optional_policy(` - rssh_role(user_r, user_t) + rssh_role(user, user_t, user_application_exec_domain, user_r) ') optional_policy(`