)]}'
{"doc/source/specs/checkpoint-tenant-isolation.rst":[{"author":{"_account_id":18266,"name":"zengchen","email":"chenzeng2@huawei.com","username":"zengchen"},"change_message_id":"ec28b10f0e29be411d08cec34e79c33788a35639","unresolved":false,"context_lines":[{"line_number":49,"context_line":"/indices/by-plan"},{"line_number":50,"context_line":"/indices/by-date"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"Changed implimentation:"},{"line_number":53,"context_line":"/indices/user_id/by-provider"},{"line_number":54,"context_line":"/indices/user_id/by-plan"},{"line_number":55,"context_line":"/indices/user_id/by-date"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"REST API impact"},{"line_number":58,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"7a8ec9b2_179447e0","line":55,"range":{"start_line":52,"start_character":0,"end_line":55,"end_character":24},"updated":"2016-09-21 02:56:10.000000000","message":"If I understand your ideas correctly, we can simply add one more index \u0027/indices/by-project\u0027 to satisfy the requirement. Then we can filter checkpoints by user.","commit_id":"d11f76d6ebf136e4a96733fc660cd4e70a703896"},{"author":{"_account_id":23068,"name":"Wang Hui","email":"wanghui71@huawei.com","username":"krejwang"},"change_message_id":"413bb4bdd2602035b80575a5e434bb8a02cce43c","unresolved":false,"context_lines":[{"line_number":49,"context_line":"/indices/by-plan"},{"line_number":50,"context_line":"/indices/by-date"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"Changed implimentation:"},{"line_number":53,"context_line":"/indices/user_id/by-provider"},{"line_number":54,"context_line":"/indices/user_id/by-plan"},{"line_number":55,"context_line":"/indices/user_id/by-date"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"REST API impact"},{"line_number":58,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"7a8ec9b2_3aff6aab","line":55,"range":{"start_line":52,"start_character":0,"end_line":55,"end_character":24},"in_reply_to":"7a8ec9b2_179447e0","updated":"2016-09-21 03:08:04.000000000","message":"@zengchen Yes, you can think it as a index tree and user_id is the first filter of checkpoints and then we can list checkpoints by different option.","commit_id":"d11f76d6ebf136e4a96733fc660cd4e70a703896"},{"author":{"_account_id":18266,"name":"zengchen","email":"chenzeng2@huawei.com","username":"zengchen"},"change_message_id":"3469d3c86db115e9bbdef744c182820407c3b4e2","unresolved":false,"context_lines":[{"line_number":49,"context_line":"/indices/by-plan"},{"line_number":50,"context_line":"/indices/by-date"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"Changed implimentation:"},{"line_number":53,"context_line":"/indices/user_id/by-provider"},{"line_number":54,"context_line":"/indices/user_id/by-plan"},{"line_number":55,"context_line":"/indices/user_id/by-date"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"REST API impact"},{"line_number":58,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"7a8ec9b2_5aba76e2","line":55,"range":{"start_line":52,"start_character":0,"end_line":55,"end_character":24},"in_reply_to":"7a8ec9b2_179447e0","updated":"2016-09-21 03:10:16.000000000","message":"Certainly, my suggestion may be appropriate in one site as you described in comments. If we want to supply a complete spec to solve the problem as yuval said, maybe need think more. But I have a question, does Karbor support cross-site restore right now? Maybe we should first complete cross-site bp, them come back to this one.","commit_id":"d11f76d6ebf136e4a96733fc660cd4e70a703896"},{"author":{"_account_id":23068,"name":"Wang Hui","email":"wanghui71@huawei.com","username":"krejwang"},"change_message_id":"20891cc85db612d7289f739960a118d194504b26","unresolved":false,"context_lines":[{"line_number":49,"context_line":"/indices/by-plan"},{"line_number":50,"context_line":"/indices/by-date"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"Changed implimentation:"},{"line_number":53,"context_line":"/indices/user_id/by-provider"},{"line_number":54,"context_line":"/indices/user_id/by-plan"},{"line_number":55,"context_line":"/indices/user_id/by-date"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"REST API impact"},{"line_number":58,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"7a8ec9b2_3a45aab2","line":55,"range":{"start_line":52,"start_character":0,"end_line":55,"end_character":24},"in_reply_to":"7a8ec9b2_5aba76e2","updated":"2016-09-21 03:18:28.000000000","message":"Thanks zengchen,i will look into it and inform you soon.","commit_id":"d11f76d6ebf136e4a96733fc660cd4e70a703896"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"1706a52b30d130992d0ebd293d7182fd06c9a5cd","unresolved":false,"context_lines":[{"line_number":53,"context_line":"/indices/by-date"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"Changed implementation:"},{"line_number":56,"context_line":"/indices/user_id/project_id/by-provider"},{"line_number":57,"context_line":"/indices/user_id/project_id/by-plan"},{"line_number":58,"context_line":"/indices/user_id/project_id/by-date"},{"line_number":59,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"ba5da102_5f7aea88","line":56,"range":{"start_line":56,"start_character":0,"end_line":56,"end_character":39},"updated":"2016-11-03 11:26:09.000000000","message":"I think only adding project_id is enough. I don\u0027t think we should add user_id to index. In openstack, the permission is controlled by project_id, not by user_id. We will not filter checkpoint data by user_id.","commit_id":"d69734eaa107b5daeeb249da1258d2d24d7d795b"},{"author":{"_account_id":23068,"name":"Wang Hui","email":"wanghui71@huawei.com","username":"krejwang"},"change_message_id":"5dd21775f6ba24908621abc2d42b40e719060f21","unresolved":false,"context_lines":[{"line_number":53,"context_line":"/indices/by-date"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"Changed implementation:"},{"line_number":56,"context_line":"/indices/user_id/project_id/by-provider"},{"line_number":57,"context_line":"/indices/user_id/project_id/by-plan"},{"line_number":58,"context_line":"/indices/user_id/project_id/by-date"},{"line_number":59,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"ba5da102_b4a067f5","line":56,"range":{"start_line":56,"start_character":0,"end_line":56,"end_character":39},"in_reply_to":"ba5da102_5f7aea88","updated":"2016-11-04 02:23:31.000000000","message":"Yes, I know what you mean, but my only concern is that if multiple users get access to the same project, then we can\u0027t guarantee the isolation between them.","commit_id":"d69734eaa107b5daeeb249da1258d2d24d7d795b"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"8643824e340c373ac82d523620bf622b88bdc7d3","unresolved":false,"context_lines":[{"line_number":13,"context_line":"Problem description"},{"line_number":14,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"In multi-tenants scenario, when User A wants to list all the checkpoints he"},{"line_number":17,"context_line":"created, it may return all the checkpoints, some of which don\u0027t belong to"},{"line_number":18,"context_line":"him. To protect user\u0027s privacy, We should add tenant isolation to index the"},{"line_number":19,"context_line":"checkpoints, not matter in single-site or cross-site."}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a77a97e_3514fc42","line":16,"range":{"start_line":16,"start_character":0,"end_line":16,"end_character":8},"updated":"2016-11-16 09:50:06.000000000","message":"In a multi","commit_id":"3da617c02f5232f233edd2b29ed662ad9336f5ab"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"8643824e340c373ac82d523620bf622b88bdc7d3","unresolved":false,"context_lines":[{"line_number":13,"context_line":"Problem description"},{"line_number":14,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"In multi-tenants scenario, when User A wants to list all the checkpoints he"},{"line_number":17,"context_line":"created, it may return all the checkpoints, some of which don\u0027t belong to"},{"line_number":18,"context_line":"him. To protect user\u0027s privacy, We should add tenant isolation to index the"},{"line_number":19,"context_line":"checkpoints, not matter in single-site or cross-site."}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a77a97e_d529088b","line":16,"range":{"start_line":16,"start_character":27,"end_line":16,"end_character":31},"updated":"2016-11-16 09:50:06.000000000","message":"When","commit_id":"3da617c02f5232f233edd2b29ed662ad9336f5ab"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"8643824e340c373ac82d523620bf622b88bdc7d3","unresolved":false,"context_lines":[{"line_number":13,"context_line":"Problem description"},{"line_number":14,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"In multi-tenants scenario, when User A wants to list all the checkpoints he"},{"line_number":17,"context_line":"created, it may return all the checkpoints, some of which don\u0027t belong to"},{"line_number":18,"context_line":"him. To protect user\u0027s privacy, We should add tenant isolation to index the"},{"line_number":19,"context_line":"checkpoints, not matter in single-site or cross-site."}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a77a97e_353b1cd3","line":16,"range":{"start_line":16,"start_character":32,"end_line":16,"end_character":38},"updated":"2016-11-16 09:50:06.000000000","message":"a user","commit_id":"3da617c02f5232f233edd2b29ed662ad9336f5ab"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"8643824e340c373ac82d523620bf622b88bdc7d3","unresolved":false,"context_lines":[{"line_number":13,"context_line":"Problem description"},{"line_number":14,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"In multi-tenants scenario, when User A wants to list all the checkpoints he"},{"line_number":17,"context_line":"created, it may return all the checkpoints, some of which don\u0027t belong to"},{"line_number":18,"context_line":"him. To protect user\u0027s privacy, We should add tenant isolation to index the"},{"line_number":19,"context_line":"checkpoints, not matter in single-site or cross-site."}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a77a97e_35423c3f","line":16,"range":{"start_line":16,"start_character":73,"end_line":16,"end_character":75},"updated":"2016-11-16 09:50:06.000000000","message":"they","commit_id":"3da617c02f5232f233edd2b29ed662ad9336f5ab"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"8643824e340c373ac82d523620bf622b88bdc7d3","unresolved":false,"context_lines":[{"line_number":14,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"In multi-tenants scenario, when User A wants to list all the checkpoints he"},{"line_number":17,"context_line":"created, it may return all the checkpoints, some of which don\u0027t belong to"},{"line_number":18,"context_line":"him. To protect user\u0027s privacy, We should add tenant isolation to index the"},{"line_number":19,"context_line":"checkpoints, not matter in single-site or cross-site."},{"line_number":20,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a77a97e_35695cbf","line":17,"range":{"start_line":17,"start_character":9,"end_line":17,"end_character":15},"updated":"2016-11-16 09:50:06.000000000","message":"the API will","commit_id":"3da617c02f5232f233edd2b29ed662ad9336f5ab"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"8643824e340c373ac82d523620bf622b88bdc7d3","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"In multi-tenants scenario, when User A wants to list all the checkpoints he"},{"line_number":17,"context_line":"created, it may return all the checkpoints, some of which don\u0027t belong to"},{"line_number":18,"context_line":"him. To protect user\u0027s privacy, We should add tenant isolation to index the"},{"line_number":19,"context_line":"checkpoints, not matter in single-site or cross-site."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Use Cases"}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a77a97e_35979c91","line":18,"range":{"start_line":18,"start_character":8,"end_line":18,"end_character":16},"updated":"2016-11-16 09:50:06.000000000","message":"protect the","commit_id":"3da617c02f5232f233edd2b29ed662ad9336f5ab"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"8643824e340c373ac82d523620bf622b88bdc7d3","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"In multi-tenants scenario, when User A wants to list all the checkpoints he"},{"line_number":17,"context_line":"created, it may return all the checkpoints, some of which don\u0027t belong to"},{"line_number":18,"context_line":"him. To protect user\u0027s privacy, We should add tenant isolation to index the"},{"line_number":19,"context_line":"checkpoints, not matter in single-site or cross-site."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Use Cases"}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a77a97e_95b5d032","line":18,"range":{"start_line":18,"start_character":0,"end_line":18,"end_character":3},"updated":"2016-11-16 09:50:06.000000000","message":"them","commit_id":"3da617c02f5232f233edd2b29ed662ad9336f5ab"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"8643824e340c373ac82d523620bf622b88bdc7d3","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"In multi-tenants scenario, when User A wants to list all the checkpoints he"},{"line_number":17,"context_line":"created, it may return all the checkpoints, some of which don\u0027t belong to"},{"line_number":18,"context_line":"him. To protect user\u0027s privacy, We should add tenant isolation to index the"},{"line_number":19,"context_line":"checkpoints, not matter in single-site or cross-site."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Use Cases"}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a77a97e_b5d00c55","line":18,"range":{"start_line":18,"start_character":46,"end_line":18,"end_character":52},"updated":"2016-11-16 09:50:06.000000000","message":"user","commit_id":"3da617c02f5232f233edd2b29ed662ad9336f5ab"},{"author":{"_account_id":19346,"name":"yinwei","email":"yinweiishere@icloud.com","username":"yinwei"},"change_message_id":"b72b7ffbfe9d2b5d4fb06c2bf56c0425996969c4","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"In multi-tenants scenario, when a user lists all the checkpoints they"},{"line_number":17,"context_line":"created all the checkpoints in the bank are returned. This is problematic"},{"line_number":18,"context_line":"as there is nothing stopping from on project from restoring another\u0027s data."},{"line_number":19,"context_line":"This means that users can use the update\\restore mechanism to bypass other"},{"line_number":20,"context_line":"security in OpenStack. Further more the admin might not want to give all"},{"line_number":21,"context_line":"projects access to all providers."}],"source_content_type":"text/x-rst","patch_set":12,"id":"da4df55a_c153d269","line":18,"updated":"2016-12-26 10:29:32.000000000","message":"from from, typo?","commit_id":"4417bee104f5bbf3b97cac856f454a86eea56be5"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"bf454126c97819fdee0546f1ef26f6f8d82d37a5","unresolved":false,"context_lines":[{"line_number":24,"context_line":"-----------"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"- Single site cloud provider. One project per user, many users."},{"line_number":27,"context_line":"  Restore only to the same project."},{"line_number":28,"context_line":"- Single site, enterprise enviromenet, many-to-many users and projects."},{"line_number":29,"context_line":"- Cross site, no federated Keystone."},{"line_number":30,"context_line":"- Access checkpoints even if project was deleted."}],"source_content_type":"text/x-rst","patch_set":12,"id":"7a77a97e_dfb41784","line":27,"range":{"start_line":27,"start_character":2,"end_line":27,"end_character":34},"updated":"2016-11-21 07:59:14.000000000","message":"The backup data is only restored to the same project.","commit_id":"4417bee104f5bbf3b97cac856f454a86eea56be5"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"bf454126c97819fdee0546f1ef26f6f8d82d37a5","unresolved":false,"context_lines":[{"line_number":26,"context_line":"- Single site cloud provider. One project per user, many users."},{"line_number":27,"context_line":"  Restore only to the same project."},{"line_number":28,"context_line":"- Single site, enterprise enviromenet, many-to-many users and projects."},{"line_number":29,"context_line":"- Cross site, no federated Keystone."},{"line_number":30,"context_line":"- Access checkpoints even if project was deleted."},{"line_number":31,"context_line":"- Restore a checkpoint from a different project."},{"line_number":32,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"7a77a97e_ff5d537a","line":29,"range":{"start_line":29,"start_character":0,"end_line":29,"end_character":36},"updated":"2016-11-21 07:59:14.000000000","message":"Why we only consider this scenario of no federated Keystone, I think the scenario about crossing different AvailabilityZone openstack site with centralized keystone authentication is more common. As we know, most of the Pubilc Cloud are deployed in different region according to different AvailabilityZone.","commit_id":"4417bee104f5bbf3b97cac856f454a86eea56be5"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"01e79ae63937dad24d11dd1dbc3cdf6e0b9d17a4","unresolved":false,"context_lines":[{"line_number":26,"context_line":"- Single site cloud provider. One project per user, many users."},{"line_number":27,"context_line":"  Restore only to the same project."},{"line_number":28,"context_line":"- Single site, enterprise enviromenet, many-to-many users and projects."},{"line_number":29,"context_line":"- Cross site, no federated Keystone."},{"line_number":30,"context_line":"- Access checkpoints even if project was deleted."},{"line_number":31,"context_line":"- Restore a checkpoint from a different project."},{"line_number":32,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"3a71b18c_e8f09fff","line":29,"range":{"start_line":29,"start_character":0,"end_line":29,"end_character":36},"in_reply_to":"7a77a97e_ff5d537a","updated":"2016-12-05 16:24:58.000000000","message":"It\u0027s not the only use case we consider. It\u0027s a use case we consider.\n\nThe common use case doesn\u0027t matter as we want to support being able to restore to a fresh openstack installation where non of the original projects\\users exist.","commit_id":"4417bee104f5bbf3b97cac856f454a86eea56be5"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"4ebce5a5f02e52e84408d0581b720025419d464f","unresolved":false,"context_lines":[{"line_number":33,"context_line":"Proposed Change"},{"line_number":34,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Every provider can be mapped to different projects. Every project that"},{"line_number":37,"context_line":"has access to the provider can see all the checkpoints that are contained"},{"line_number":38,"context_line":"in the checkpoint. The mapping is done by the administrator."},{"line_number":39,"context_line":"The administrator can create many provider with different bank credentials"}],"source_content_type":"text/x-rst","patch_set":12,"id":"7a77a97e_2a714778","line":36,"range":{"start_line":36,"start_character":42,"end_line":36,"end_character":50},"updated":"2016-11-21 09:05:49.000000000","message":"Here projects mean tenants?","commit_id":"4417bee104f5bbf3b97cac856f454a86eea56be5"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"01e79ae63937dad24d11dd1dbc3cdf6e0b9d17a4","unresolved":false,"context_lines":[{"line_number":33,"context_line":"Proposed Change"},{"line_number":34,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Every provider can be mapped to different projects. Every project that"},{"line_number":37,"context_line":"has access to the provider can see all the checkpoints that are contained"},{"line_number":38,"context_line":"in the checkpoint. The mapping is done by the administrator."},{"line_number":39,"context_line":"The administrator can create many provider with different bank credentials"}],"source_content_type":"text/x-rst","patch_set":12,"id":"3a71b18c_484a7327","line":36,"range":{"start_line":36,"start_character":42,"end_line":36,"end_character":50},"in_reply_to":"7a77a97e_2a714778","updated":"2016-12-05 16:24:58.000000000","message":"No, the preferred term is project.","commit_id":"4417bee104f5bbf3b97cac856f454a86eea56be5"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"4ebce5a5f02e52e84408d0581b720025419d464f","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Every provider can be mapped to different projects. Every project that"},{"line_number":37,"context_line":"has access to the provider can see all the checkpoints that are contained"},{"line_number":38,"context_line":"in the checkpoint. The mapping is done by the administrator."},{"line_number":39,"context_line":"The administrator can create many provider with different bank credentials"},{"line_number":40,"context_line":"thus limiting access of different project."},{"line_number":41,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"7a77a97e_aa0397bd","line":38,"range":{"start_line":38,"start_character":0,"end_line":38,"end_character":18},"updated":"2016-11-21 09:05:49.000000000","message":"in the bank of provider?","commit_id":"4417bee104f5bbf3b97cac856f454a86eea56be5"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"01e79ae63937dad24d11dd1dbc3cdf6e0b9d17a4","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Every provider can be mapped to different projects. Every project that"},{"line_number":37,"context_line":"has access to the provider can see all the checkpoints that are contained"},{"line_number":38,"context_line":"in the checkpoint. The mapping is done by the administrator."},{"line_number":39,"context_line":"The administrator can create many provider with different bank credentials"},{"line_number":40,"context_line":"thus limiting access of different project."},{"line_number":41,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"3a71b18c_88500bd6","line":38,"range":{"start_line":38,"start_character":0,"end_line":38,"end_character":18},"in_reply_to":"7a77a97e_aa0397bd","updated":"2016-12-05 16:24:58.000000000","message":"Done","commit_id":"4417bee104f5bbf3b97cac856f454a86eea56be5"},{"author":{"_account_id":19346,"name":"yinwei","email":"yinweiishere@icloud.com","username":"yinwei"},"change_message_id":"b72b7ffbfe9d2b5d4fb06c2bf56c0425996969c4","unresolved":false,"context_lines":[{"line_number":37,"context_line":"has access to the provider can see all the checkpoints that are contained"},{"line_number":38,"context_line":"in the checkpoint. The mapping is done by the administrator."},{"line_number":39,"context_line":"The administrator can create many provider with different bank credentials"},{"line_number":40,"context_line":"thus limiting access of different project."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"This gives the admin full control over who can access what and is easily changed."},{"line_number":43,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"da4df55a_04c08829","line":40,"updated":"2016-12-26 10:29:32.000000000","message":"Here you mean we will have one provider mapped to different projects with different credentials? The bank credential is authorized by keystone or by bank service separately?","commit_id":"4417bee104f5bbf3b97cac856f454a86eea56be5"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"4ebce5a5f02e52e84408d0581b720025419d464f","unresolved":false,"context_lines":[{"line_number":39,"context_line":"The administrator can create many provider with different bank credentials"},{"line_number":40,"context_line":"thus limiting access of different project."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"This gives the admin full control over who can access what and is easily changed."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"In the UI we should automatically filter for current project in the default view."},{"line_number":45,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"7a77a97e_659290f8","line":42,"range":{"start_line":42,"start_character":0,"end_line":42,"end_character":81},"updated":"2016-11-21 09:05:49.000000000","message":"We need think carefully about this. In karbor, the providers have the meaning of gold/silver/copper services to provide Service-Level Agreement services. So we may need think over from API design, who can use which provider, not only think about who can access what bank.","commit_id":"4417bee104f5bbf3b97cac856f454a86eea56be5"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"01e79ae63937dad24d11dd1dbc3cdf6e0b9d17a4","unresolved":false,"context_lines":[{"line_number":39,"context_line":"The administrator can create many provider with different bank credentials"},{"line_number":40,"context_line":"thus limiting access of different project."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"This gives the admin full control over who can access what and is easily changed."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"In the UI we should automatically filter for current project in the default view."},{"line_number":45,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"3a71b18c_08015b6a","line":42,"range":{"start_line":42,"start_character":0,"end_line":42,"end_character":81},"in_reply_to":"7a77a97e_659290f8","updated":"2016-12-05 16:24:58.000000000","message":"You are correct, this makes it so that there are a lot of providers. In this suggestion you will actually need to duplicate providers for each project group.\n\nMaybe it\u0027s better if we have provider templates. A way to say that a provider is based on another only leaving the credentials as part of the configuration and the rest is from the template.\n\nIt will still mean that for each project you will have to target the template and give specific credentials for the project though.","commit_id":"4417bee104f5bbf3b97cac856f454a86eea56be5"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"4ebce5a5f02e52e84408d0581b720025419d464f","unresolved":false,"context_lines":[{"line_number":41,"context_line":""},{"line_number":42,"context_line":"This gives the admin full control over who can access what and is easily changed."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"In the UI we should automatically filter for current project in the default view."},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"Data model impact"},{"line_number":47,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":12,"id":"7a77a97e_2aa2279b","line":44,"range":{"start_line":44,"start_character":0,"end_line":44,"end_character":81},"updated":"2016-11-21 09:05:49.000000000","message":"I think so. The checkpoint data should be filtered by project like other resources (plan/restore/trigger) in karbor.","commit_id":"4417bee104f5bbf3b97cac856f454a86eea56be5"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"01e79ae63937dad24d11dd1dbc3cdf6e0b9d17a4","unresolved":false,"context_lines":[{"line_number":41,"context_line":""},{"line_number":42,"context_line":"This gives the admin full control over who can access what and is easily changed."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"In the UI we should automatically filter for current project in the default view."},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"Data model impact"},{"line_number":47,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":12,"id":"3a71b18c_48f7d38a","line":44,"range":{"start_line":44,"start_character":0,"end_line":44,"end_character":81},"in_reply_to":"7a77a97e_2aa2279b","updated":"2016-12-05 16:24:58.000000000","message":"This is what is being suggested.","commit_id":"4417bee104f5bbf3b97cac856f454a86eea56be5"},{"author":{"_account_id":23068,"name":"Wang Hui","email":"wanghui71@huawei.com","username":"krejwang"},"change_message_id":"f5b959684bed9db74b176e009db0f8a478becab9","unresolved":false,"context_lines":[{"line_number":45,"context_line":""},{"line_number":46,"context_line":"Data model impact"},{"line_number":47,"context_line":"-----------------"},{"line_number":48,"context_line":"Adding the `projects` field to the provider configuration."},{"line_number":49,"context_line":"This will contain a list of projects that can use this provider."},{"line_number":50,"context_line":"A special project id \u0027*\u0027 can be used to signify that a provider should be available"},{"line_number":51,"context_line":"to all projects."}],"source_content_type":"text/x-rst","patch_set":12,"id":"7a77a97e_961a8f7b","line":48,"range":{"start_line":48,"start_character":10,"end_line":48,"end_character":27},"updated":"2016-11-21 00:47:41.000000000","message":"Hi Saggi, what is the value of \u0027projects\u0027 field, a unique uuid or a string created by administrator?","commit_id":"4417bee104f5bbf3b97cac856f454a86eea56be5"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"01e79ae63937dad24d11dd1dbc3cdf6e0b9d17a4","unresolved":false,"context_lines":[{"line_number":45,"context_line":""},{"line_number":46,"context_line":"Data model impact"},{"line_number":47,"context_line":"-----------------"},{"line_number":48,"context_line":"Adding the `projects` field to the provider configuration."},{"line_number":49,"context_line":"This will contain a list of projects that can use this provider."},{"line_number":50,"context_line":"A special project id \u0027*\u0027 can be used to signify that a provider should be available"},{"line_number":51,"context_line":"to all projects."}],"source_content_type":"text/x-rst","patch_set":12,"id":"3a71b18c_483ef328","line":48,"range":{"start_line":48,"start_character":10,"end_line":48,"end_character":27},"in_reply_to":"7a77a97e_961a8f7b","updated":"2016-12-05 16:24:58.000000000","message":"It\u0027s a list of the projects\u0027 uuids","commit_id":"4417bee104f5bbf3b97cac856f454a86eea56be5"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"4ebce5a5f02e52e84408d0581b720025419d464f","unresolved":false,"context_lines":[{"line_number":46,"context_line":"Data model impact"},{"line_number":47,"context_line":"-----------------"},{"line_number":48,"context_line":"Adding the `projects` field to the provider configuration."},{"line_number":49,"context_line":"This will contain a list of projects that can use this provider."},{"line_number":50,"context_line":"A special project id \u0027*\u0027 can be used to signify that a provider should be available"},{"line_number":51,"context_line":"to all projects."},{"line_number":52,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"7a77a97e_0a71ebe0","line":49,"range":{"start_line":49,"start_character":28,"end_line":49,"end_character":36},"updated":"2016-11-21 09:05:49.000000000","message":"The projects or tenants are managed by keystone dynamically. I don\u0027t think a list of projects value are configured to provider conf is a suitable solution.","commit_id":"4417bee104f5bbf3b97cac856f454a86eea56be5"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"01e79ae63937dad24d11dd1dbc3cdf6e0b9d17a4","unresolved":false,"context_lines":[{"line_number":46,"context_line":"Data model impact"},{"line_number":47,"context_line":"-----------------"},{"line_number":48,"context_line":"Adding the `projects` field to the provider configuration."},{"line_number":49,"context_line":"This will contain a list of projects that can use this provider."},{"line_number":50,"context_line":"A special project id \u0027*\u0027 can be used to signify that a provider should be available"},{"line_number":51,"context_line":"to all projects."},{"line_number":52,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"3a71b18c_c8f4c35c","line":49,"range":{"start_line":49,"start_character":28,"end_line":49,"end_character":36},"in_reply_to":"7a77a97e_0a71ebe0","updated":"2016-12-05 16:24:58.000000000","message":"the current configuration files are only there until we have the provider API which will allow us to put that information in the DB.\nAlso adding the the ID \u0027*\u0027 will automatically expose this to all projects.\n\nThere needs to be a mapping between projects and credentials.","commit_id":"4417bee104f5bbf3b97cac856f454a86eea56be5"}]}
