)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":15054,"name":"wangxiyuan","email":"wangxiyuan1007@gmail.com","username":"wangxiyuan"},"change_message_id":"8548aec74c2f6ecd00452ec78e9ec85d8ac4c386","unresolved":false,"context_lines":[{"line_number":11,"context_line":"  1. Allow a service to provide its own auth mechanism, separate from"},{"line_number":12,"context_line":"     auth tokens (like Swift\u0027s tempurl middleware)."},{"line_number":13,"context_line":"  2. Allow a service to integrate with multiple auth middlewares which"},{"line_number":14,"context_line":"     may want to use the same X-Auth-Token header."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"The first case works fine even when the service has trouble talking to"},{"line_number":17,"context_line":"Keystone -- the client doesn\u0027t send an X-Auth-Token header, so we never"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3f79a3b5_fac4c143","line":14,"range":{"start_line":14,"start_character":17,"end_line":14,"end_character":50},"updated":"2018-09-10 09:18:09.000000000","message":"I\u0027m not quite agree with this.\n\nI suppose \"X-auth/service-token\" is the header for OpenStack service specially, so if the request contains \"X-auth/service-toke\" header, it means that the request want the header be validated in OpenStack services. If you use a thrid-part auth service, why not use a new header for it as well?\n\nAny reason why you still use \"X-Auth-Token\" but don\u0027t use Keystone for validation?","commit_id":"682d28df70f43b7bd7353abc355fee9b89a616b4"},{"author":{"_account_id":15054,"name":"wangxiyuan","email":"wangxiyuan1007@gmail.com","username":"wangxiyuan"},"change_message_id":"d31ac9c61e8b6a0ef0eb12be50720ebd59d1d583","unresolved":false,"context_lines":[{"line_number":11,"context_line":"  1. Allow a service to provide its own auth mechanism, separate from"},{"line_number":12,"context_line":"     auth tokens (like Swift\u0027s tempurl middleware)."},{"line_number":13,"context_line":"  2. Allow a service to integrate with multiple auth middlewares which"},{"line_number":14,"context_line":"     may want to use the same X-Auth-Token header."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"The first case works fine even when the service has trouble talking to"},{"line_number":17,"context_line":"Keystone -- the client doesn\u0027t send an X-Auth-Token header, so we never"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3f79a3b5_2094388c","line":14,"range":{"start_line":14,"start_character":17,"end_line":14,"end_character":50},"in_reply_to":"3f79a3b5_ae7ccbb6","updated":"2018-09-11 02:00:36.000000000","message":"Swauth use either \u0027HTTP_X_AUTH_TOKEN\u0027 or \u0027HTTP_X_STORAGE_TOKEN\u0027 header. Maybe \u0027HTTP_X_AUTH_TOKEN\u0027 is for compatibility? Make sense.","commit_id":"682d28df70f43b7bd7353abc355fee9b89a616b4"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"427f1d0893d3f334fb6dff28018de3ac9c017fbd","unresolved":false,"context_lines":[{"line_number":11,"context_line":"  1. Allow a service to provide its own auth mechanism, separate from"},{"line_number":12,"context_line":"     auth tokens (like Swift\u0027s tempurl middleware)."},{"line_number":13,"context_line":"  2. Allow a service to integrate with multiple auth middlewares which"},{"line_number":14,"context_line":"     may want to use the same X-Auth-Token header."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"The first case works fine even when the service has trouble talking to"},{"line_number":17,"context_line":"Keystone -- the client doesn\u0027t send an X-Auth-Token header, so we never"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3f79a3b5_ae7ccbb6","line":14,"range":{"start_line":14,"start_character":17,"end_line":14,"end_character":50},"in_reply_to":"3f79a3b5_fac4c143","updated":"2018-09-10 14:07:59.000000000","message":"\"Legacy code\" :-/\n\nSee https://github.com/openstack/swauth/blob/1.3.0/swauth/middleware.py#L239 or https://github.com/openstack/swift/blob/2.19.0/swift/common/middleware/tempauth.py#L279","commit_id":"682d28df70f43b7bd7353abc355fee9b89a616b4"}],"keystonemiddleware/auth_token/__init__.py":[{"author":{"_account_id":15054,"name":"wangxiyuan","email":"wangxiyuan1007@gmail.com","username":"wangxiyuan"},"change_message_id":"d31ac9c61e8b6a0ef0eb12be50720ebd59d1d583","unresolved":false,"context_lines":[{"line_number":768,"context_line":"                ksm_exceptions.RevocationListError,"},{"line_number":769,"context_line":"                ksm_exceptions.ServiceError) as e:"},{"line_number":770,"context_line":"            self.log.critical(\u0027Unable to validate token: %s\u0027, e)"},{"line_number":771,"context_line":"            if self._delay_auth_decision:"},{"line_number":772,"context_line":"                raise ksm_exceptions.InvalidToken("},{"line_number":773,"context_line":"                    \u0027Keystone unavailable: %s\u0027 % e)"},{"line_number":774,"context_line":"            raise webob.exc.HTTPServiceUnavailable("}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_008b3c68","line":771,"updated":"2018-09-11 02:00:36.000000000","message":"it\u0027s good to add a log with more info here. something like, can\u0027t connect to Keystone, but treat the token as Invalid meanwhile for delay authentication.","commit_id":"682d28df70f43b7bd7353abc355fee9b89a616b4"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"0927a732c12ef480d51aed74fba93ff625c4c284","unresolved":false,"context_lines":[{"line_number":768,"context_line":"                ksm_exceptions.RevocationListError,"},{"line_number":769,"context_line":"                ksm_exceptions.ServiceError) as e:"},{"line_number":770,"context_line":"            self.log.critical(\u0027Unable to validate token: %s\u0027, e)"},{"line_number":771,"context_line":"            if self._delay_auth_decision:"},{"line_number":772,"context_line":"                raise ksm_exceptions.InvalidToken("},{"line_number":773,"context_line":"                    \u0027Keystone unavailable: %s\u0027 % e)"},{"line_number":774,"context_line":"            raise webob.exc.HTTPServiceUnavailable("}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_1b0acd26","line":771,"in_reply_to":"3f79a3b5_008b3c68","updated":"2018-09-11 06:33:36.000000000","message":"Info level sound good? Or would debug be better?","commit_id":"682d28df70f43b7bd7353abc355fee9b89a616b4"},{"author":{"_account_id":15054,"name":"wangxiyuan","email":"wangxiyuan1007@gmail.com","username":"wangxiyuan"},"change_message_id":"f9af649aac627e47d05587673aec443ea4f15ecb","unresolved":false,"context_lines":[{"line_number":768,"context_line":"                ksm_exceptions.RevocationListError,"},{"line_number":769,"context_line":"                ksm_exceptions.ServiceError) as e:"},{"line_number":770,"context_line":"            self.log.critical(\u0027Unable to validate token: %s\u0027, e)"},{"line_number":771,"context_line":"            if self._delay_auth_decision:"},{"line_number":772,"context_line":"                raise ksm_exceptions.InvalidToken("},{"line_number":773,"context_line":"                    \u0027Keystone unavailable: %s\u0027 % e)"},{"line_number":774,"context_line":"            raise webob.exc.HTTPServiceUnavailable("}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_463dc9ba","line":771,"in_reply_to":"3f79a3b5_1b0acd26","updated":"2018-09-11 09:06:48.000000000","message":"emm, Sorry for the misleading. I mean \"information\". Of cause it should be debug level.","commit_id":"682d28df70f43b7bd7353abc355fee9b89a616b4"}]}
