)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"change_message_id":"64f3c5da27a82e045d6c0a17386afd4a6d52a696","unresolved":false,"context_lines":[{"line_number":15,"context_line":"is now enforced in auth_token middleware and in keystone. These can be"},{"line_number":16,"context_line":"removed in later commits because they will require test changes."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"My intention after this is to start to more directly integrate this with"},{"line_number":19,"context_line":"oslo.policy and start to standardize the way auth is handled from"},{"line_number":20,"context_line":"auth_token middleware to enforcement. Doing this work here means that we"},{"line_number":21,"context_line":"get keystone to try out policy changes first."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Change-Id: I6592ea2865863c9ace1304b06d73a917c3a1b114"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1a7b0d38_202ff0a2","line":21,"range":{"start_line":18,"start_character":30,"end_line":21,"end_character":45},"updated":"2015-12-22 17:18:12.000000000","message":"I don\u0027t get the intentions. How do you want to integrate it?","commit_id":"83b3947729c460fc3d991c07f89560f73c1a9c6a"},{"author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"change_message_id":"64f3c5da27a82e045d6c0a17386afd4a6d52a696","unresolved":false,"context_lines":[{"line_number":19,"context_line":"oslo.policy and start to standardize the way auth is handled from"},{"line_number":20,"context_line":"auth_token middleware to enforcement. Doing this work here means that we"},{"line_number":21,"context_line":"get keystone to try out policy changes first."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Change-Id: I6592ea2865863c9ace1304b06d73a917c3a1b114"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1a7b0d38_d40d8d38","line":22,"range":{"start_line":22,"start_character":0,"end_line":22,"end_character":0},"updated":"2015-12-22 17:18:12.000000000","message":"This is an awesome idea. Maybe there should be a bp about this?","commit_id":"83b3947729c460fc3d991c07f89560f73c1a9c6a"}],"keystone/common/wsgi.py":[{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"9c87ebfd8792c8e557b3802cd9024a45098b245f","unresolved":false,"context_lines":[{"line_number":397,"context_line":"def middleware_exceptions(method):"},{"line_number":398,"context_line":""},{"line_number":399,"context_line":"    @functools.wraps(method)"},{"line_number":400,"context_line":"    def _inner(self, request):"},{"line_number":401,"context_line":"        try:"},{"line_number":402,"context_line":"            return method(self, request)"},{"line_number":403,"context_line":"        except exception.Error as e:"}],"source_content_type":"text/x-python","patch_set":8,"id":"1a122d0e_eb36f0e5","line":400,"updated":"2016-04-19 15:14:23.000000000","message":"no need for _ prefix.","commit_id":"be558717ed29dfe01664f68d6de42f73d3afe8ab"}],"keystone/middleware/auth.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"06553276b9647be17d198d9d89444b3db89eeb23","unresolved":false,"context_lines":[{"line_number":10,"context_line":"# License for the specific language governing permissions and limitations"},{"line_number":11,"context_line":"# under the License."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"from keystonemiddleware import auth_token"},{"line_number":14,"context_line":"from oslo_config import cfg"},{"line_number":15,"context_line":"from oslo_context import context as oslo_context"},{"line_number":16,"context_line":"from oslo_log import log"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a740942_15e44439","line":13,"updated":"2015-12-10 08:19:26.000000000","message":"this is blowing my mind","commit_id":"83b3947729c460fc3d991c07f89560f73c1a9c6a"},{"author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"change_message_id":"64f3c5da27a82e045d6c0a17386afd4a6d52a696","unresolved":false,"context_lines":[{"line_number":10,"context_line":"# License for the specific language governing permissions and limitations"},{"line_number":11,"context_line":"# under the License."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"from keystonemiddleware import auth_token"},{"line_number":14,"context_line":"from oslo_config import cfg"},{"line_number":15,"context_line":"from oslo_context import context as oslo_context"},{"line_number":16,"context_line":"from oslo_log import log"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a7b0d38_b47b217b","line":13,"in_reply_to":"7a740942_15e44439","updated":"2015-12-22 17:18:12.000000000","message":"we heard you like keystone, so we put keystonemiddleware in your keystone so that you could keystonemiddleware while you keystone","commit_id":"83b3947729c460fc3d991c07f89560f73c1a9c6a"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"e9cf4b2fce33b16d544e866a0ce5aa6182fcdbaa","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        \"\"\""},{"line_number":66,"context_line":"        tokenless_helper \u003d tokenless_auth.TokenlessAuthHelper(request.environ)"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"        domain_id, project_id, _i, _i \u003d tokenless_helper.get_scope()"},{"line_number":69,"context_line":"        user_ref \u003d tokenless_helper.get_mapped_user(project_id, domain_id)"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"        # NOTE(gyee): if it is an ephemeral user, the"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa69d971_d9674de7","line":68,"range":{"start_line":68,"start_character":31,"end_line":68,"end_character":37},"updated":"2016-01-05 22:41:58.000000000","message":"how can you define _i, _i, that would mean we\u0027d be losing the trust_ref because it\u0027s overridden, right?","commit_id":"83b3947729c460fc3d991c07f89560f73c1a9c6a"},{"author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"change_message_id":"64f3c5da27a82e045d6c0a17386afd4a6d52a696","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        \"\"\""},{"line_number":66,"context_line":"        tokenless_helper \u003d tokenless_auth.TokenlessAuthHelper(request.environ)"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"        domain_id, project_id, _i, _i \u003d tokenless_helper.get_scope()"},{"line_number":69,"context_line":"        user_ref \u003d tokenless_helper.get_mapped_user(project_id, domain_id)"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"        # NOTE(gyee): if it is an ephemeral user, the"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a7b0d38_a0b3e009","line":68,"range":{"start_line":68,"start_character":0,"end_line":68,"end_character":68},"updated":"2015-12-22 17:18:12.000000000","message":"unrelated","commit_id":"83b3947729c460fc3d991c07f89560f73c1a9c6a"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"28140f9bc65517f778abfcfb2108f384c5b94392","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        \"\"\""},{"line_number":66,"context_line":"        tokenless_helper \u003d tokenless_auth.TokenlessAuthHelper(request.environ)"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"        domain_id, project_id, _i, _i \u003d tokenless_helper.get_scope()"},{"line_number":69,"context_line":"        user_ref \u003d tokenless_helper.get_mapped_user(project_id, domain_id)"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"        # NOTE(gyee): if it is an ephemeral user, the"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa69d971_4f6916f8","line":68,"range":{"start_line":68,"start_character":31,"end_line":68,"end_character":37},"in_reply_to":"fa69d971_d9674de7","updated":"2016-01-07 00:50:34.000000000","message":"Boris is right, it\u0027s unrelated. However I think what it demonstrates is that we don\u0027t use trust_ref or unscoped anywhere in this function.","commit_id":"83b3947729c460fc3d991c07f89560f73c1a9c6a"},{"author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"change_message_id":"64f3c5da27a82e045d6c0a17386afd4a6d52a696","unresolved":false,"context_lines":[{"line_number":66,"context_line":"        tokenless_helper \u003d tokenless_auth.TokenlessAuthHelper(request.environ)"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"        domain_id, project_id, _i, _i \u003d tokenless_helper.get_scope()"},{"line_number":69,"context_line":"        user_ref \u003d tokenless_helper.get_mapped_user(project_id, domain_id)"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"        # NOTE(gyee): if it is an ephemeral user, the"},{"line_number":72,"context_line":"        # given X.509 SSL client cert does not need to map to"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a7b0d38_c0b86ce8","line":69,"range":{"start_line":69,"start_character":0,"end_line":69,"end_character":74},"updated":"2015-12-22 17:18:12.000000000","message":"unrelated","commit_id":"83b3947729c460fc3d991c07f89560f73c1a9c6a"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"2324428b4aed059ab10c74b0645603f77feca1d6","unresolved":false,"context_lines":[{"line_number":44,"context_line":"                                                    log\u003dLOG,"},{"line_number":45,"context_line":"                                                    enforce_token_bind\u003dbind)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    def fetch_token(self, token):"},{"line_number":48,"context_line":"        if CONF.admin_token and token \u003d\u003d CONF.admin_token:"},{"line_number":49,"context_line":"            return {}"},{"line_number":50,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"dab17558_6378862c","line":47,"range":{"start_line":47,"start_character":8,"end_line":47,"end_character":19},"updated":"2016-05-08 07:20:03.000000000","message":"this isn\u0027t used anywhere","commit_id":"be558717ed29dfe01664f68d6de42f73d3afe8ab"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"2b1867009bd4a21aa348dea1da9501e0287949d9","unresolved":false,"context_lines":[{"line_number":44,"context_line":"                                                    log\u003dLOG,"},{"line_number":45,"context_line":"                                                    enforce_token_bind\u003dbind)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    def fetch_token(self, token):"},{"line_number":48,"context_line":"        if CONF.admin_token and token \u003d\u003d CONF.admin_token:"},{"line_number":49,"context_line":"            return {}"},{"line_number":50,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"dab17558_da9cab5f","line":47,"range":{"start_line":47,"start_character":8,"end_line":47,"end_character":19},"in_reply_to":"dab17558_6378862c","updated":"2016-05-09 05:29:22.000000000","message":"This overrides the implementation in auth_token middleware and is what lets us use a database call instead of a REST lookup \n\nhttps://github.com/openstack/keystonemiddleware/blob/ed931a00d81ed643c5138f4580cee04e1d69a2f8/keystonemiddleware/auth_token/__init__.py#L541","commit_id":"be558717ed29dfe01664f68d6de42f73d3afe8ab"}]}
