)]}'
{"specs/keystonemiddleware/audit_filter.rst":[{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"28158ea8e8ad9abc5ff0276523f3dc1061f3b022","unresolved":false,"context_lines":[{"line_number":11,"context_line":"https://blueprints.launchpad.net/keystone/+sec/audit_filter"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"the pyCADF library contains middleware which enables the ability to audit"},{"line_number":14,"context_line":"API calls to a given service. the audit "},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Problem Description"},{"line_number":17,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_dd332d12","line":14,"updated":"2014-07-03 16:46:08.000000000","message":"white space","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"c640a91ff0aeae4fc5d8eac7b089fba88238955c","unresolved":false,"context_lines":[{"line_number":11,"context_line":"https://blueprints.launchpad.net/keystone/+sec/audit_filter"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"the pyCADF library contains middleware which enables the ability to audit"},{"line_number":14,"context_line":"API calls to a given service. the audit "},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Problem Description"},{"line_number":17,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_e4a4c34c","line":14,"in_reply_to":"baada198_dd332d12","updated":"2014-07-04 09:37:27.000000000","message":"Done","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"28158ea8e8ad9abc5ff0276523f3dc1061f3b022","unresolved":false,"context_lines":[{"line_number":16,"context_line":"Problem Description"},{"line_number":17,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"auditing is heavily tied to identity but currently the audit middleware exists"},{"line_number":20,"context_line":"in pyCADF library while the identity middlewares are contained in"},{"line_number":21,"context_line":"keystonemiddleware. this requires deployers to explicitly pull in multiple"},{"line_number":22,"context_line":"dependencies. since there\u0027s a logic association between them, the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_dd1a4d7c","line":19,"updated":"2014-07-03 16:46:08.000000000","message":"Capitalize the sentence starts through out.","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"c640a91ff0aeae4fc5d8eac7b089fba88238955c","unresolved":false,"context_lines":[{"line_number":16,"context_line":"Problem Description"},{"line_number":17,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"auditing is heavily tied to identity but currently the audit middleware exists"},{"line_number":20,"context_line":"in pyCADF library while the identity middlewares are contained in"},{"line_number":21,"context_line":"keystonemiddleware. this requires deployers to explicitly pull in multiple"},{"line_number":22,"context_line":"dependencies. since there\u0027s a logic association between them, the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_6470b3dc","line":19,"in_reply_to":"baada198_dd1a4d7c","updated":"2014-07-04 09:37:27.000000000","message":"this is the bane of me. :)","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"28158ea8e8ad9abc5ff0276523f3dc1061f3b022","unresolved":false,"context_lines":[{"line_number":29,"context_line":"https://github.com/openstack/pycadf/blob/master/pycadf/middleware/audit.py"},{"line_number":30,"context_line":"the proposed solution is to move this middleware into keystonemiddleware."},{"line_number":31,"context_line":"this solution also brings in a dependency on oslo.messaging as the current"},{"line_number":32,"context_line":"audit middleware places audit events to message queue."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"Alternatives"},{"line_number":35,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_a01bb071","line":32,"updated":"2014-07-03 16:46:08.000000000","message":"Does this also add pycadf dependency to keystonemiddleware? Any others?","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"c640a91ff0aeae4fc5d8eac7b089fba88238955c","unresolved":false,"context_lines":[{"line_number":29,"context_line":"https://github.com/openstack/pycadf/blob/master/pycadf/middleware/audit.py"},{"line_number":30,"context_line":"the proposed solution is to move this middleware into keystonemiddleware."},{"line_number":31,"context_line":"this solution also brings in a dependency on oslo.messaging as the current"},{"line_number":32,"context_line":"audit middleware places audit events to message queue."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"Alternatives"},{"line_number":35,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_b7a84d21","line":32,"in_reply_to":"baada198_a01bb071","updated":"2014-07-04 09:37:27.000000000","message":"see dependencies below","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"28158ea8e8ad9abc5ff0276523f3dc1061f3b022","unresolved":false,"context_lines":[{"line_number":43,"context_line":"  dependency. notifications can be delegated to notifiermiddleware but"},{"line_number":44,"context_line":"  requires a change to notifiermiddleware to properly audit but request and"},{"line_number":45,"context_line":"  response."},{"line_number":46,"context_line":"  "},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"Data Model Impact"},{"line_number":49,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_fd38f1f0","line":46,"updated":"2014-07-03 16:46:08.000000000","message":"white space","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"c640a91ff0aeae4fc5d8eac7b089fba88238955c","unresolved":false,"context_lines":[{"line_number":43,"context_line":"  dependency. notifications can be delegated to notifiermiddleware but"},{"line_number":44,"context_line":"  requires a change to notifiermiddleware to properly audit but request and"},{"line_number":45,"context_line":"  response."},{"line_number":46,"context_line":"  "},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"Data Model Impact"},{"line_number":49,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_c4a7bf4e","line":46,"in_reply_to":"baada198_fd38f1f0","updated":"2014-07-04 09:37:27.000000000","message":"Done","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"28158ea8e8ad9abc5ff0276523f3dc1061f3b022","unresolved":false,"context_lines":[{"line_number":65,"context_line":"in what it adds to audit event model. currently, the token is captured but"},{"line_number":66,"context_line":"obfuscated by stripping out a portion of middle characters (ie. first and last"},{"line_number":67,"context_line":"x characters are kept, the rest replaced with \u0027xxxxxx\u0027 similar to how credit"},{"line_number":68,"context_line":"cards are handled)"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"Notifications Impact"},{"line_number":71,"context_line":"--------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_a049f061","line":68,"updated":"2014-07-03 16:46:08.000000000","message":"Please be more specific about how many characters are stripped? How does this work with PKI tokens? How much data is embeded in the notification.","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"c640a91ff0aeae4fc5d8eac7b089fba88238955c","unresolved":false,"context_lines":[{"line_number":65,"context_line":"in what it adds to audit event model. currently, the token is captured but"},{"line_number":66,"context_line":"obfuscated by stripping out a portion of middle characters (ie. first and last"},{"line_number":67,"context_line":"x characters are kept, the rest replaced with \u0027xxxxxx\u0027 similar to how credit"},{"line_number":68,"context_line":"cards are handled)"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"Notifications Impact"},{"line_number":71,"context_line":"--------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_777955c7","line":68,"in_reply_to":"baada198_a049f061","updated":"2014-07-04 09:37:27.000000000","message":"Done","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"28158ea8e8ad9abc5ff0276523f3dc1061f3b022","unresolved":false,"context_lines":[{"line_number":72,"context_line":""},{"line_number":73,"context_line":"the proposed solution will have the middleware send two notifications per API"},{"line_number":74,"context_line":"request. it can be configured to only audit certain API requests (ie. just GET"},{"line_number":75,"context_line":"requests) to minimise notifications."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Other End User Impact"},{"line_number":78,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_606a78b4","line":75,"updated":"2014-07-03 16:46:08.000000000","message":"What are the two notifications, please expand on the details.","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"c640a91ff0aeae4fc5d8eac7b089fba88238955c","unresolved":false,"context_lines":[{"line_number":72,"context_line":""},{"line_number":73,"context_line":"the proposed solution will have the middleware send two notifications per API"},{"line_number":74,"context_line":"request. it can be configured to only audit certain API requests (ie. just GET"},{"line_number":75,"context_line":"requests) to minimise notifications."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Other End User Impact"},{"line_number":78,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_ff436cac","line":75,"in_reply_to":"baada198_606a78b4","updated":"2014-07-04 09:37:27.000000000","message":"Done","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"28158ea8e8ad9abc5ff0276523f3dc1061f3b022","unresolved":false,"context_lines":[{"line_number":82,"context_line":"Performance Impact"},{"line_number":83,"context_line":"------------------"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"this will create more load on MQ if enabled."},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"Other Deployer Impact"},{"line_number":88,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_00a37c01","line":85,"updated":"2014-07-03 16:46:08.000000000","message":"Is MQ enabled by default or is it optional only?","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"c640a91ff0aeae4fc5d8eac7b089fba88238955c","unresolved":false,"context_lines":[{"line_number":82,"context_line":"Performance Impact"},{"line_number":83,"context_line":"------------------"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"this will create more load on MQ if enabled."},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"Other Deployer Impact"},{"line_number":88,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_b77f6daa","line":85,"in_reply_to":"baada198_00a37c01","updated":"2014-07-04 09:37:27.000000000","message":"Done","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"28158ea8e8ad9abc5ff0276523f3dc1061f3b022","unresolved":false,"context_lines":[{"line_number":105,"context_line":"  chungg"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"Other contributors:"},{"line_number":108,"context_line":"  chungg"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"Work Items"},{"line_number":111,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_c0b42437","line":108,"updated":"2014-07-03 16:46:08.000000000","message":"(NIT): don\u0027t need to add yourself twice to do work.","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"c640a91ff0aeae4fc5d8eac7b089fba88238955c","unresolved":false,"context_lines":[{"line_number":105,"context_line":"  chungg"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"Other contributors:"},{"line_number":108,"context_line":"  chungg"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"Work Items"},{"line_number":111,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_f733a511","line":108,"in_reply_to":"baada198_c0b42437","updated":"2014-07-04 09:37:27.000000000","message":"Done","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"28158ea8e8ad9abc5ff0276523f3dc1061f3b022","unresolved":false,"context_lines":[{"line_number":122,"context_line":"Testing"},{"line_number":123,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"copy in existing unit tests for audit middleware"},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"Documentation Impact"},{"line_number":128,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_207b207c","line":125,"updated":"2014-07-03 16:46:08.000000000","message":"Is there tempest testing? Will there be?","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"c640a91ff0aeae4fc5d8eac7b089fba88238955c","unresolved":false,"context_lines":[{"line_number":122,"context_line":"Testing"},{"line_number":123,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"copy in existing unit tests for audit middleware"},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"Documentation Impact"},{"line_number":128,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_573ff1d5","line":125,"in_reply_to":"baada198_207b207c","updated":"2014-07-04 09:37:27.000000000","message":"nope, i don\u0027t think we need this unless we start enabling this by default in other projects. it\u0027s still an optional path","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"28158ea8e8ad9abc5ff0276523f3dc1061f3b022","unresolved":false,"context_lines":[{"line_number":127,"context_line":"Documentation Impact"},{"line_number":128,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"None"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"References"},{"line_number":133,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_00d8dc79","line":130,"updated":"2014-07-03 16:46:08.000000000","message":"Documentation on enabling the new middleware (or disabling) will be needed.","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"c640a91ff0aeae4fc5d8eac7b089fba88238955c","unresolved":false,"context_lines":[{"line_number":127,"context_line":"Documentation Impact"},{"line_number":128,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"None"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"References"},{"line_number":133,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"baada198_7f3e7cdb","line":130,"in_reply_to":"baada198_00d8dc79","updated":"2014-07-04 09:37:27.000000000","message":"Done","commit_id":"d65e692eb38fc90d45e9c468b0472e71e61ff4d3"}]}
