)]}'
{"keystone/tests/unit/test_v3_auth.py":[{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"9ffc87ecb283da81fb242f3113ca5d18b6d8708a","unresolved":false,"context_lines":[{"line_number":51,"context_line":"class TestMFARules(test_v3.RestfulTestCase):"},{"line_number":52,"context_line":"    def config_overrides(self):"},{"line_number":53,"context_line":"        super(TestMFARules, self).config_overrides()"},{"line_number":54,"context_line":"        self.config_fixture.config(group\u003d\u0027token\u0027, provider\u003d\u0027fernet\u0027,"},{"line_number":55,"context_line":"                                   cache_on_issue\u003dTrue)"},{"line_number":56,"context_line":"        self.useFixture("},{"line_number":57,"context_line":"            ksfixtures.KeyRepository("}],"source_content_type":"text/x-python","patch_set":3,"id":"3a461143_5077579f","line":54,"updated":"2017-01-31 15:06:31.000000000","message":"This is the default - any reason we need to explicitly specify it?","commit_id":"c4881c1c00de436d758c33caf63b1fffb838fed4"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"1f4be401124ea284ffec6fb4cff332e1450b9ef2","unresolved":false,"context_lines":[{"line_number":51,"context_line":"class TestMFARules(test_v3.RestfulTestCase):"},{"line_number":52,"context_line":"    def config_overrides(self):"},{"line_number":53,"context_line":"        super(TestMFARules, self).config_overrides()"},{"line_number":54,"context_line":"        self.config_fixture.config(group\u003d\u0027token\u0027, provider\u003d\u0027fernet\u0027,"},{"line_number":55,"context_line":"                                   cache_on_issue\u003dTrue)"},{"line_number":56,"context_line":"        self.useFixture("},{"line_number":57,"context_line":"            ksfixtures.KeyRepository("}],"source_content_type":"text/x-python","patch_set":3,"id":"3a461143_269a956e","line":54,"in_reply_to":"3a461143_5077579f","updated":"2017-01-31 15:55:00.000000000","message":"Nope, can remove it now, I was getting odd errors and flipped between UUID and Fernet here earlier.","commit_id":"c4881c1c00de436d758c33caf63b1fffb838fed4"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"9ffc87ecb283da81fb242f3113ca5d18b6d8708a","unresolved":false,"context_lines":[{"line_number":192,"context_line":"        # NOTE(notmorgan): Step forward in time to ensure we\u0027re not causing"},{"line_number":193,"context_line":"        # issues with revocation events that occur at the same time as the"},{"line_number":194,"context_line":"        # token issuance. This is a bug with the limited resolution that"},{"line_number":195,"context_line":"        # tokens and revocation events have."},{"line_number":196,"context_line":"        time \u003d datetime.datetime.utcnow() + datetime.timedelta(seconds\u003d5)"},{"line_number":197,"context_line":"        with freezegun.freeze_time(time):"},{"line_number":198,"context_line":"            auth_data \u003d self.build_authentication_request("}],"source_content_type":"text/x-python","patch_set":3,"id":"3a461143_b0431b12","line":195,"updated":"2017-01-31 15:06:31.000000000","message":"So this just means that users shouldn\u0027t be able to ask for tokens within the same time as updating resource options for a user?","commit_id":"c4881c1c00de436d758c33caf63b1fffb838fed4"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"1f4be401124ea284ffec6fb4cff332e1450b9ef2","unresolved":false,"context_lines":[{"line_number":192,"context_line":"        # NOTE(notmorgan): Step forward in time to ensure we\u0027re not causing"},{"line_number":193,"context_line":"        # issues with revocation events that occur at the same time as the"},{"line_number":194,"context_line":"        # token issuance. This is a bug with the limited resolution that"},{"line_number":195,"context_line":"        # tokens and revocation events have."},{"line_number":196,"context_line":"        time \u003d datetime.datetime.utcnow() + datetime.timedelta(seconds\u003d5)"},{"line_number":197,"context_line":"        with freezegun.freeze_time(time):"},{"line_number":198,"context_line":"            auth_data \u003d self.build_authentication_request("}],"source_content_type":"text/x-python","patch_set":3,"id":"3a461143_66e3bdd9","line":195,"in_reply_to":"3a461143_b0431b12","updated":"2017-01-31 15:55:00.000000000","message":"This means that users that get a token issued in the same second (before or after) a revocation event is issued will have a revoked token out the door. \n\nBad UX, and not sure the way to fix it short of doing something akin to revocation event issuance is now-1s (which leaves a 1s gap, but would be a better UX). Need to discuss the security implications with the team. \n\nshort story is we err more secure now... but it\u0027s a very bad ux in narrow windows (and some of our tests suck more to write)","commit_id":"c4881c1c00de436d758c33caf63b1fffb838fed4"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"9ffc87ecb283da81fb242f3113ca5d18b6d8708a","unresolved":false,"context_lines":[{"line_number":204,"context_line":"            auth_data \u003d self.build_authentication_request("},{"line_number":205,"context_line":"                token\u003dr.headers.get(\u0027X-Subject-Token\u0027),"},{"line_number":206,"context_line":"                project_id\u003dself.project_id)"},{"line_number":207,"context_line":"            self.v3_create_token(auth_data)"},{"line_number":208,"context_line":""},{"line_number":209,"context_line":""},{"line_number":210,"context_line":"class TestAuthInfo(common_auth.AuthTestMixin, testcase.TestCase):"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a461143_10beaffe","line":207,"updated":"2017-01-31 15:06:31.000000000","message":"We could add a little more validation here - but this should cover the case.","commit_id":"c4881c1c00de436d758c33caf63b1fffb838fed4"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"1f4be401124ea284ffec6fb4cff332e1450b9ef2","unresolved":false,"context_lines":[{"line_number":204,"context_line":"            auth_data \u003d self.build_authentication_request("},{"line_number":205,"context_line":"                token\u003dr.headers.get(\u0027X-Subject-Token\u0027),"},{"line_number":206,"context_line":"                project_id\u003dself.project_id)"},{"line_number":207,"context_line":"            self.v3_create_token(auth_data)"},{"line_number":208,"context_line":""},{"line_number":209,"context_line":""},{"line_number":210,"context_line":"class TestAuthInfo(common_auth.AuthTestMixin, testcase.TestCase):"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a461143_c6d471ed","line":207,"in_reply_to":"3a461143_10beaffe","updated":"2017-01-31 15:55:00.000000000","message":"We care the token was issued, this is an auth using a token to get another token (rescope). if we are worried about token rescope values, this is not the test to do it in, we test that elsewhere specifically.","commit_id":"c4881c1c00de436d758c33caf63b1fffb838fed4"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"055d514967da9a0576e3ba74d7de4daf9fed534a","unresolved":false,"context_lines":[{"line_number":229,"context_line":"        self._update_user_with_MFA_rules(rule_list\u003drule_list)"},{"line_number":230,"context_line":"        # NOTE(notmorgan): Step forward in time to ensure we\u0027re not causing"},{"line_number":231,"context_line":"        # issues with revocation events that occur at the same time as the"},{"line_number":232,"context_line":"        # token issuance. This is a bug with the limited resolution that"},{"line_number":233,"context_line":"        # tokens and revocation events have."},{"line_number":234,"context_line":"        time \u003d datetime.datetime.utcnow() + datetime.timedelta(seconds\u003d5)"},{"line_number":235,"context_line":"        with freezegun.freeze_time(time):"},{"line_number":236,"context_line":"            auth_data \u003d self.build_authentication_request("}],"source_content_type":"text/x-python","patch_set":4,"id":"3a461143_b854ddc9","line":233,"range":{"start_line":232,"start_character":26,"end_line":233,"end_character":44},"updated":"2017-01-31 17:42:38.000000000","message":"is there a bug reported or something ? if we leave this as it is we\u0027ll never get back to it again.","commit_id":"113055774a04c6ed2339e4918e3abda325e8a59f"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"8a4c8ff1645322f95411206d2f82c0d157929b6d","unresolved":false,"context_lines":[{"line_number":229,"context_line":"        self._update_user_with_MFA_rules(rule_list\u003drule_list)"},{"line_number":230,"context_line":"        # NOTE(notmorgan): Step forward in time to ensure we\u0027re not causing"},{"line_number":231,"context_line":"        # issues with revocation events that occur at the same time as the"},{"line_number":232,"context_line":"        # token issuance. This is a bug with the limited resolution that"},{"line_number":233,"context_line":"        # tokens and revocation events have."},{"line_number":234,"context_line":"        time \u003d datetime.datetime.utcnow() + datetime.timedelta(seconds\u003d5)"},{"line_number":235,"context_line":"        with freezegun.freeze_time(time):"},{"line_number":236,"context_line":"            auth_data \u003d self.build_authentication_request("}],"source_content_type":"text/x-python","patch_set":4,"id":"3a461143_3b98e769","line":233,"range":{"start_line":232,"start_character":26,"end_line":233,"end_character":44},"in_reply_to":"3a461143_b854ddc9","updated":"2017-01-31 18:10:24.000000000","message":"Not sure we can fix it. it is not directly reported as such because it may not be fixable.","commit_id":"113055774a04c6ed2339e4918e3abda325e8a59f"}]}
