)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"bd559e9867d4cfe7125cde5d99f9c258ef3b919e","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When our infra folks have questions about what some concepts"},{"line_number":10,"context_line":"are in Keystone, then it\u0027s past due for a glossary and helpful info."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Ia985723d788c66c7810d06a398f3ec7d48615fac"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"ba7be1f8_5f276fb6","line":11,"updated":"2015-02-23 01:43:38.000000000","message":"Add DocImpact. Also, why is this in developer docs and not external documentation?","commit_id":"bf2e63d1367587472c357bfc8db7f228a9c99d0c"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"d0f73371e2f6dc6ee6de897161be23870fde2618","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When our infra folks have questions about what some concepts"},{"line_number":10,"context_line":"are in Keystone, then it\u0027s past due for a glossary and helpful info."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Ia985723d788c66c7810d06a398f3ec7d48615fac"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"ba7be1f8_ada2d7ab","line":11,"in_reply_to":"ba7be1f8_5f276fb6","updated":"2015-02-24 06:46:52.000000000","message":"Done","commit_id":"bf2e63d1367587472c357bfc8db7f228a9c99d0c"}],"doc/source/key_terms.rst":[{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c5f1cdafe9e65d962146519d64a73fedd0d6747e","unresolved":false,"context_lines":[{"line_number":34,"context_line":"Projects (Tenants)"},{"line_number":35,"context_line":"------------------"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"``Projects`` (once known as Tenants) represent the base unit of ``ownership`` in"},{"line_number":38,"context_line":"OpenStack, in that all resources in OpenStack should be owned by a specific project."},{"line_number":39,"context_line":"A project itself must be owned by a specific domain, and hence all project names"},{"line_number":40,"context_line":"**not** globally unique, but unique to their domain."}],"source_content_type":"text/x-rst","patch_set":2,"id":"da86d52c_39c8df54","line":37,"updated":"2015-02-10 20:23:14.000000000","message":"(once known as Tenants  in v2.0)","commit_id":"5a71175e8f9fcbf599af1d50fc7a560025943972"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"b8d5a700b3f8cd35054c382405dace920aaa7f0c","unresolved":false,"context_lines":[{"line_number":34,"context_line":"Projects (Tenants)"},{"line_number":35,"context_line":"------------------"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"``Projects`` (once known as Tenants) represent the base unit of ``ownership`` in"},{"line_number":38,"context_line":"OpenStack, in that all resources in OpenStack should be owned by a specific project."},{"line_number":39,"context_line":"A project itself must be owned by a specific domain, and hence all project names"},{"line_number":40,"context_line":"**not** globally unique, but unique to their domain."}],"source_content_type":"text/x-rst","patch_set":2,"id":"da86d52c_d1f83d7e","line":37,"in_reply_to":"da86d52c_39c8df54","updated":"2015-02-12 01:42:27.000000000","message":"Done","commit_id":"5a71175e8f9fcbf599af1d50fc7a560025943972"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"8b9632bc571e95071f180f2eb86ab57077d3e470","unresolved":false,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":"``Domains`` are a high-level container for projects, users and groups. Keystone"},{"line_number":46,"context_line":"provides a default domain, aptly named \u0027Default\u0027. Domain names are globally"},{"line_number":47,"context_line":"unique."},{"line_number":48,"context_line":""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"Assignment"}],"source_content_type":"text/x-rst","patch_set":2,"id":"da86d52c_848fa9cb","line":47,"updated":"2015-02-03 18:15:52.000000000","message":"This implies that domains are used for namespacing. My first impression was that a user/group/project is really a domain+user/domain+group/domain+project to maintain uniqueness. I have been told that domains actually represent delegated management of \"sub-cloud units\" as mordred puts it.\n\nCan we expand a bit more on the utility of domains for management of resources? I don\u0027t know all the details so won\u0027t offer any edits of my own but I do think having a bit more info here will cut down on confusion around why domains exist.","commit_id":"5a71175e8f9fcbf599af1d50fc7a560025943972"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"b8d5a700b3f8cd35054c382405dace920aaa7f0c","unresolved":false,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":"``Domains`` are a high-level container for projects, users and groups. Keystone"},{"line_number":46,"context_line":"provides a default domain, aptly named \u0027Default\u0027. Domain names are globally"},{"line_number":47,"context_line":"unique."},{"line_number":48,"context_line":""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"Assignment"}],"source_content_type":"text/x-rst","patch_set":2,"id":"da86d52c_813752e2","line":47,"in_reply_to":"da86d52c_848fa9cb","updated":"2015-02-12 01:42:27.000000000","message":"i tried to expand on this a bit","commit_id":"5a71175e8f9fcbf599af1d50fc7a560025943972"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"c5f1cdafe9e65d962146519d64a73fedd0d6747e","unresolved":false,"context_lines":[{"line_number":97,"context_line":"project (ID of 263fd9)."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"To perform the same call with names instead of IDs, we now need to supply"},{"line_number":100,"context_line":"information about the domain, so it would look like the following:"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":".. code-block:: javascript"},{"line_number":103,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"da86d52c_f95c877f","line":100,"updated":"2015-02-10 20:23:14.000000000","message":"might be helpful to add why we do this? Because usernames must be unique within a given domain, but user ids are suppose to be unique across the deployment.","commit_id":"5a71175e8f9fcbf599af1d50fc7a560025943972"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"b8d5a700b3f8cd35054c382405dace920aaa7f0c","unresolved":false,"context_lines":[{"line_number":97,"context_line":"project (ID of 263fd9)."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"To perform the same call with names instead of IDs, we now need to supply"},{"line_number":100,"context_line":"information about the domain, so it would look like the following:"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":".. code-block:: javascript"},{"line_number":103,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"da86d52c_711871d3","line":100,"in_reply_to":"da86d52c_f95c877f","updated":"2015-02-12 01:42:27.000000000","message":"Done","commit_id":"5a71175e8f9fcbf599af1d50fc7a560025943972"},{"author":{"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},"change_message_id":"bab85aa0fd6ddc2449cb6cedcdfb3139d23b240d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":2,"context_line":"Key Terms"},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"This document will describe the different resource types that are available in"},{"line_number":6,"context_line":"OpenStack\u0027s Identity Service."},{"line_number":7,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da86d52c_07537217","line":4,"updated":"2015-02-12 03:52:06.000000000","message":"I love this document.  Where were you circa 2013 when I was trying to learn this??? :-)","commit_id":"75fbec04ebf97a419028d201eb9743fe2ec5a2a7"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"619b6182c8675d0f5a9266075ec868a78e2f5956","unresolved":false,"context_lines":[{"line_number":1,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":2,"context_line":"Key Terms"},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"This document will describe the different resource types that are available in"},{"line_number":6,"context_line":"OpenStack\u0027s Identity Service."},{"line_number":7,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da86d52c_8a8687b7","line":4,"in_reply_to":"da86d52c_07537217","updated":"2015-02-12 05:21:34.000000000","message":"i was trying to learn it with you! you were there!","commit_id":"75fbec04ebf97a419028d201eb9743fe2ec5a2a7"},{"author":{"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},"change_message_id":"bab85aa0fd6ddc2449cb6cedcdfb3139d23b240d","unresolved":false,"context_lines":[{"line_number":8,"context_line":"Identity"},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"The Identity portion of Keystone includes ``Users`` and ``Groups``, and may be"},{"line_number":12,"context_line":"backed by SQL or more commonly LDAP."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Users"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da86d52c_873e82b6","line":11,"updated":"2015-02-12 03:52:06.000000000","message":"AWESOME!","commit_id":"75fbec04ebf97a419028d201eb9743fe2ec5a2a7"},{"author":{"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},"change_message_id":"bab85aa0fd6ddc2449cb6cedcdfb3139d23b240d","unresolved":false,"context_lines":[{"line_number":15,"context_line":"-----"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"``Users`` represent an individual API consumer. A user itself must be owned by"},{"line_number":18,"context_line":"a specific domain, and hence all user names **not** globally unique, but only"},{"line_number":19,"context_line":"unique to their domain."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Groups"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da86d52c_a749c661","line":18,"updated":"2015-02-12 03:52:06.000000000","message":"need an \"are\" between \"names\" and \"**not**\"","commit_id":"75fbec04ebf97a419028d201eb9743fe2ec5a2a7"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"619b6182c8675d0f5a9266075ec868a78e2f5956","unresolved":false,"context_lines":[{"line_number":15,"context_line":"-----"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"``Users`` represent an individual API consumer. A user itself must be owned by"},{"line_number":18,"context_line":"a specific domain, and hence all user names **not** globally unique, but only"},{"line_number":19,"context_line":"unique to their domain."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Groups"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da86d52c_aa018bb0","line":18,"in_reply_to":"da86d52c_a749c661","updated":"2015-02-12 05:21:34.000000000","message":"Done","commit_id":"75fbec04ebf97a419028d201eb9743fe2ec5a2a7"},{"author":{"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},"change_message_id":"bab85aa0fd6ddc2449cb6cedcdfb3139d23b240d","unresolved":false,"context_lines":[{"line_number":21,"context_line":"Groups"},{"line_number":22,"context_line":"------"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"``Groups`` are a container representing a collection of users. A group itself"},{"line_number":25,"context_line":"must be owned by a specific domain, and hence all group names are **not**"},{"line_number":26,"context_line":"globally unique, but only unique to their domain."},{"line_number":27,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da86d52c_077a9287","line":24,"updated":"2015-02-12 03:52:06.000000000","message":"AWESOME!","commit_id":"75fbec04ebf97a419028d201eb9743fe2ec5a2a7"},{"author":{"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},"change_message_id":"bab85aa0fd6ddc2449cb6cedcdfb3139d23b240d","unresolved":false,"context_lines":[{"line_number":29,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"The Identity portion of Keystone includes ``Projects`` and ``Domains``, and"},{"line_number":32,"context_line":"may be backed by SQL or LDAP."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"Projects (Tenants)"},{"line_number":35,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da86d52c_a78e2677","line":32,"updated":"2015-02-12 03:52:06.000000000","message":"I think we need to be careful on the phrasing here. Projects may be backed by SQL or LDAP.  Domains may also be backed in SQL or a Domain may be mapped to a specific LDAP. If you say Domain may be backed by LDAP to me that implies that somehow the Domain can be stored as part of the LDAP schema which I believe is not true.  That was where the LDAP mapping would break down I believe.","commit_id":"75fbec04ebf97a419028d201eb9743fe2ec5a2a7"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"619b6182c8675d0f5a9266075ec868a78e2f5956","unresolved":false,"context_lines":[{"line_number":29,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"The Identity portion of Keystone includes ``Projects`` and ``Domains``, and"},{"line_number":32,"context_line":"may be backed by SQL or LDAP."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"Projects (Tenants)"},{"line_number":35,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da86d52c_4ab80f75","line":32,"in_reply_to":"da86d52c_a78e2677","updated":"2015-02-12 05:21:34.000000000","message":"given our plan to deprecate the ldap assignment backend, i think i\u0027ll just remove that portion.","commit_id":"75fbec04ebf97a419028d201eb9743fe2ec5a2a7"},{"author":{"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},"change_message_id":"bab85aa0fd6ddc2449cb6cedcdfb3139d23b240d","unresolved":false,"context_lines":[{"line_number":38,"context_line":"``ownership`` in OpenStack, in that all resources in OpenStack should be owned"},{"line_number":39,"context_line":"by a specific project."},{"line_number":40,"context_line":"A project itself must be owned by a specific domain, and hence all project"},{"line_number":41,"context_line":"names **not** globally unique, but unique to their domain."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"Domains"},{"line_number":44,"context_line":"-------"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da86d52c_87c12282","line":41,"updated":"2015-02-12 03:52:06.000000000","message":"Perhaps mention that if the domain for a project is not specified it is added to a default domain.  That way folks understand even if they typically just use projects there really is a domain implicitly.","commit_id":"75fbec04ebf97a419028d201eb9743fe2ec5a2a7"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"619b6182c8675d0f5a9266075ec868a78e2f5956","unresolved":false,"context_lines":[{"line_number":38,"context_line":"``ownership`` in OpenStack, in that all resources in OpenStack should be owned"},{"line_number":39,"context_line":"by a specific project."},{"line_number":40,"context_line":"A project itself must be owned by a specific domain, and hence all project"},{"line_number":41,"context_line":"names **not** globally unique, but unique to their domain."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"Domains"},{"line_number":44,"context_line":"-------"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da86d52c_4a6f2ffc","line":41,"in_reply_to":"da86d52c_87c12282","updated":"2015-02-12 05:21:34.000000000","message":"oh i like that, good call","commit_id":"75fbec04ebf97a419028d201eb9743fe2ec5a2a7"},{"author":{"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},"change_message_id":"bab85aa0fd6ddc2449cb6cedcdfb3139d23b240d","unresolved":false,"context_lines":[{"line_number":73,"context_line":""},{"line_number":74,"context_line":"``Roles`` dictate the level of authorization the end user can obtain. Roles"},{"line_number":75,"context_line":"can be granted at either the domain or project level. Role can be assigned to"},{"line_number":76,"context_line":"the individual user or at the group level. Roles names are globally unique."},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"Role Assignments"},{"line_number":79,"context_line":"----------------"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da86d52c_e739fea4","line":76,"updated":"2015-02-12 03:52:06.000000000","message":"Roles should be Role","commit_id":"75fbec04ebf97a419028d201eb9743fe2ec5a2a7"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"619b6182c8675d0f5a9266075ec868a78e2f5956","unresolved":false,"context_lines":[{"line_number":73,"context_line":""},{"line_number":74,"context_line":"``Roles`` dictate the level of authorization the end user can obtain. Roles"},{"line_number":75,"context_line":"can be granted at either the domain or project level. Role can be assigned to"},{"line_number":76,"context_line":"the individual user or at the group level. Roles names are globally unique."},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"Role Assignments"},{"line_number":79,"context_line":"----------------"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da86d52c_6a607301","line":76,"in_reply_to":"da86d52c_e739fea4","updated":"2015-02-12 05:21:34.000000000","message":"Done","commit_id":"75fbec04ebf97a419028d201eb9743fe2ec5a2a7"},{"author":{"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},"change_message_id":"bab85aa0fd6ddc2449cb6cedcdfb3139d23b240d","unresolved":false,"context_lines":[{"line_number":111,"context_line":"        }"},{"line_number":112,"context_line":"    }"},{"line_number":113,"context_line":""},{"line_number":114,"context_line":"The user (ID of 0ca8f6) is attempting to retrieve a token that is scoped to"},{"line_number":115,"context_line":"project (ID of 263fd9)."},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"To perform the same call with names instead of IDs, we now need to supply"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da86d52c_275796cb","line":114,"updated":"2015-02-12 03:52:06.000000000","message":"Great example.  You are like the evil masked magician that goes on TV and shows the world how all the magic tricks are done!","commit_id":"75fbec04ebf97a419028d201eb9743fe2ec5a2a7"},{"author":{"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},"change_message_id":"bab85aa0fd6ddc2449cb6cedcdfb3139d23b240d","unresolved":false,"context_lines":[{"line_number":115,"context_line":"project (ID of 263fd9)."},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"To perform the same call with names instead of IDs, we now need to supply"},{"line_number":118,"context_line":"information about the domain, this is because usernames must be unique within"},{"line_number":119,"context_line":"a given domain, but user IDs are supposed to be unique across the deployment."},{"line_number":120,"context_line":"Thus, the auth request looks like the following:"},{"line_number":121,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da86d52c_87f682d5","line":118,"updated":"2015-02-12 03:52:06.000000000","message":"Run on sentence. Recommend you replace \"domain, this\"  with \"domain. This\"","commit_id":"75fbec04ebf97a419028d201eb9743fe2ec5a2a7"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"619b6182c8675d0f5a9266075ec868a78e2f5956","unresolved":false,"context_lines":[{"line_number":115,"context_line":"project (ID of 263fd9)."},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"To perform the same call with names instead of IDs, we now need to supply"},{"line_number":118,"context_line":"information about the domain, this is because usernames must be unique within"},{"line_number":119,"context_line":"a given domain, but user IDs are supposed to be unique across the deployment."},{"line_number":120,"context_line":"Thus, the auth request looks like the following:"},{"line_number":121,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da86d52c_ea338311","line":118,"in_reply_to":"da86d52c_87f682d5","updated":"2015-02-12 05:21:34.000000000","message":"thank you mr. grammar.","commit_id":"75fbec04ebf97a419028d201eb9743fe2ec5a2a7"},{"author":{"_account_id":6460,"name":"Brad Topol","email":"btopol@us.ibm.com","username":"btopol"},"change_message_id":"45c9ce0f7a2cd87100a8422fcb3db0cbbb21b1bb","unresolved":false,"context_lines":[{"line_number":29,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"The Identity portion of Keystone includes ``Projects`` and ``Domains``, and"},{"line_number":32,"context_line":"may are commonly stored in an SQL backend."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"Projects (Tenants)"},{"line_number":35,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"da86d52c_fdb1738f","line":32,"updated":"2015-02-12 17:05:08.000000000","message":"typo: remove \"may\"","commit_id":"61d506c6d7a5ff7505c854815765e72acf8087ef"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"4f355046a0fdd5ab3eddb8b89fd7ab10555fd85b","unresolved":false,"context_lines":[{"line_number":29,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"The Identity portion of Keystone includes ``Projects`` and ``Domains``, and"},{"line_number":32,"context_line":"may are commonly stored in an SQL backend."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"Projects (Tenants)"},{"line_number":35,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"da86d52c_b7947437","line":32,"in_reply_to":"da86d52c_fdb1738f","updated":"2015-02-12 18:34:50.000000000","message":"Done","commit_id":"61d506c6d7a5ff7505c854815765e72acf8087ef"},{"author":{"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},"change_message_id":"66ee57de125093db3ed5aee2ab18f4dcf0b0b110","unresolved":false,"context_lines":[{"line_number":117,"context_line":"project (ID of 263fd9)."},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"To perform the same call with names instead of IDs, we now need to supply"},{"line_number":120,"context_line":"information about the domain. This is because usernames must be unique within"},{"line_number":121,"context_line":"a given domain, but user IDs are supposed to be unique across the deployment."},{"line_number":122,"context_line":"Thus, the auth request looks like the following:"},{"line_number":123,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"da86d52c_d56584af","line":120,"updated":"2015-02-12 05:50:57.000000000","message":"suggestion: \"must be\" -\u003e \"is only\"?","commit_id":"61d506c6d7a5ff7505c854815765e72acf8087ef"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"4f355046a0fdd5ab3eddb8b89fd7ab10555fd85b","unresolved":false,"context_lines":[{"line_number":117,"context_line":"project (ID of 263fd9)."},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"To perform the same call with names instead of IDs, we now need to supply"},{"line_number":120,"context_line":"information about the domain. This is because usernames must be unique within"},{"line_number":121,"context_line":"a given domain, but user IDs are supposed to be unique across the deployment."},{"line_number":122,"context_line":"Thus, the auth request looks like the following:"},{"line_number":123,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"da86d52c_f79a6c60","line":120,"in_reply_to":"da86d52c_d56584af","updated":"2015-02-12 18:34:50.000000000","message":"Done","commit_id":"61d506c6d7a5ff7505c854815765e72acf8087ef"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"bd559e9867d4cfe7125cde5d99f9c258ef3b919e","unresolved":false,"context_lines":[{"line_number":2,"context_line":"Key Terms"},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"This document will describe the different resource types that are available in"},{"line_number":6,"context_line":"OpenStack\u0027s Identity Service."},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"Identity"}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba7be1f8_ff3583db","line":5,"updated":"2015-02-23 01:43:38.000000000","message":"change \"will describe\" to \"describes\"","commit_id":"bf2e63d1367587472c357bfc8db7f228a9c99d0c"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"d0f73371e2f6dc6ee6de897161be23870fde2618","unresolved":false,"context_lines":[{"line_number":2,"context_line":"Key Terms"},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"This document will describe the different resource types that are available in"},{"line_number":6,"context_line":"OpenStack\u0027s Identity Service."},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"Identity"}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba7be1f8_edb5afee","line":5,"in_reply_to":"ba7be1f8_ff3583db","updated":"2015-02-24 06:46:52.000000000","message":"Done","commit_id":"bf2e63d1367587472c357bfc8db7f228a9c99d0c"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"bd559e9867d4cfe7125cde5d99f9c258ef3b919e","unresolved":false,"context_lines":[{"line_number":12,"context_line":"backed by SQL or more commonly LDAP."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Users"},{"line_number":15,"context_line":"-----"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"``Users`` represent an individual API consumer. A user itself must be owned by"},{"line_number":18,"context_line":"a specific domain, and hence all user names are **not** globally unique, but"}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba7be1f8_bf5b0b2d","line":15,"updated":"2015-02-23 01:43:38.000000000","message":"this is already in the v3 API spec: http://specs.openstack.org/openstack/keystone-specs/api/v3/identity-api-v3.html#users-v3-users","commit_id":"bf2e63d1367587472c357bfc8db7f228a9c99d0c"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"690a06e8492d1b7c98bec93365d767f7d68366fb","unresolved":false,"context_lines":[{"line_number":8,"context_line":"Identity"},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"The Identity portion of Keystone includes ``Users`` and ``Groups``, and may be"},{"line_number":12,"context_line":"backed by SQL or more commonly LDAP."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Users"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9a80dd14_19e96ab8","line":11,"updated":"2015-03-06 00:23:59.000000000","message":"use keystone instead of Keystone, see https://wiki.openstack.org/wiki/Documentation/Conventions#Service_and_project_names\n\nthis applies throughout the document.","commit_id":"9c204e3b31dd5704f5f18f3ecfe543e384997c16"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"e7c6897ee10bada5d8b86cd2bdc519c3d9b7d961","unresolved":false,"context_lines":[{"line_number":8,"context_line":"Identity"},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"The Identity portion of Keystone includes ``Users`` and ``Groups``, and may be"},{"line_number":12,"context_line":"backed by SQL or more commonly LDAP."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Users"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9a80dd14_5c339861","line":11,"in_reply_to":"9a80dd14_19e96ab8","updated":"2015-03-07 03:32:16.000000000","message":"Done","commit_id":"9c204e3b31dd5704f5f18f3ecfe543e384997c16"}]}
