<br><br>On Thursday, February 27, 2014, Dolph Mathews <<a href="mailto:dolph.mathews@gmail.com">dolph.mathews@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Feb 27, 2014 at 11:52 AM, Jay Pipes <span dir="ltr"><<a href="javascript:_e(%7B%7D,'cvml','jaypipes@gmail.com');" target="_blank">jaypipes@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>On Thu, 2014-02-27 at 16:13 +0000, Henry Nash wrote:<br>
> So a couple of things about this:<br>
><br>
><br>
> 1) Today (and also true for Grizzly and Havana), the user can chose<br>
> what LDAP attribute should be returned as the user or group ID.  So it<br>
> is NOT a safe assumption today (ignoring any support for<br>
> domain-specific LDAP support) that the format of a user or group ID is<br>
> a 32 char UUID.  Quite often, I would think, that email address would<br>
> be chosen by a cloud provider as the LDAP id field, by default we use<br>
> the CN.  Since we really don't want to ever change the user or group<br>
> ID we have given out from keystone for a particular entity, this means<br>
> we need to update nova (or anything else) that has made a 32 char<br>
> assumption.<br>
<br>
</div>I don't believe this is correct. Keystone is the service that deals with<br>
authentication. As such, Keystone should be the one and only one service<br>
that should have any need whatsoever to need to understand a non-UUID<br>
value for a user ID. The only value that should ever be communicated<br>
*from* Keystone should be the UUID value of the user.<br></blockquote><div><br></div><div>+++</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
If the Keystone service uses LDAP or federation for alternative<br>
authentication schemes, then Keystone should have a mapping table that<br>
translates those elongated and non-UUID identifiers values (email<br>
addresses, LDAP CNs, etc) into the UUID value that is then communicated<br>
to all other OpenStack services.<br></blockquote><div><br></div><div>I'd take it one step further and say that at some point, keystone should stop leaking identity details such as user name / ID into OpenStack (they shouldn't appear in tokens, and shouldn't be expected output of auth_token). The use cases that "require" them are weak and would be better served by pure multitenant RBAC, ABAC, etc. There are a lot of blockers to making this happen (including a few in keystone's own API), but still food for thought.</div>


<div> </div></div></div></div></blockquote><div>++ this would be a great change!  </div><div><br></div><div>I am on the same page as Dolph when it comes to approving of the UUID being the only value communicated outside of keystone. There is just no good reason to send out extra identity information (it isn't needed and can help to reduce token bloat etc). </div>
<div><br></div><div>--Morgan</div><div><br></div><div>Sent via mobile<span></span></div>