<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body>
Can a non admin update quotas? Quota updates are rare. Performance of them can take the hit.<br>
<br>
Thanks,<br>
Kevin <strong>
<div><font face="Tahoma" color="#000000" size="2"> </font></div>
</strong>
<hr tabindex="-1">
<font face="Tahoma" size="2"><b>From:</b> Kevin Benton<br>
<b>Sent:</b> Wednesday, July 29, 2015 10:44:49 PM<br>
<b>To:</b> OpenStack Development Mailing List (not for usage questions)<br>
<b>Subject:</b> Re: [openstack-dev] [nova, cinder, neutron] quota-update tenant-name bug<br>
</font><br>
<div></div>
<div>
<div dir="ltr">><span style="font-size:12.8000001907349px">Dev lessons learned: we need to validate better our inputs and refuse to update a tenant-id that does not exist.</span><br style="font-size:12.8000001907349px">
<div><span style="font-size:12.8000001907349px"><br>
</span></div>
<div><span style="font-size:12.8000001907349px">This is something that has come up in Neutron discussions before. There are two issues here: </span></div>
<div><span style="font-size:12.8000001907349px">1. Performance: it will require a round-trip to Keystone on every request.</span></div>
<div><span style="font-size:12.8000001907349px">2. If the Neutron keystone user in unprivileged and the request context is unprivileged, we might not actually be allowed to tell if the tenant exists.</span></div>
<div><br>
</div>
<div>The first we can deal with, but the second is going to be an issue that we might not be able to get around.</div>
<div><br>
</div>
<div>How about as a temporary solution, we just confirm that the input is a UUID so names don't get used?</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Wed, Jul 29, 2015 at 10:19 PM, Bruno L <span dir="ltr">
<<a href="mailto:teolupus.ext@gmail.com" target="_blank">teolupus.ext@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex; border-left:1px #ccc solid; padding-left:1ex">
<div dir="ltr">
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>This is probably affecting other people as well, so hopefully message will avoid some headaches.<br>
<br>
</div>
[nova,cinder,neutron] will allow you to do a quota-update using the tenant-name (instead of tenant-id). They will also allow you to do a quota-show tenant-name and get the expected values back.<br>
<br>
</div>
Then you go to the tenant and end up surprised that the quotas have not been applied and you can still do things you were not supposed to.<br>
<br>
</div>
It turns out that [nova,cinder,neutron] just created an entry on the quota table, inserting the tenant-name on the tenant-id field.<br>
<br>
</div>
<div>"Surprise, surprise!"<br>
</div>
<div><br>
</div>
Ops lessons learned: use the tenant-id!<br>
<br>
</div>
Dev lessons learned: we need to validate better our inputs and refuse to update a tenant-id that does not exist.<br>
<br>
</div>
I have documented this behaviour on <a href="https://bugs.launchpad.net/neutron/+bug/1399065" target="_blank">
https://bugs.launchpad.net/neutron/+bug/1399065</a> and <a href="https://bugs.launchpad.net/neutron/+bug/1317515" target="_blank">
https://bugs.launchpad.net/neutron/+bug/1317515</a>. I can reproduce it in IceHouse.<br>
<br>
</div>
Could someone please confirm if this is still the case on master? If not, which version of OpenStack addressed that?<br>
<br>
</div>
Thanks,<br>
</div>
Bruno<br>
</div>
<br>
__________________________________________________________________________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">
OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
<br>
</blockquote>
</div>
<br>
<br clear="all">
<div><br>
</div>
-- <br>
<div class="gmail_signature">
<div>Kevin Benton</div>
</div>
</div>
</div>
</body>
</html>