)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"f3a1c579a090e9fb6093f62c3b463b89a880781b","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"More messages about validating token failed"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"If a token has expired, the response is just \u0027Failed to validate token\u0027"},{"line_number":10,"context_line":"without the specific reason about it."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I61d97e3acfb899adf2977c4ec3d4a30b2df18fd9"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"ff0f0b1f_6a55f81c","line":10,"range":{"start_line":9,"start_character":0,"end_line":10,"end_character":37},"updated":"2017-05-21 11:05:40.000000000","message":"and it continues to be with this patch","commit_id":"5e0ab098326b3f466b5d4b19f9f2160403e00db1"}],"keystone/token/provider.py":[{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"aeaf026a609330a4ce6c0715faa23770ba9b84f1","unresolved":false,"context_lines":[{"line_number":210,"context_line":"            # Token has not expired and has not been revoked."},{"line_number":211,"context_line":"            return None"},{"line_number":212,"context_line":"        else:"},{"line_number":213,"context_line":"            LOG.debug(\u0027Token has expired.\u0027)"},{"line_number":214,"context_line":"            raise exception.TokenNotFound(_(\u0027Failed to validate token\u0027))"},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"    def issue_token(self, user_id, method_names, expires_at\u003dNone,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f044301_10a1cd46","line":213,"range":{"start_line":213,"start_character":12,"end_line":213,"end_character":43},"updated":"2017-05-11 20:16:11.000000000","message":"how this is going to help? This is very generic and won\u0027t account to identify the expired token. I\u0027d rather update the exception message.","commit_id":"5e0ab098326b3f466b5d4b19f9f2160403e00db1"},{"author":{"_account_id":16465,"name":"Kristi Nikolla","email":"knikolla@bu.edu","username":"knikolla"},"change_message_id":"3373fa1ca6e15780668740842fb4f57dcde7bbfa","unresolved":false,"context_lines":[{"line_number":210,"context_line":"            # Token has not expired and has not been revoked."},{"line_number":211,"context_line":"            return None"},{"line_number":212,"context_line":"        else:"},{"line_number":213,"context_line":"            LOG.debug(\u0027Token has expired.\u0027)"},{"line_number":214,"context_line":"            raise exception.TokenNotFound(_(\u0027Failed to validate token\u0027))"},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"    def issue_token(self, user_id, method_names, expires_at\u003dNone,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f044301_8b901245","line":213,"range":{"start_line":213,"start_character":12,"end_line":213,"end_character":43},"in_reply_to":"3f044301_10a1cd46","updated":"2017-05-11 20:59:43.000000000","message":"++ Agree with Rodrigo.","commit_id":"5e0ab098326b3f466b5d4b19f9f2160403e00db1"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"17113b43b5a3eee4c94eb13b76560873fd5e8eb6","unresolved":false,"context_lines":[{"line_number":211,"context_line":"            # Token has not expired and has not been revoked."},{"line_number":212,"context_line":"            return None"},{"line_number":213,"context_line":"        else:"},{"line_number":214,"context_line":"            LOG.warning(\u0027Token %s has expired\u0027, token_id)"},{"line_number":215,"context_line":"            raise exception.TokenNotFound(_(\u0027Failed to validate token\u0027))"},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"    def issue_token(self, user_id, method_names, expires_at\u003dNone,"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff0f0b1f_67aac3d2","line":214,"updated":"2017-05-22 08:50:50.000000000","message":"I was fine with this message at the debug level in the earlier patchset, but I think including the token ID at warning level or in the exception is problematic. The token ID is a bearer token and log warnings and exceptions are not necessarily as locked down as debug logs. This change dangerously exposes the token.","commit_id":"6c63dff49a9eea53109beaa04921e74d350e8ead"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"afb2705ab993413a809472e55573d0510205c36c","unresolved":false,"context_lines":[{"line_number":211,"context_line":"            # Token has not expired and has not been revoked."},{"line_number":212,"context_line":"            return None"},{"line_number":213,"context_line":"        else:"},{"line_number":214,"context_line":"            LOG.warning(\u0027Token %s has expired\u0027, token_id)"},{"line_number":215,"context_line":"            raise exception.TokenNotFound(_(\u0027Failed to validate token\u0027))"},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"    def issue_token(self, user_id, method_names, expires_at\u003dNone,"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff0f0b1f_8ad39bd5","line":214,"in_reply_to":"ff0f0b1f_67aac3d2","updated":"2017-05-22 11:17:17.000000000","message":"++ please don\u0027t write tokens in logs","commit_id":"6c63dff49a9eea53109beaa04921e74d350e8ead"},{"author":{"_account_id":16465,"name":"Kristi Nikolla","email":"knikolla@bu.edu","username":"knikolla"},"change_message_id":"db3831a5b5d64afb23c0d2ee38f9df1669198ee9","unresolved":false,"context_lines":[{"line_number":211,"context_line":"            # Token has not expired and has not been revoked."},{"line_number":212,"context_line":"            return None"},{"line_number":213,"context_line":"        else:"},{"line_number":214,"context_line":"            LOG.warning(\u0027Token %s has expired\u0027, token_id)"},{"line_number":215,"context_line":"            raise exception.TokenNotFound(_(\u0027Failed to validate token\u0027))"},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"    def issue_token(self, user_id, method_names, expires_at\u003dNone,"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff0f0b1f_d13823ef","line":214,"in_reply_to":"ff0f0b1f_8a16fb54","updated":"2017-05-22 15:20:31.000000000","message":"This shouldn\u0027t be a warning. People using expired tokens happens all the time, a lot of clients are coded to handle refreshing a token when it expires and they will keep using it until that happens.\n\nAlso there is no need to log the token and please don\u0027t do so.","commit_id":"6c63dff49a9eea53109beaa04921e74d350e8ead"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"e1c620b23a03153541ca1881373c00c7f34b57fc","unresolved":false,"context_lines":[{"line_number":211,"context_line":"            # Token has not expired and has not been revoked."},{"line_number":212,"context_line":"            return None"},{"line_number":213,"context_line":"        else:"},{"line_number":214,"context_line":"            LOG.warning(\u0027Token %s has expired\u0027, token_id)"},{"line_number":215,"context_line":"            raise exception.TokenNotFound(_(\u0027Failed to validate token\u0027))"},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"    def issue_token(self, user_id, method_names, expires_at\u003dNone,"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff0f0b1f_8a16fb54","line":214,"in_reply_to":"ff0f0b1f_8ad39bd5","updated":"2017-05-22 11:22:24.000000000","message":"This conflicts with Kristi and Rodrigo\u0027s advice to identify the token, so we need some consensus here.","commit_id":"6c63dff49a9eea53109beaa04921e74d350e8ead"}]}
