<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On May 9, 2012, at 4:46 PM, Joshua Harlow wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">

<title>Keystone client, user belongs to many tenants?</title>

<div>
<font face="Calibri, Verdana, Helvetica, Arial"><span style="font-size:11pt">A question,<br>
<br>
I am using anvil to setup the keystone roles/users/tenants.<br>
<br>
It seems like the python keystone  client has the following command:<br>
<br>
client.users.create<br>
<br>
Which seems to take in the following:<br>
<br>
</span></font><font color="#323232"><font size="1"><font face="Courier, Courier New"><span style="font-size:9pt"> </span></font></font></font><font size="1"><font face="Courier, Courier New"><span style="font-size:9pt"><font color="#990606"><b>create</b></font><font color="#323232">(</font><font color="#999999">self</font><font color="#323232">, name, password, email, tenant_id<b>=</b></font><font color="#999999">None</font><font color="#323232">, enabled<b>=</b></font><font color="#999999">True</font><font color="#323232">):<br>
<br>
</font></span></font></font><font face="Calibri, Verdana, Helvetica, Arial"><span style="font-size:11pt">I would assume a user name can be used in multiple tenants but when I am trying to create a user that spans tenants and it seems like it borks.<br>
<br></span></font></div></blockquote><div><br></div><div>My guess is that once you have a user created, you would then use the client.tenants.add_user method to add the user to different tenants:</div><div><br></div><div><div>add_user(tenant, user, role)</div><div><br></div><div>I think you would do something like:</div><div><br></div><div>user=client.users.create(…)</div><div>role=…</div><div>for tenant in other_tenants:</div><div> client.tenants.add_user(tenant, user, role)</div></div><div><br></div><div><br></div><div><br></div><blockquote type="cite"><div><font face="Calibri, Verdana, Helvetica, Arial"><span style="font-size:11pt">
ClientException: Conflict occurred attempting to store user. (IntegrityError) (1062, "Duplicate entry 'admin' for key 'name'") 'INSERT INTO user (id, name, extra) VALUES (%s, %s, %s)' ('3e14a9c1fd404c7e81c0dba8bd640575', 'admin', '{"password": "$6$rounds=40000$yX5fL51OyGKjuPjr$8yv.S3GpqsKeaHv4GjNY4YW2vvykWzrEV7RX.qJpyy3CjmyXrZMRRJifEzfa7xv1l.NzoggQBXUAESn3Oqm0x/", "enabled": true, "email": "<a href="x-msg://37/admin@example.com">admin@example.com</a>", "tenantId": "d1506184877a449a91fc6adcb553ad97"}') (HTTP 409)<br>
<br>
Is this supposed to happen? Is the client supposed to send back this much info also (hashed password??) :-P<br></span></font></div></blockquote><div><br></div><div>Not sure about this one.</div><div><br></div><div><br></div></div><div><div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>Take care,</div><div><br></div><div>Lorin</div><div>--</div><div>Lorin Hochstein</div><div>Lead Architect - Cloud Services</div><div>Nimbis Services, Inc.</div><div><a href="https://www.nimbisservices.com/">www.nimbisservices.com</a></div><div><br></div></div></span><br class="Apple-interchange-newline"></div><br class="Apple-interchange-newline"><br class="Apple-interchange-newline"></div></div></body></html>