<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Thu, Nov 21, 2013 at 12:37 PM, Sylvain Bauza <span dir="ltr"><<a href="mailto:sylvain.bauza@bull.net" target="_blank">sylvain.bauza@bull.net</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF">
<div>Hi Yuriy, Dolph et al.<br>
<br>
I'm implementing a climate.policy.check_is_admin(ctx) which will
look at policy.json entry 'context_is_admin' for knowing which
roles do have elevated rights for Climate.<br>
<br>
This check must be called when creating a context for knowing if
we can allow extra rights. The is_admin flag is pretty handsome
because it can be triggered upon that check.<br>
<br>
If we say that one is bad, how should we manage that ?<br>
<br>
-Sylvain<br></div></div></blockquote><div><br></div><div>There should be no need for is_admin and some special policy rule like "context_is_admin". </div><div>Every action that might require granular access control (for controllers it should be every action at all, I guess) should call enforce() from openstack.common.policy to check appropriate rule in policy.json.</div>
<div>Rules for actions that require user to be admin should contain a reference to some basic rule like "admin_required" in Keystone (see <a href="https://github.com/openstack/keystone/blob/master/etc/policy.json">https://github.com/openstack/keystone/blob/master/etc/policy.json</a>).</div>
<div><br></div><div>We should not check from code if the user is an admin. We should always ask openstack.common.policy if the user have access to the action.</div></div><div><br></div>-- <br><br><div>Kind regards, Yuriy.</div>
</div></div>