)]}'
{"nova/image/glance.py":[{"author":{"_account_id":1132,"name":"Brian Waldon","email":"brian@waldon.cc","username":"bcwaldon"},"change_message_id":"605f952b7e2f63bdc3ac83e72e840598802fc792","unresolved":false,"context_lines":[{"line_number":296,"context_line":"        # TODO Currently this access control breaks if"},{"line_number":297,"context_line":"        # 1. Image is not owned by a project"},{"line_number":298,"context_line":"        # 2. Deleting user is not bound a project"},{"line_number":299,"context_line":"        properties \u003d image_meta[\u0027properties\u0027]"},{"line_number":300,"context_line":"        if (context.project_id and (\u0027project_id\u0027 in properties)"},{"line_number":301,"context_line":"            and (context.project_id !\u003d properties[\u0027project_id\u0027])):"},{"line_number":302,"context_line":"            raise exception.NotAuthorized(_(\"Not the image owner\"))"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAACX%2F%2F928%3D","line":299,"updated":"2011-09-30 15:10:21.000000000","message":"I don\u0027t think it is safe to depend on properties like this yet. Anybody can set them. If you use keystone, we don\u0027t have to do explicit checking like this.","commit_id":"b69f30cbafbab5867e64571ec576042299b3b52f"},{"author":{"_account_id":1631,"deleted":true},"change_message_id":"d177ef12562363fd1b84a952a66ad1454d33be9e","unresolved":false,"context_lines":[{"line_number":296,"context_line":"        # TODO Currently this access control breaks if"},{"line_number":297,"context_line":"        # 1. Image is not owned by a project"},{"line_number":298,"context_line":"        # 2. Deleting user is not bound a project"},{"line_number":299,"context_line":"        properties \u003d image_meta[\u0027properties\u0027]"},{"line_number":300,"context_line":"        if (context.project_id and (\u0027project_id\u0027 in properties)"},{"line_number":301,"context_line":"            and (context.project_id !\u003d properties[\u0027project_id\u0027])):"},{"line_number":302,"context_line":"            raise exception.NotAuthorized(_(\"Not the image owner\"))"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAACX%2F%2F92M%3D","line":299,"in_reply_to":"AAAACX%2F%2F928%3D","updated":"2011-09-30 15:20:51.000000000","message":"This patch was produced before keystone was known/usable and is used in an environment where glance is not public (otherwise deleting would be possible anyways). If this change can be adjusted to account for keystone, I\u0027d be happy to correct it, but I have no experience running with it. Would making this dependant on \"--use-deprecated-auth\" be enough?","commit_id":"b69f30cbafbab5867e64571ec576042299b3b52f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"42d52c9cf20ee79d94d6838e795e1dc030ff03d7","unresolved":false,"context_lines":[{"line_number":296,"context_line":"        # TODO Currently this access control breaks if"},{"line_number":297,"context_line":"        # 1. Image is not owned by a project"},{"line_number":298,"context_line":"        # 2. Deleting user is not bound a project"},{"line_number":299,"context_line":"        properties \u003d image_meta[\u0027properties\u0027]"},{"line_number":300,"context_line":"        if (context.project_id and (\u0027project_id\u0027 in properties)"},{"line_number":301,"context_line":"            and (context.project_id !\u003d properties[\u0027project_id\u0027])):"},{"line_number":302,"context_line":"            raise exception.NotAuthorized(_(\"Not the image owner\"))"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAACX%2F%2F9zU%3D","line":299,"in_reply_to":"AAAACX%2F%2F92M%3D","updated":"2011-09-30 15:46:50.000000000","message":"Yes, I think making this dependent on use-deprecated-auth would be fine.","commit_id":"b69f30cbafbab5867e64571ec576042299b3b52f"}]}
