)]}'
{"specs/kilo/tokens-swift-backend.rst":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"a40d858c3f3c0cc27b72aa9c1db54b482126d5ee","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"9aa7fdbe_510b39d5","updated":"2014-10-28 18:18:01.000000000","message":"no where in the spec is it mentioned *how* the performance issue is resolved. when I look at the PoC, I understand now that the tokens/objects are deleted automatically whenever they reach their pre-determined expiration time, by leveraging the X-Delete-At header. \n\nplease mention this somewhere in the next version.\n\nalso, has this header/options been used at the capacity of a typical token table? with several thousand objects?","commit_id":"643e96ef4ee1e1006b66104bd13f5636dd85eaf1"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"056a289e3e932cf8147b279410f77a2425abb140","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"9aa7fdbe_b887d8b5","in_reply_to":"9aa7fdbe_510b39d5","updated":"2014-10-29 08:20:26.000000000","message":"Done","commit_id":"643e96ef4ee1e1006b66104bd13f5636dd85eaf1"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"a40d858c3f3c0cc27b72aa9c1db54b482126d5ee","unresolved":false,"context_lines":[{"line_number":4,"context_line":""},{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":8,"context_line":"Swift backend for keystone token"},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"9aa7fdbe_eefa8c41","line":7,"updated":"2014-10-28 18:18:01.000000000","message":"these \u003d\u0027s should be the same length as the title","commit_id":"643e96ef4ee1e1006b66104bd13f5636dd85eaf1"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"056a289e3e932cf8147b279410f77a2425abb140","unresolved":false,"context_lines":[{"line_number":4,"context_line":""},{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":8,"context_line":"Swift backend for keystone token"},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"9aa7fdbe_58098cdc","line":7,"in_reply_to":"9aa7fdbe_eefa8c41","updated":"2014-10-29 08:20:26.000000000","message":"Done","commit_id":"643e96ef4ee1e1006b66104bd13f5636dd85eaf1"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"a40d858c3f3c0cc27b72aa9c1db54b482126d5ee","unresolved":false,"context_lines":[{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":8,"context_line":"Swift backend for keystone token"},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"`tokens-swift-backend \u003chttps://blueprints.launchpad.net/keystone/+spec/tokens-swift-backend\u003e`_"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9aa7fdbe_ae04044a","line":8,"updated":"2014-10-28 18:18:01.000000000","message":"Keystone*","commit_id":"643e96ef4ee1e1006b66104bd13f5636dd85eaf1"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"056a289e3e932cf8147b279410f77a2425abb140","unresolved":false,"context_lines":[{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":8,"context_line":"Swift backend for keystone token"},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"`tokens-swift-backend \u003chttps://blueprints.launchpad.net/keystone/+spec/tokens-swift-backend\u003e`_"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9aa7fdbe_9813f40c","line":8,"in_reply_to":"9aa7fdbe_ae04044a","updated":"2014-10-29 08:20:26.000000000","message":"Done","commit_id":"643e96ef4ee1e1006b66104bd13f5636dd85eaf1"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"a40d858c3f3c0cc27b72aa9c1db54b482126d5ee","unresolved":false,"context_lines":[{"line_number":11,"context_line":"`tokens-swift-backend \u003chttps://blueprints.launchpad.net/keystone/+spec/tokens-swift-backend\u003e`_"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"The purpose of this blueprint is to add a persistence token storage"},{"line_number":14,"context_line":"that use swift."},{"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":"9aa7fdbe_4ef4785a","line":14,"updated":"2014-10-28 18:18:01.000000000","message":"uses* Swift*","commit_id":"643e96ef4ee1e1006b66104bd13f5636dd85eaf1"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"056a289e3e932cf8147b279410f77a2425abb140","unresolved":false,"context_lines":[{"line_number":11,"context_line":"`tokens-swift-backend \u003chttps://blueprints.launchpad.net/keystone/+spec/tokens-swift-backend\u003e`_"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"The purpose of this blueprint is to add a persistence token storage"},{"line_number":14,"context_line":"that use swift."},{"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":"9aa7fdbe_382a08e8","line":14,"in_reply_to":"9aa7fdbe_4ef4785a","updated":"2014-10-29 08:20:26.000000000","message":"Done","commit_id":"643e96ef4ee1e1006b66104bd13f5636dd85eaf1"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"a40d858c3f3c0cc27b72aa9c1db54b482126d5ee","unresolved":false,"context_lines":[{"line_number":29,"context_line":"Proposed Change"},{"line_number":30,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"Using swift as kvs storage in keystone. The swift performance will not reduce"},{"line_number":33,"context_line":"when the number of token increase and the time to retrieve/validate a token"},{"line_number":34,"context_line":"stay the same for any number of stored token."},{"line_number":35,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"9aa7fdbe_0e8d10d3","line":32,"updated":"2014-10-28 18:18:01.000000000","message":"capitalize the project names please","commit_id":"643e96ef4ee1e1006b66104bd13f5636dd85eaf1"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"056a289e3e932cf8147b279410f77a2425abb140","unresolved":false,"context_lines":[{"line_number":29,"context_line":"Proposed Change"},{"line_number":30,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"Using swift as kvs storage in keystone. The swift performance will not reduce"},{"line_number":33,"context_line":"when the number of token increase and the time to retrieve/validate a token"},{"line_number":34,"context_line":"stay the same for any number of stored token."},{"line_number":35,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"9aa7fdbe_582fccf6","line":32,"in_reply_to":"9aa7fdbe_0e8d10d3","updated":"2014-10-29 08:20:26.000000000","message":"Done","commit_id":"643e96ef4ee1e1006b66104bd13f5636dd85eaf1"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"a40d858c3f3c0cc27b72aa9c1db54b482126d5ee","unresolved":false,"context_lines":[{"line_number":36,"context_line":"Alternatives"},{"line_number":37,"context_line":"------------"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"one."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"Security Impact"},{"line_number":42,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9aa7fdbe_2ebf3462","line":39,"updated":"2014-10-28 18:18:01.000000000","message":"None*","commit_id":"643e96ef4ee1e1006b66104bd13f5636dd85eaf1"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"056a289e3e932cf8147b279410f77a2425abb140","unresolved":false,"context_lines":[{"line_number":36,"context_line":"Alternatives"},{"line_number":37,"context_line":"------------"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"one."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"Security Impact"},{"line_number":42,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9aa7fdbe_381128b0","line":39,"in_reply_to":"9aa7fdbe_2ebf3462","updated":"2014-10-29 08:20:26.000000000","message":"Done","commit_id":"643e96ef4ee1e1006b66104bd13f5636dd85eaf1"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"a40d858c3f3c0cc27b72aa9c1db54b482126d5ee","unresolved":false,"context_lines":[{"line_number":56,"context_line":"Performance Impact"},{"line_number":57,"context_line":"------------------"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"None."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"Other Deployer Impact"},{"line_number":62,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9aa7fdbe_ae608401","line":59,"updated":"2014-10-28 18:18:01.000000000","message":"mention that the performance is better for persistent tokens","commit_id":"643e96ef4ee1e1006b66104bd13f5636dd85eaf1"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"056a289e3e932cf8147b279410f77a2425abb140","unresolved":false,"context_lines":[{"line_number":56,"context_line":"Performance Impact"},{"line_number":57,"context_line":"------------------"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"None."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"Other Deployer Impact"},{"line_number":62,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9aa7fdbe_184544b3","line":59,"in_reply_to":"9aa7fdbe_ae608401","updated":"2014-10-29 08:20:26.000000000","message":"Done","commit_id":"643e96ef4ee1e1006b66104bd13f5636dd85eaf1"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"a40d858c3f3c0cc27b72aa9c1db54b482126d5ee","unresolved":false,"context_lines":[{"line_number":89,"context_line":"Dependencies"},{"line_number":90,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"None."},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"Documentation Impact"},{"line_number":95,"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":"9aa7fdbe_ce74e8d0","line":92,"updated":"2014-10-28 18:18:01.000000000","message":"depends on swiftclient","commit_id":"643e96ef4ee1e1006b66104bd13f5636dd85eaf1"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"056a289e3e932cf8147b279410f77a2425abb140","unresolved":false,"context_lines":[{"line_number":89,"context_line":"Dependencies"},{"line_number":90,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"None."},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"Documentation Impact"},{"line_number":95,"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":"9aa7fdbe_f847a0ba","line":92,"in_reply_to":"9aa7fdbe_ce74e8d0","updated":"2014-10-29 08:20:26.000000000","message":"Done","commit_id":"643e96ef4ee1e1006b66104bd13f5636dd85eaf1"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"a40d858c3f3c0cc27b72aa9c1db54b482126d5ee","unresolved":false,"context_lines":[{"line_number":94,"context_line":"Documentation Impact"},{"line_number":95,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"None."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"References"},{"line_number":100,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9aa7fdbe_0ea43049","line":97,"updated":"2014-10-28 18:18:01.000000000","message":"should probably document how to use it","commit_id":"643e96ef4ee1e1006b66104bd13f5636dd85eaf1"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"056a289e3e932cf8147b279410f77a2425abb140","unresolved":false,"context_lines":[{"line_number":94,"context_line":"Documentation Impact"},{"line_number":95,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"None."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"References"},{"line_number":100,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9aa7fdbe_38eda88f","line":97,"in_reply_to":"9aa7fdbe_0ea43049","updated":"2014-10-29 08:20:26.000000000","message":"Done","commit_id":"643e96ef4ee1e1006b66104bd13f5636dd85eaf1"},{"author":{"_account_id":9142,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@lsd.ufcg.edu.br","username":"samuel-z","inactive":true},"change_message_id":"b9d8faabc62f09685fae273b8898864b035b1294","unresolved":false,"context_lines":[{"line_number":8,"context_line":"Swift backend for Keystone token"},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"`tokens-swift-backend \u003chttps://blueprints.launchpad.net/keystone/+spec/tokens-swift-backend\u003e`_"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"The purpose of this blueprint is to add a persistence token storage"},{"line_number":14,"context_line":"that use Swift."}],"source_content_type":"text/x-rst","patch_set":5,"id":"3a961159_285fb473","line":11,"updated":"2014-12-10 12:12:31.000000000","message":"`bp tokens-swift-backend \u003chttps://blueprints.launchpad.net/keystone/+spec/tokens-swift-backend\u003e`_","commit_id":"070b32c1d1efea58dad481627c9e11ea6d55e976"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"50b337646985df2f0f2622ad8a2dffec9d5129f4","unresolved":false,"context_lines":[{"line_number":8,"context_line":"Swift backend for Keystone token"},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"`tokens-swift-backend \u003chttps://blueprints.launchpad.net/keystone/+spec/tokens-swift-backend\u003e`_"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"The purpose of this blueprint is to add a persistence token storage"},{"line_number":14,"context_line":"that use Swift."}],"source_content_type":"text/x-rst","patch_set":5,"id":"3a961159_ddbee9d3","line":11,"in_reply_to":"3a961159_285fb473","updated":"2014-12-10 14:48:35.000000000","message":"Done","commit_id":"070b32c1d1efea58dad481627c9e11ea6d55e976"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"756fd30f52119c4122cb2d8546a02e1d93938dbf","unresolved":false,"context_lines":[{"line_number":11,"context_line":"`tokens-swift-backend \u003chttps://blueprints.launchpad.net/keystone/+spec/tokens-swift-backend\u003e`_"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"The purpose of this blueprint is to add a persistence token storage"},{"line_number":14,"context_line":"that use Swift."},{"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":5,"id":"5a890539_79ed00b7","line":14,"updated":"2014-11-21 14:27:18.000000000","message":"s/that use/using/","commit_id":"070b32c1d1efea58dad481627c9e11ea6d55e976"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"50b337646985df2f0f2622ad8a2dffec9d5129f4","unresolved":false,"context_lines":[{"line_number":11,"context_line":"`tokens-swift-backend \u003chttps://blueprints.launchpad.net/keystone/+spec/tokens-swift-backend\u003e`_"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"The purpose of this blueprint is to add a persistence token storage"},{"line_number":14,"context_line":"that use Swift."},{"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":5,"id":"3a961159_fdb565ee","line":14,"in_reply_to":"5a890539_79ed00b7","updated":"2014-12-10 14:48:35.000000000","message":"Done","commit_id":"070b32c1d1efea58dad481627c9e11ea6d55e976"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"40ad52d45c8738811023639b660111fc35190cbf","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"Using Swift as kvs storage in Keystone."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"The X-Delete-At header of swift will be used to set the token expiration."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Alternatives"},{"line_number":37,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"9aa7fdbe_4ad7e9ed","line":34,"updated":"2014-10-29 14:31:52.000000000","message":"Swift*","commit_id":"070b32c1d1efea58dad481627c9e11ea6d55e976"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"50b337646985df2f0f2622ad8a2dffec9d5129f4","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"Using Swift as kvs storage in Keystone."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"The X-Delete-At header of swift will be used to set the token expiration."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Alternatives"},{"line_number":37,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3a961159_9dc46160","line":34,"in_reply_to":"9aa7fdbe_4ad7e9ed","updated":"2014-12-10 14:48:35.000000000","message":"Done","commit_id":"070b32c1d1efea58dad481627c9e11ea6d55e976"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"40ad52d45c8738811023639b660111fc35190cbf","unresolved":false,"context_lines":[{"line_number":56,"context_line":"Performance Impact"},{"line_number":57,"context_line":"------------------"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"The swift performance will not reduce when the number of token increase and the"},{"line_number":60,"context_line":"time to retrieve/validate a token stay the same for any number of stored token."},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"Other Deployer Impact"}],"source_content_type":"text/x-rst","patch_set":5,"id":"9aa7fdbe_ca02f96e","line":59,"updated":"2014-10-29 14:31:52.000000000","message":"Swift*","commit_id":"070b32c1d1efea58dad481627c9e11ea6d55e976"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"50b337646985df2f0f2622ad8a2dffec9d5129f4","unresolved":false,"context_lines":[{"line_number":56,"context_line":"Performance Impact"},{"line_number":57,"context_line":"------------------"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"The swift performance will not reduce when the number of token increase and the"},{"line_number":60,"context_line":"time to retrieve/validate a token stay the same for any number of stored token."},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"Other Deployer Impact"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3a961159_bda2fdab","line":59,"in_reply_to":"9aa7fdbe_ca02f96e","updated":"2014-12-10 14:48:35.000000000","message":"Done","commit_id":"070b32c1d1efea58dad481627c9e11ea6d55e976"},{"author":{"_account_id":9142,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@lsd.ufcg.edu.br","username":"samuel-z","inactive":true},"change_message_id":"b9d8faabc62f09685fae273b8898864b035b1294","unresolved":false,"context_lines":[{"line_number":57,"context_line":"------------------"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"The swift performance will not reduce when the number of token increase and the"},{"line_number":60,"context_line":"time to retrieve/validate a token stay the same for any number of stored token."},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"Other Deployer Impact"},{"line_number":63,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3a961159_28bb3473","line":60,"updated":"2014-12-10 12:12:31.000000000","message":"In addition, once Swift will be the KVS storage in Keystone, we\u0027ll have a significant increase on the network traffic, given the number of requests regarding tokens.","commit_id":"070b32c1d1efea58dad481627c9e11ea6d55e976"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"50b337646985df2f0f2622ad8a2dffec9d5129f4","unresolved":false,"context_lines":[{"line_number":57,"context_line":"------------------"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"The swift performance will not reduce when the number of token increase and the"},{"line_number":60,"context_line":"time to retrieve/validate a token stay the same for any number of stored token."},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"Other Deployer Impact"},{"line_number":63,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3a961159_3df9ad80","line":60,"in_reply_to":"3a961159_28bb3473","updated":"2014-12-10 14:48:35.000000000","message":"Done, I don\u0027t see the \u0027significant increase\u0027, I agree that a swift request consume a bit more bandwith than a sql request, or memcaced request, but I don\u0027t think it\u0027s so big. In all cases we depends of the number of tokens requested in parallel.","commit_id":"070b32c1d1efea58dad481627c9e11ea6d55e976"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"d5f5e7ef45bef582dc4f2ce5453dc5b5f80da323","unresolved":false,"context_lines":[{"line_number":41,"context_line":"Security Impact"},{"line_number":42,"context_line":"---------------"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"None."},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"Notifications Impact"},{"line_number":47,"context_line":"--------------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"1a930d6b_ee7804c6","line":44,"updated":"2015-01-26 20:16:57.000000000","message":"How will the tokens be access by Keystone? Based on the proof of concept there will be a hard coded access token. What happens if that token is compromised?","commit_id":"72e07d51c6e978124fe6023d0f4ba4fc855578be"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"1023084ccc82aea574e7f9702cba0dd2f09a5066","unresolved":false,"context_lines":[{"line_number":41,"context_line":"Security Impact"},{"line_number":42,"context_line":"---------------"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"None."},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"Notifications Impact"},{"line_number":47,"context_line":"--------------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"1a930d6b_08153148","line":44,"in_reply_to":"1a930d6b_ee7804c6","updated":"2015-01-27 08:36:52.000000000","message":"I have added a quick explanation of how to setup swift to resolve the chicken/egg problem and don\u0027t use a hard coded token.","commit_id":"72e07d51c6e978124fe6023d0f4ba4fc855578be"},{"author":{"_account_id":220,"name":"Haneef Ali","email":"haneef.ali@hp.com","username":"haneef"},"change_message_id":"6b3a27e8d19a3dce6d4cf368c58fdba244179ab8","unresolved":false,"context_lines":[{"line_number":55,"context_line":""},{"line_number":56,"context_line":"Performance Impact"},{"line_number":57,"context_line":"------------------"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"The Swift performance will not reduce when the number of token increase and the"},{"line_number":60,"context_line":"time to retrieve/validate a token stay the same for any number of stored token."},{"line_number":61,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"1a930d6b_105d6f47","line":58,"updated":"2015-01-26 19:17:17.000000000","message":"How does the authorization work?  Is swift once again going to call back keystone to do authoriztion?","commit_id":"72e07d51c6e978124fe6023d0f4ba4fc855578be"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"1023084ccc82aea574e7f9702cba0dd2f09a5066","unresolved":false,"context_lines":[{"line_number":55,"context_line":""},{"line_number":56,"context_line":"Performance Impact"},{"line_number":57,"context_line":"------------------"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"The Swift performance will not reduce when the number of token increase and the"},{"line_number":60,"context_line":"time to retrieve/validate a token stay the same for any number of stored token."},{"line_number":61,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"1a930d6b_480ad926","line":58,"in_reply_to":"1a930d6b_105d6f47","updated":"2015-01-27 08:36:52.000000000","message":"I have added a quick explanation of how to setup swift to resolve the chicken/egg problem and don\u0027t use a hard coded token.","commit_id":"72e07d51c6e978124fe6023d0f4ba4fc855578be"},{"author":{"_account_id":220,"name":"Haneef Ali","email":"haneef.ali@hp.com","username":"haneef"},"change_message_id":"6b3a27e8d19a3dce6d4cf368c58fdba244179ab8","unresolved":false,"context_lines":[{"line_number":60,"context_line":"time to retrieve/validate a token stay the same for any number of stored token."},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"But the network traffic generated by this kvs storage will be a bit bigger than"},{"line_number":63,"context_line":"memcache or sql backend."},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"Other Deployer Impact"},{"line_number":66,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"1a930d6b_100baf2a","line":63,"updated":"2015-01-26 19:17:17.000000000","message":"How about the time to create the token?  Won\u0027t swift wait till it is replicated in at least 2  servers?","commit_id":"72e07d51c6e978124fe6023d0f4ba4fc855578be"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"1023084ccc82aea574e7f9702cba0dd2f09a5066","unresolved":false,"context_lines":[{"line_number":60,"context_line":"time to retrieve/validate a token stay the same for any number of stored token."},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"But the network traffic generated by this kvs storage will be a bit bigger than"},{"line_number":63,"context_line":"memcache or sql backend."},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"Other Deployer Impact"},{"line_number":66,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"1a930d6b_4b11f350","line":63,"in_reply_to":"1a930d6b_100baf2a","updated":"2015-01-27 08:36:52.000000000","message":"We don\u0027t care of the time, we just want that the time is always the same, and don\u0027t depends anymore of the number of tokens stored.","commit_id":"72e07d51c6e978124fe6023d0f4ba4fc855578be"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"d5f5e7ef45bef582dc4f2ce5453dc5b5f80da323","unresolved":false,"context_lines":[{"line_number":65,"context_line":"Other Deployer Impact"},{"line_number":66,"context_line":"---------------------"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"None."},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"Developer Impact"},{"line_number":71,"context_line":"----------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"1a930d6b_e9963e4b","line":68,"updated":"2015-01-26 20:16:57.000000000","message":"Does this create a chicken/egg problem when setting up a cloud? Keystone is initializing and needs to create tokens, but swift either isn\u0027t setup yet or it can\u0027t check back with Keystone since it is still being initialized...\n\nIs it that the hard coded token really isn\u0027t a token at all and will be treated differently?","commit_id":"72e07d51c6e978124fe6023d0f4ba4fc855578be"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"1023084ccc82aea574e7f9702cba0dd2f09a5066","unresolved":false,"context_lines":[{"line_number":65,"context_line":"Other Deployer Impact"},{"line_number":66,"context_line":"---------------------"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"None."},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"Developer Impact"},{"line_number":71,"context_line":"----------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"1a930d6b_ab29778b","line":68,"in_reply_to":"1a930d6b_e9963e4b","updated":"2015-01-27 08:36:52.000000000","message":"I have added a quick explanation of how to setup swift to resolve the chicken/egg problem and don\u0027t use a hard coded token.","commit_id":"72e07d51c6e978124fe6023d0f4ba4fc855578be"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"170158967217e73edea0c81262af48cfdfd14aab","unresolved":false,"context_lines":[{"line_number":41,"context_line":"Security Impact"},{"line_number":42,"context_line":"---------------"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"In case of swift uses keystone as authentification method,"},{"line_number":45,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":46,"context_line":"the tempauth middleware in additionnel of keystone one, this will"},{"line_number":47,"context_line":"result by having the user/password in the configuration of swift"}],"source_content_type":"text/x-rst","patch_set":9,"id":"1a930d6b_220cc13a","line":44,"updated":"2015-01-27 13:08:19.000000000","message":"(nit) In the case of swift using Keystone","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"bb2de4393d9fb0bd55c0ba30741bfc41ffcd1fd8","unresolved":false,"context_lines":[{"line_number":41,"context_line":"Security Impact"},{"line_number":42,"context_line":"---------------"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"In case of swift uses keystone as authentification method,"},{"line_number":45,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":46,"context_line":"the tempauth middleware in additionnel of keystone one, this will"},{"line_number":47,"context_line":"result by having the user/password in the configuration of swift"}],"source_content_type":"text/x-rst","patch_set":9,"id":"1a930d6b_79882e71","line":44,"updated":"2015-01-27 18:45:35.000000000","message":"nit - use all 79 characters in a row\n\nSwift*\n\nas an* authentication method","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"7d24742588ad83d37a2088a474eab2da1e70958c","unresolved":false,"context_lines":[{"line_number":41,"context_line":"Security Impact"},{"line_number":42,"context_line":"---------------"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"In case of swift uses keystone as authentification method,"},{"line_number":45,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":46,"context_line":"the tempauth middleware in additionnel of keystone one, this will"},{"line_number":47,"context_line":"result by having the user/password in the configuration of swift"}],"source_content_type":"text/x-rst","patch_set":9,"id":"fa81d914_822b79ea","line":44,"in_reply_to":"1a930d6b_220cc13a","updated":"2015-01-28 06:38:38.000000000","message":"Done","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"7d24742588ad83d37a2088a474eab2da1e70958c","unresolved":false,"context_lines":[{"line_number":41,"context_line":"Security Impact"},{"line_number":42,"context_line":"---------------"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"In case of swift uses keystone as authentification method,"},{"line_number":45,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":46,"context_line":"the tempauth middleware in additionnel of keystone one, this will"},{"line_number":47,"context_line":"result by having the user/password in the configuration of swift"}],"source_content_type":"text/x-rst","patch_set":9,"id":"fa81d914_62ef65b1","line":44,"in_reply_to":"1a930d6b_79882e71","updated":"2015-01-28 06:38:38.000000000","message":"Done","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"170158967217e73edea0c81262af48cfdfd14aab","unresolved":false,"context_lines":[{"line_number":42,"context_line":"---------------"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"In case of swift uses keystone as authentification method,"},{"line_number":45,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":46,"context_line":"the tempauth middleware in additionnel of keystone one, this will"},{"line_number":47,"context_line":"result by having the user/password in the configuration of swift"},{"line_number":48,"context_line":"and keystone, and using the v1 auth API of swift to retreive"}],"source_content_type":"text/x-rst","patch_set":9,"id":"1a930d6b_a217d143","line":45,"updated":"2015-01-27 13:08:19.000000000","message":"(nit) will have","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"7d24742588ad83d37a2088a474eab2da1e70958c","unresolved":false,"context_lines":[{"line_number":42,"context_line":"---------------"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"In case of swift uses keystone as authentification method,"},{"line_number":45,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":46,"context_line":"the tempauth middleware in additionnel of keystone one, this will"},{"line_number":47,"context_line":"result by having the user/password in the configuration of swift"},{"line_number":48,"context_line":"and keystone, and using the v1 auth API of swift to retreive"}],"source_content_type":"text/x-rst","patch_set":9,"id":"fa81d914_c2357147","line":45,"in_reply_to":"1a930d6b_a217d143","updated":"2015-01-28 06:38:38.000000000","message":"Done","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"170158967217e73edea0c81262af48cfdfd14aab","unresolved":false,"context_lines":[{"line_number":43,"context_line":""},{"line_number":44,"context_line":"In case of swift uses keystone as authentification method,"},{"line_number":45,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":46,"context_line":"the tempauth middleware in additionnel of keystone one, this will"},{"line_number":47,"context_line":"result by having the user/password in the configuration of swift"},{"line_number":48,"context_line":"and keystone, and using the v1 auth API of swift to retreive"},{"line_number":49,"context_line":"a token instead of keystone for this drivers."}],"source_content_type":"text/x-rst","patch_set":9,"id":"1a930d6b_c2777d9e","line":46,"updated":"2015-01-27 13:08:19.000000000","message":"(nit) additional Keystone","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"7d24742588ad83d37a2088a474eab2da1e70958c","unresolved":false,"context_lines":[{"line_number":43,"context_line":""},{"line_number":44,"context_line":"In case of swift uses keystone as authentification method,"},{"line_number":45,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":46,"context_line":"the tempauth middleware in additionnel of keystone one, this will"},{"line_number":47,"context_line":"result by having the user/password in the configuration of swift"},{"line_number":48,"context_line":"and keystone, and using the v1 auth API of swift to retreive"},{"line_number":49,"context_line":"a token instead of keystone for this drivers."}],"source_content_type":"text/x-rst","patch_set":9,"id":"fa81d914_223c8d2f","line":46,"in_reply_to":"1a930d6b_c2777d9e","updated":"2015-01-28 06:38:38.000000000","message":"Done","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"170158967217e73edea0c81262af48cfdfd14aab","unresolved":false,"context_lines":[{"line_number":44,"context_line":"In case of swift uses keystone as authentification method,"},{"line_number":45,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":46,"context_line":"the tempauth middleware in additionnel of keystone one, this will"},{"line_number":47,"context_line":"result by having the user/password in the configuration of swift"},{"line_number":48,"context_line":"and keystone, and using the v1 auth API of swift to retreive"},{"line_number":49,"context_line":"a token instead of keystone for this drivers."},{"line_number":50,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"1a930d6b_e2a1d9f8","line":47,"updated":"2015-01-27 13:08:19.000000000","message":"Can you add a link to the tempauth docs?","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"7d24742588ad83d37a2088a474eab2da1e70958c","unresolved":false,"context_lines":[{"line_number":44,"context_line":"In case of swift uses keystone as authentification method,"},{"line_number":45,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":46,"context_line":"the tempauth middleware in additionnel of keystone one, this will"},{"line_number":47,"context_line":"result by having the user/password in the configuration of swift"},{"line_number":48,"context_line":"and keystone, and using the v1 auth API of swift to retreive"},{"line_number":49,"context_line":"a token instead of keystone for this drivers."},{"line_number":50,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"fa81d914_424981cf","line":47,"in_reply_to":"1a930d6b_e2a1d9f8","updated":"2015-01-28 06:38:38.000000000","message":"Done","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"170158967217e73edea0c81262af48cfdfd14aab","unresolved":false,"context_lines":[{"line_number":45,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":46,"context_line":"the tempauth middleware in additionnel of keystone one, this will"},{"line_number":47,"context_line":"result by having the user/password in the configuration of swift"},{"line_number":48,"context_line":"and keystone, and using the v1 auth API of swift to retreive"},{"line_number":49,"context_line":"a token instead of keystone for this drivers."},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"Notifications Impact"}],"source_content_type":"text/x-rst","patch_set":9,"id":"1a930d6b_c285bd5a","line":48,"updated":"2015-01-27 13:08:19.000000000","message":"Keystone","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"7d24742588ad83d37a2088a474eab2da1e70958c","unresolved":false,"context_lines":[{"line_number":45,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":46,"context_line":"the tempauth middleware in additionnel of keystone one, this will"},{"line_number":47,"context_line":"result by having the user/password in the configuration of swift"},{"line_number":48,"context_line":"and keystone, and using the v1 auth API of swift to retreive"},{"line_number":49,"context_line":"a token instead of keystone for this drivers."},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"Notifications Impact"}],"source_content_type":"text/x-rst","patch_set":9,"id":"fa81d914_62c1252e","line":48,"in_reply_to":"1a930d6b_c285bd5a","updated":"2015-01-28 06:38:38.000000000","message":"Done","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"170158967217e73edea0c81262af48cfdfd14aab","unresolved":false,"context_lines":[{"line_number":46,"context_line":"the tempauth middleware in additionnel of keystone one, this will"},{"line_number":47,"context_line":"result by having the user/password in the configuration of swift"},{"line_number":48,"context_line":"and keystone, and using the v1 auth API of swift to retreive"},{"line_number":49,"context_line":"a token instead of keystone for this drivers."},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"Notifications Impact"},{"line_number":52,"context_line":"--------------------"}],"source_content_type":"text/x-rst","patch_set":9,"id":"1a930d6b_c2ecdd2c","line":49,"updated":"2015-01-27 13:08:19.000000000","message":"Keystone","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"7d24742588ad83d37a2088a474eab2da1e70958c","unresolved":false,"context_lines":[{"line_number":46,"context_line":"the tempauth middleware in additionnel of keystone one, this will"},{"line_number":47,"context_line":"result by having the user/password in the configuration of swift"},{"line_number":48,"context_line":"and keystone, and using the v1 auth API of swift to retreive"},{"line_number":49,"context_line":"a token instead of keystone for this drivers."},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"Notifications Impact"},{"line_number":52,"context_line":"--------------------"}],"source_content_type":"text/x-rst","patch_set":9,"id":"fa81d914_42c42140","line":49,"in_reply_to":"1a930d6b_c2ecdd2c","updated":"2015-01-28 06:38:38.000000000","message":"Done","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"170158967217e73edea0c81262af48cfdfd14aab","unresolved":false,"context_lines":[{"line_number":70,"context_line":"Other Deployer Impact"},{"line_number":71,"context_line":"---------------------"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"In case of swift uses keystone as authentification method,"},{"line_number":74,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":75,"context_line":"the tempauth middleware in additionnel of keystone one, with"},{"line_number":76,"context_line":"a tempauth account to store tokens."}],"source_content_type":"text/x-rst","patch_set":9,"id":"1a930d6b_42c70d96","line":73,"updated":"2015-01-27 13:08:19.000000000","message":"(nit) In the case of swift using Keystone","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"bb2de4393d9fb0bd55c0ba30741bfc41ffcd1fd8","unresolved":false,"context_lines":[{"line_number":70,"context_line":"Other Deployer Impact"},{"line_number":71,"context_line":"---------------------"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"In case of swift uses keystone as authentification method,"},{"line_number":74,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":75,"context_line":"the tempauth middleware in additionnel of keystone one, with"},{"line_number":76,"context_line":"a tempauth account to store tokens."}],"source_content_type":"text/x-rst","patch_set":9,"id":"1a930d6b_d99842c2","line":73,"updated":"2015-01-27 18:45:35.000000000","message":"nit - use all 79 characters in a row","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"7d24742588ad83d37a2088a474eab2da1e70958c","unresolved":false,"context_lines":[{"line_number":70,"context_line":"Other Deployer Impact"},{"line_number":71,"context_line":"---------------------"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"In case of swift uses keystone as authentification method,"},{"line_number":74,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":75,"context_line":"the tempauth middleware in additionnel of keystone one, with"},{"line_number":76,"context_line":"a tempauth account to store tokens."}],"source_content_type":"text/x-rst","patch_set":9,"id":"fa81d914_821299b2","line":73,"in_reply_to":"1a930d6b_42c70d96","updated":"2015-01-28 06:38:38.000000000","message":"Done","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"7d24742588ad83d37a2088a474eab2da1e70958c","unresolved":false,"context_lines":[{"line_number":70,"context_line":"Other Deployer Impact"},{"line_number":71,"context_line":"---------------------"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"In case of swift uses keystone as authentification method,"},{"line_number":74,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":75,"context_line":"the tempauth middleware in additionnel of keystone one, with"},{"line_number":76,"context_line":"a tempauth account to store tokens."}],"source_content_type":"text/x-rst","patch_set":9,"id":"fa81d914_624685c1","line":73,"in_reply_to":"1a930d6b_d99842c2","updated":"2015-01-28 06:38:38.000000000","message":"Done","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"170158967217e73edea0c81262af48cfdfd14aab","unresolved":false,"context_lines":[{"line_number":71,"context_line":"---------------------"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"In case of swift uses keystone as authentification method,"},{"line_number":74,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":75,"context_line":"the tempauth middleware in additionnel of keystone one, with"},{"line_number":76,"context_line":"a tempauth account to store tokens."},{"line_number":77,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"1a930d6b_a2b8b111","line":74,"updated":"2015-01-27 13:08:19.000000000","message":"(nit) will have","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"7d24742588ad83d37a2088a474eab2da1e70958c","unresolved":false,"context_lines":[{"line_number":71,"context_line":"---------------------"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"In case of swift uses keystone as authentification method,"},{"line_number":74,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":75,"context_line":"the tempauth middleware in additionnel of keystone one, with"},{"line_number":76,"context_line":"a tempauth account to store tokens."},{"line_number":77,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"fa81d914_c20c9197","line":74,"in_reply_to":"1a930d6b_a2b8b111","updated":"2015-01-28 06:38:38.000000000","message":"Done","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"170158967217e73edea0c81262af48cfdfd14aab","unresolved":false,"context_lines":[{"line_number":72,"context_line":""},{"line_number":73,"context_line":"In case of swift uses keystone as authentification method,"},{"line_number":74,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":75,"context_line":"the tempauth middleware in additionnel of keystone one, with"},{"line_number":76,"context_line":"a tempauth account to store tokens."},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"Developer Impact"}],"source_content_type":"text/x-rst","patch_set":9,"id":"1a930d6b_0241850a","line":75,"updated":"2015-01-27 13:08:19.000000000","message":"Keystone","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"7d24742588ad83d37a2088a474eab2da1e70958c","unresolved":false,"context_lines":[{"line_number":72,"context_line":""},{"line_number":73,"context_line":"In case of swift uses keystone as authentification method,"},{"line_number":74,"context_line":"to resolve chicken/egg problem, the swift proxy have to use"},{"line_number":75,"context_line":"the tempauth middleware in additionnel of keystone one, with"},{"line_number":76,"context_line":"a tempauth account to store tokens."},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"Developer Impact"}],"source_content_type":"text/x-rst","patch_set":9,"id":"fa81d914_e21195ad","line":75,"in_reply_to":"1a930d6b_0241850a","updated":"2015-01-28 06:38:38.000000000","message":"Done","commit_id":"92cc025a4d673f8e76176489f0a3adbea0da5249"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"a40f86f08a37b607b349bd60d2be9520b6e5ff01","unresolved":false,"context_lines":[{"line_number":21,"context_line":"a number of ways:"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"* SQL Backend sees significant bloat in the DB causing poor performance,"},{"line_number":24,"context_line":"  significant consumption of processing and storage resources."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"* Memcached doesn\u0027t store persistently the token. A restart of the memcache"},{"line_number":27,"context_line":"  service will invalidate tokens."}],"source_content_type":"text/x-rst","patch_set":11,"id":"da86d52c_09213c4d","line":24,"updated":"2015-02-02 23:26:49.000000000","message":"How does it work with multi-region? Isn\u0027t Swift eventual consistency? I guess for MR, we can use federation instead of container sync.","commit_id":"dcfd243438b6c7f25f7ef1fe25dc2566fce33427"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"b469e8dd5ebe5c2fddbc6f8d0f409b5030dd6784","unresolved":false,"context_lines":[{"line_number":21,"context_line":"a number of ways:"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"* SQL Backend sees significant bloat in the DB causing poor performance,"},{"line_number":24,"context_line":"  significant consumption of processing and storage resources."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"* Memcached doesn\u0027t store persistently the token. A restart of the memcache"},{"line_number":27,"context_line":"  service will invalidate tokens."}],"source_content_type":"text/x-rst","patch_set":11,"id":"da86d52c_500e6635","line":24,"in_reply_to":"da86d52c_09213c4d","updated":"2015-02-03 10:59:14.000000000","message":"I don\u0027t see how this is related with this BP. here we just add a new key/value store for token.","commit_id":"dcfd243438b6c7f25f7ef1fe25dc2566fce33427"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"a40f86f08a37b607b349bd60d2be9520b6e5ff01","unresolved":false,"context_lines":[{"line_number":24,"context_line":"  significant consumption of processing and storage resources."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"* Memcached doesn\u0027t store persistently the token. A restart of the memcache"},{"line_number":27,"context_line":"  service will invalidate tokens."},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"Proposed Change"},{"line_number":30,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":11,"id":"da86d52c_8400b302","line":27,"updated":"2015-02-02 23:26:49.000000000","message":"wow, really? We have production systems out there using memcached as token backend?","commit_id":"dcfd243438b6c7f25f7ef1fe25dc2566fce33427"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"b469e8dd5ebe5c2fddbc6f8d0f409b5030dd6784","unresolved":false,"context_lines":[{"line_number":24,"context_line":"  significant consumption of processing and storage resources."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"* Memcached doesn\u0027t store persistently the token. A restart of the memcache"},{"line_number":27,"context_line":"  service will invalidate tokens."},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"Proposed Change"},{"line_number":30,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":11,"id":"da86d52c_ed3861a2","line":27,"in_reply_to":"da86d52c_8400b302","updated":"2015-02-03 10:59:14.000000000","message":"I hope not ;)","commit_id":"dcfd243438b6c7f25f7ef1fe25dc2566fce33427"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"a40f86f08a37b607b349bd60d2be9520b6e5ff01","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"Using Swift as kvs storage in Keystone."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"The X-Delete-At header of Swift will be used to set the token expiration."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Alternatives"},{"line_number":37,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":11,"id":"da86d52c_e40def38","line":34,"updated":"2015-02-02 23:26:49.000000000","message":"oh nice!","commit_id":"dcfd243438b6c7f25f7ef1fe25dc2566fce33427"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"a40f86f08a37b607b349bd60d2be9520b6e5ff01","unresolved":false,"context_lines":[{"line_number":45,"context_line":"chicken/egg problem, the Swift will proxy have to use the tempauth middleware"},{"line_number":46,"context_line":"in additionnal of Keystone one, this will result by having the user/password"},{"line_number":47,"context_line":"in the configuration of Swift and Keystone, and using the v1 auth API of Swift"},{"line_number":48,"context_line":"to retreive a token instead of Keystone for this drivers."},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"Notifications Impact"},{"line_number":51,"context_line":"--------------------"}],"source_content_type":"text/x-rst","patch_set":11,"id":"da86d52c_a49f77b3","line":48,"updated":"2015-02-02 23:26:49.000000000","message":"As John suggest, tempurl is better. You don\u0027t want to put more passwords in config files. Key rotation is much easier than password rotation.","commit_id":"dcfd243438b6c7f25f7ef1fe25dc2566fce33427"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"76ec5850abe06e1d9932b6d78ee63410a8afb2cf","unresolved":false,"context_lines":[{"line_number":45,"context_line":"chicken/egg problem, the Swift will proxy have to use the tempauth middleware"},{"line_number":46,"context_line":"in additionnal of Keystone one, this will result by having the user/password"},{"line_number":47,"context_line":"in the configuration of Swift and Keystone, and using the v1 auth API of Swift"},{"line_number":48,"context_line":"to retreive a token instead of Keystone for this drivers."},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"Notifications Impact"},{"line_number":51,"context_line":"--------------------"}],"source_content_type":"text/x-rst","patch_set":11,"id":"da86d52c_fa629a3c","line":48,"in_reply_to":"da86d52c_44b1368e","updated":"2015-02-04 14:55:26.000000000","message":"From my understanding, you can\u0027t create the tempurl key if you are not authenticated into swift, swift need to talk to keystone to do the authentification, but it can\u0027t because keystone need to talk to swift to create a token. Now we are in a loop. The only way to create the token of the account used by keystone to store tokens in swift is to have a static tempauth account in the proxy-server.conf, in this case Swift will create a token himself instead of asking keystone again.","commit_id":"dcfd243438b6c7f25f7ef1fe25dc2566fce33427"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"b469e8dd5ebe5c2fddbc6f8d0f409b5030dd6784","unresolved":false,"context_lines":[{"line_number":45,"context_line":"chicken/egg problem, the Swift will proxy have to use the tempauth middleware"},{"line_number":46,"context_line":"in additionnal of Keystone one, this will result by having the user/password"},{"line_number":47,"context_line":"in the configuration of Swift and Keystone, and using the v1 auth API of Swift"},{"line_number":48,"context_line":"to retreive a token instead of Keystone for this drivers."},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"Notifications Impact"},{"line_number":51,"context_line":"--------------------"}],"source_content_type":"text/x-rst","patch_set":11,"id":"da86d52c_edd14158","line":48,"in_reply_to":"da86d52c_a49f77b3","updated":"2015-02-03 10:59:14.000000000","message":"tempurl cannot be used, this is not an authentification middleware, it depends of an underlying authentfication to create the key.","commit_id":"dcfd243438b6c7f25f7ef1fe25dc2566fce33427"},{"author":{"_account_id":330,"name":"John Dickinson","email":"me@not.mn","username":"notmyname"},"change_message_id":"eb596b210beaa11d5b4370d286d6c6ff9136851b","unresolved":false,"context_lines":[{"line_number":45,"context_line":"chicken/egg problem, the Swift will proxy have to use the tempauth middleware"},{"line_number":46,"context_line":"in additionnal of Keystone one, this will result by having the user/password"},{"line_number":47,"context_line":"in the configuration of Swift and Keystone, and using the v1 auth API of Swift"},{"line_number":48,"context_line":"to retreive a token instead of Keystone for this drivers."},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"Notifications Impact"},{"line_number":51,"context_line":"--------------------"}],"source_content_type":"text/x-rst","patch_set":11,"id":"da86d52c_44b1368e","line":48,"in_reply_to":"da86d52c_edd14158","updated":"2015-02-03 16:51:49.000000000","message":"Can you explain more about why tempurl cannot be used?","commit_id":"dcfd243438b6c7f25f7ef1fe25dc2566fce33427"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"a40f86f08a37b607b349bd60d2be9520b6e5ff01","unresolved":false,"context_lines":[{"line_number":72,"context_line":"In case of Swift uses Keystone as authentification method, to resolve"},{"line_number":73,"context_line":"chicken/egg problem, the Swift proxy will have to use the"},{"line_number":74,"context_line":"`tempauth middleware \u003chttp://docs.openstack.org/developer/swift/overview_auth.html#tempauth\u003e`"},{"line_number":75,"context_line":"in additionnel of Keystone one, with a tempauth account to store tokens."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Developer Impact"},{"line_number":78,"context_line":"----------------"}],"source_content_type":"text/x-rst","patch_set":11,"id":"da86d52c_a4d4d747","line":75,"updated":"2015-02-02 23:26:49.000000000","message":"Can you also elaborate on the bootstrap process? Like how do we provision the account in Swift? Are we storing the tokens in a specific container? How do we lookup tokens belong to a user? What does token revocation look look?","commit_id":"dcfd243438b6c7f25f7ef1fe25dc2566fce33427"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"b469e8dd5ebe5c2fddbc6f8d0f409b5030dd6784","unresolved":false,"context_lines":[{"line_number":72,"context_line":"In case of Swift uses Keystone as authentification method, to resolve"},{"line_number":73,"context_line":"chicken/egg problem, the Swift proxy will have to use the"},{"line_number":74,"context_line":"`tempauth middleware \u003chttp://docs.openstack.org/developer/swift/overview_auth.html#tempauth\u003e`"},{"line_number":75,"context_line":"in additionnel of Keystone one, with a tempauth account to store tokens."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Developer Impact"},{"line_number":78,"context_line":"----------------"}],"source_content_type":"text/x-rst","patch_set":11,"id":"da86d52c_4d3a4d37","line":75,"in_reply_to":"da86d52c_a4d4d747","updated":"2015-02-03 10:59:14.000000000","message":"This is already explained in the security section, Tempauth is just a static login/password into the swift server.conf file.","commit_id":"dcfd243438b6c7f25f7ef1fe25dc2566fce33427"}]}
