)]}'
{"keystoneclient/auth/identity/v3/federated.py":[{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"3d09fc8ebe5fb98b8afcd27f182fa9f8b294643e","unresolved":false,"context_lines":[{"line_number":25,"context_line":"@six.add_metaclass(abc.ABCMeta)"},{"line_number":26,"context_line":"class FederatedBase(base.BaseAuth):"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    protocol \u003d None"},{"line_number":29,"context_line":"    rescoping_plugin \u003d token.Token"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"    @utils.positional()"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a80dd14_0fd5d742","line":28,"updated":"2015-03-11 13:22:08.000000000","message":"protocol should be an @abc.abstractproperty.","commit_id":"24cd6fde4ce4ef85608086c83fb198a58d3d3a8a"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"300ab3fbd558390b9d91afb26a41ba0f6b455616","unresolved":false,"context_lines":[{"line_number":25,"context_line":"@six.add_metaclass(abc.ABCMeta)"},{"line_number":26,"context_line":"class FederatedBase(base.BaseAuth):"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    protocol \u003d None"},{"line_number":29,"context_line":"    rescoping_plugin \u003d token.Token"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"    @utils.positional()"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a80dd14_63661def","line":28,"in_reply_to":"9a80dd14_0fd5d742","updated":"2015-03-12 21:44:35.000000000","message":"talked on irc - should be a user provided property.","commit_id":"24cd6fde4ce4ef85608086c83fb198a58d3d3a8a"},{"author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"change_message_id":"c978e00fcf86c27cc9284d2f243b2a6c6ae44ab1","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        return url"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"    def _get_scoping_data(self):"},{"line_number":75,"context_line":"        return {\u0027trust_id\u0027: self.trust_id,"},{"line_number":76,"context_line":"                \u0027domain_id\u0027: self.domain_id,"},{"line_number":77,"context_line":"                \u0027domain_name\u0027: self.domain_name,"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a80dd14_0c5d9379","line":74,"updated":"2015-03-12 21:16:08.000000000","message":"Why is this on tyhe federation token? Seems like it is core information.","commit_id":"24cd6fde4ce4ef85608086c83fb198a58d3d3a8a"},{"author":{"_account_id":7191,"name":"Jamie Lennox","email":"jamielennox@gmail.com","username":"jamielennox"},"change_message_id":"300ab3fbd558390b9d91afb26a41ba0f6b455616","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        return url"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"    def _get_scoping_data(self):"},{"line_number":75,"context_line":"        return {\u0027trust_id\u0027: self.trust_id,"},{"line_number":76,"context_line":"                \u0027domain_id\u0027: self.domain_id,"},{"line_number":77,"context_line":"                \u0027domain_name\u0027: self.domain_name,"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a80dd14_436919bd","line":74,"in_reply_to":"9a80dd14_0c5d9379","updated":"2015-03-12 21:44:35.000000000","message":"it somewhat is, it\u0027s just the default plugins don\u0027t care because they don\u0027t have an explicit scoping step. \n\nIt\u0027s a private method, i don\u0027t really care where it goes.","commit_id":"24cd6fde4ce4ef85608086c83fb198a58d3d3a8a"},{"author":{"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},"change_message_id":"0db5369545b134bd0ca07f3e19ccd75e3d0f2dae","unresolved":false,"context_lines":[{"line_number":79,"context_line":"                \u0027project_domain_name\u0027: self.project_domain_name}"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"    def get_auth_ref(self, session, **kwargs):"},{"line_number":82,"context_line":"        \"\"\"Authenticate via SAML2 protocol and retrieve unscoped token."},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"        This is a multi-step process where a client does federated authn"},{"line_number":85,"context_line":"        receives an unscoped token."}],"source_content_type":"text/x-python","patch_set":5,"id":"9a80dd14_08761ea4","line":82,"updated":"2015-03-20 06:23:24.000000000","message":"this should not be specific to SAML2 since this workflow sounds applicable to OIDC too","commit_id":"dc47bac11a7053b7236f5036a37b98bbbf1a6081"},{"author":{"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},"change_message_id":"0db5369545b134bd0ca07f3e19ccd75e3d0f2dae","unresolved":false,"context_lines":[{"line_number":88,"context_line":"        is present then the token is rescoped to that target."},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"        :param session :a session object to send out HTTP requests."},{"line_number":91,"context_line":"        :type session: keystoneclient.session.Session"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"        :return access.AccessInfoV3: an object with scoped token\u0027s id and"},{"line_number":94,"context_line":"                                     unscoped token json included."}],"source_content_type":"text/x-python","patch_set":5,"id":"9a80dd14_a8ab52d4","line":91,"updated":"2015-03-20 06:23:24.000000000","message":"doesn\u0027t render correctly in docs\n\nhttp://docs-draft.openstack.org/71/163271/5/check/gate-python-keystoneclient-docs/82b1d3e//doc/build/html/api/keystoneclient.auth.identity.v3.html#module-keystoneclient.auth.identity.v3.federated","commit_id":"dc47bac11a7053b7236f5036a37b98bbbf1a6081"},{"author":{"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},"change_message_id":"0db5369545b134bd0ca07f3e19ccd75e3d0f2dae","unresolved":false,"context_lines":[{"line_number":90,"context_line":"        :param session :a session object to send out HTTP requests."},{"line_number":91,"context_line":"        :type session: keystoneclient.session.Session"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"        :return access.AccessInfoV3: an object with scoped token\u0027s id and"},{"line_number":94,"context_line":"                                     unscoped token json included."},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":5,"id":"9a80dd14_c8b6c63d","line":93,"updated":"2015-03-20 06:23:24.000000000","message":"this too","commit_id":"dc47bac11a7053b7236f5036a37b98bbbf1a6081"}]}
