From: cpebenito@tresys.com (Christopher J. PeBenito)
To: refpolicy@oss.tresys.com
Subject: [refpolicy] Status and discussion about rbacsep
Date: Fri, 12 Aug 2011 08:42:05 -0400 [thread overview]
Message-ID: <4E451F9D.1060807@tresys.com> (raw)
In-Reply-To: <SNT139-W26982C3057CA9DCE774F8FAB220@phx.gbl>
On 08/11/11 03:03, HarryCiao wrote:
> Hi Chris,
>
> These days I read through your discussions about rbacsep way back to
> 2008. At that time you'd pointed out a todo list for full rbac
> separation support:
>
> 1. Kernel's recognition of role_transition rule for non process classes;
>
> 2. Role attribute support as in below rbacsep constrain:
>
> constrain { dir file ... } { getattr read write .... }
> r1 == r2
> or r1 == system_r
> or r2 == object_r
> or r1 == rbac_subj_role_file_exempt
> or r2 == rbac_obj_role_file_exempt
> or t1 == rbac_subj_type_file_exempt
> or t2 == rbac_obj_type_file_exempt;
>
> 3. Add a new "role_change" rule and modify login/newrole program to
> change controlling terminal's role according to that of user;
>
> 4. Add a new "role_member" rule for polyinstantiation support;
>
> 5. genhomedircon updated for role;
> *6. Move the policy to initialize newcontext from security_compute_sid()
> in kernel up to refpolicy, by introducing new rules such as(suggested by
> Stephen, not directly related with rbacsep):
>
> role_default {process socket ...} fromsource;
> type_default {process socket ...} fromsource;
> role_default {file dir ...} fromtarget;
> type_default {file dir ...} fromtarget;
I don't remember this one.
> Here are my comments and questions:
>
> As for 1, it has been done since we have added the class support to the
> role_transition rule. Refpolicy could have whatever needed rules added
> to transition the role of files/dirs from object_r;
>
> As for 2, it has been done too since we have added the role attribute
> support;
>
> As for 3 & 4, it won't be difficult for us to add these two new rules,
> but I have not understand clear yet the influence and meanings of the
> role_change rule, could you explain it a bit more?
Well we've had role_change rules since the ancient times. Its purpose
is to inform userspace apps how to relabel a user's terminal when they
change roles.
> Also it seems that you had branched refpolicy to provide the rbac sep
> constrain and collapse per-role templates such as xxx_sudo_t to
> sudo_t(where can I get it?) but further run into type_transition
> conflicts when sudo_t needs to transition back to user's domain:
>
> type_transition sudo_t shell_exec_t:process auditadm_t;
> type_transition sudo_t shell_exec_t:process secadm_t;
> type_transition sudo_t shell_exec_t:process staff_t;
> type_transition sudo_t shell_exec_t:process sysadm_t;
> type_transition sudo_t shell_exec_t:process user_t;
>
> You've mentioned since we can't make sudo application SELinux-aware due
> to their vast differences, we would have to fall back on the per-role
> template of xxx_sudo_t. (Actually this is the end of your rbacsep
> effort, right?)
Correct, thats where we stopped.
> Would it be possible to tackle such condition by introducing a new
> "type_transition_osid" rule? For example,
>
> type_transition_osid sudo_t shell_exec_t : process;
>
> And in security_compute_sid(), for AVTAB_TRANSITION rules we would
> search for type_transition_osid rules aside from type_transition rules
> for the process class. If a matching type_transition_osid rule is found,
> then newcontext->type would be set to the type from tsec->osid.
>
> If it makes sense, then what else works may have been required aside
> from it and the above todo list for full rbacsep support?
We don't need to add anything special; we have the same problem with
ubacsep, and solved it by retaining the per-role domains, eg. user_su_t,
sysadm_sudo_t, etc.
When we restart, it don't think it will be nearly as much work, since
all of the collapsing was done for ubacsep.
--
Chris PeBenito
Tresys Technology, LLC
www.tresys.com | oss.tresys.com
next prev parent reply other threads:[~2011-08-12 12:42 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-07-26 18:44 ANN: Reference Policy Release Christopher J. PeBenito
2011-07-26 18:44 ` [refpolicy] " Christopher J. PeBenito
2011-07-26 19:07 ` [refpolicy] new runtime udev directory tree (was Re: ANN: Reference Policy Release) Guido Trentalancia
2011-07-27 19:47 ` Martin Orr
2011-07-28 15:02 ` Guido Trentalancia
2011-07-28 15:42 ` Christopher J. PeBenito
2011-08-11 7:03 ` [refpolicy] Status and discussion about rbacsep HarryCiao
2011-08-12 12:42 ` Christopher J. PeBenito [this message]
2011-08-12 14:00 ` Christopher J. PeBenito
2011-08-13 8:39 ` HarryCiao
2011-08-16 17:43 ` Christopher J. PeBenito
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E451F9D.1060807@tresys.com \
--to=cpebenito@tresys.com \
--cc=refpolicy@oss.tresys.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.