<html dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" id="owaParaStyle"></style>
</head>
<body fpstyle="1" ocsi="0">
<div style="direction: ltr;font-family: Tahoma;color: #000000;font-size: 10pt;">(replying on list)
<div><br>
</div>
<div>RBAC policy enforce is already implemented on consuming services and default policies are provided by policy.json files (e.g. <a href="https://github.com/openstack/nova/blob/master/etc/nova/policy.json" target="_blank">https://github.com/openstack/nova/blob/master/etc/nova/policy.json</a> ).</div>
<div><br>
</div>
<div>We haven't yet implemented a method for services to consume policy blobs from Identity API v3, /v3/policies (which itself is still in development), rather than loading policy.json files.</div>
<div><br>
</div>
<div>For an example of scoping RBAC per project, see the admin_or_owner rule in nova's policy.json above.</div>
<div><br>
</div>
<div>As for the efficiency of policy storage, I'm not clear on what your concerns are?</div>
<div>
<div><br>
<div class="BodyFragment"><font size="2"><span style="font-size:10pt;">
<div class="PlainText">-Dolph</div>
</span></font></div>
</div>
<div style="font-family: Times New Roman; color: #000000; font-size: 16px">
<hr tabindex="-1">
<div id="divRpF264616" style="direction: ltr; "><font face="Tahoma" size="2" color="#000000"><b>From:</b> MS. Faraji [ms.faraji@utoronto.ca]<br>
<b>Sent:</b> Wednesday, October 03, 2012 1:34 PM<br>
<b>To:</b> Dolph Mathews<br>
<b>Subject:</b> Question about Keystone RBAC<br>
</font><br>
</div>
<div></div>
<div>
<div dir="ltr">Hi,<br>
<br>
I sent an email to inquire about RBAC implementation in Keystone before, and you generously shared your information. However, there are a couple of questions that I have in mind.<br>
I searched the Internet and documents; however, I did not find useful information about them. I hope you can help me to find it out.<br>
<br>
1) Consider the enforce API is implemented, which side should use it? Service or Keystone itself. If Keystone uses this function, how does it know about the action that a user<br>
wants to perform on a resource. If service call it as an API, what is the endpoint? How services use authorization in Keystone?<br>
<br>
2) Can roles and associated actions be defined in the scope of project or domain? For example demo can do release in project 1 but not in project 2.<br>
<br>
3) Is the plain storage of capabilities ( no data structure) efficient? In terms of required storage space and later lookups.<br>
<br>
Thanks in advance for your help and assistance,<br>
I look forward to your response.<br>
<br>
<br>
Moh,<br>
<br>
</div>
</div>
</div>
<div class="vimiumReset vimiumHUD" style="right: 150px; opacity: 0; display: none; ">
</div>
<div class="vimiumReset vimiumHUD" style="right: 150px; opacity: 0; display: none; ">
</div>
</div>
</div>
<script type="text/javascript">var new_nav = new function() {};var x;for (x in navigator) {eval("new_nav." + x + " = navigator." + x + ";");}new_nav.userAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120427 Firefox/15.0a1";new_nav.vendor = "Mozilla, Inc.";window.navigator = new_nav;</script><script type="text/javascript">var new_nav = new function() {};var x;for (x in navigator) {eval("new_nav." + x + " = navigator." + x + ";");}new_nav.userAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120427 Firefox/15.0a1";new_nav.vendor = "Mozilla, Inc.";window.navigator = new_nav;</script><link rel="stylesheet" type="text/css" href="data:text/css,">
</body>
</html>