{"action":"created","issue":{"url":"https://api.github.com/repos/solid/node-solid-server/issues/787","repository_url":"https://api.github.com/repos/solid/node-solid-server","labels_url":"https://api.github.com/repos/solid/node-solid-server/issues/787/labels{/name}","comments_url":"https://api.github.com/repos/solid/node-solid-server/issues/787/comments","events_url":"https://api.github.com/repos/solid/node-solid-server/issues/787/events","html_url":"https://github.com/solid/node-solid-server/issues/787","id":361840049,"node_id":"MDU6SXNzdWUzNjE4NDAwNDk=","number":787,"title":"Test for careful handling of all errors loading ACL files Group files, etc","user":{"login":"timbl","id":1254848,"node_id":"MDQ6VXNlcjEyNTQ4NDg=","avatar_url":"https://avatars3.githubusercontent.com/u/1254848?v=4","gravatar_id":"","url":"https://api.github.com/users/timbl","html_url":"https://github.com/timbl","followers_url":"https://api.github.com/users/timbl/followers","following_url":"https://api.github.com/users/timbl/following{/other_user}","gists_url":"https://api.github.com/users/timbl/gists{/gist_id}","starred_url":"https://api.github.com/users/timbl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timbl/subscriptions","organizations_url":"https://api.github.com/users/timbl/orgs","repos_url":"https://api.github.com/users/timbl/repos","events_url":"https://api.github.com/users/timbl/events{/privacy}","received_events_url":"https://api.github.com/users/timbl/received_events","type":"User","site_admin":false},"labels":[{"id":131385684,"node_id":"MDU6TGFiZWwxMzEzODU2ODQ=","url":"https://api.github.com/repos/solid/node-solid-server/labels/bug","name":"bug","color":"fc2929","default":true},{"id":1114355093,"node_id":"MDU6TGFiZWwxMTE0MzU1MDkz","url":"https://api.github.com/repos/solid/node-solid-server/labels/inrupt-sprint","name":"inrupt-sprint","color":"2233E0","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/solid/node-solid-server/milestones/8","html_url":"https://github.com/solid/node-solid-server/milestone/8","labels_url":"https://api.github.com/repos/solid/node-solid-server/milestones/8/labels","id":3316583,"node_id":"MDk6TWlsZXN0b25lMzMxNjU4Mw==","number":8,"title":"5.0.0","description":"","creator":{"login":"RubenVerborgh","id":675313,"node_id":"MDQ6VXNlcjY3NTMxMw==","avatar_url":"https://avatars1.githubusercontent.com/u/675313?v=4","gravatar_id":"","url":"https://api.github.com/users/RubenVerborgh","html_url":"https://github.com/RubenVerborgh","followers_url":"https://api.github.com/users/RubenVerborgh/followers","following_url":"https://api.github.com/users/RubenVerborgh/following{/other_user}","gists_url":"https://api.github.com/users/RubenVerborgh/gists{/gist_id}","starred_url":"https://api.github.com/users/RubenVerborgh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RubenVerborgh/subscriptions","organizations_url":"https://api.github.com/users/RubenVerborgh/orgs","repos_url":"https://api.github.com/users/RubenVerborgh/repos","events_url":"https://api.github.com/users/RubenVerborgh/events{/privacy}","received_events_url":"https://api.github.com/users/RubenVerborgh/received_events","type":"User","site_admin":false},"open_issues":8,"closed_issues":36,"state":"open","created_at":"2018-05-03T00:28:12Z","updated_at":"2018-11-14T12:09:53Z","due_on":"2018-11-22T08:00:00Z","closed_at":null},"comments":2,"created_at":"2018-09-19T16:58:49Z","updated_at":"2018-11-16T10:03:26Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"Checking the ACL files involves zooming up the tree looking for the first one which exists.  It is tempting for the developer to just zoom up they get a 200 good load the ACL file, passing over everything that fails, 404 or not.  This is a very bad idea!  It must be explicitly tested for.\r\n\r\n*The ACL file must only be skipped over if and only  if generated a only a 404 (not found) error*\r\n\r\nFailure scenarios include:\r\n\r\n- The net being down for a second, giving an error, when in fact the file exists. (with net access)\r\n\r\n- The process has some internal fleeting problem for a second, giving an error, when in fact the file exists. \r\n\r\n- The ACL file has a parse error, and then  is treated as though it didn't exist.  \r\n\r\n- The ACL file is not authorized at the unix file permissions level.\r\n\r\nand so on.  As the ACL file in question may be more constraining than the default one higher in the tree, and so these error would end up giving access to someone who would not have been allowed it.\r\n\r\nAn ACL file parse error must generate a 500 response.\r\n\r\n(Some but not all of these considerations apply to Group membership resources.)\r\n\r\n\r\n\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/solid/node-solid-server/issues/comments/439343894","html_url":"https://github.com/solid/node-solid-server/issues/787#issuecomment-439343894","issue_url":"https://api.github.com/repos/solid/node-solid-server/issues/787","id":439343894,"node_id":"MDEyOklzc3VlQ29tbWVudDQzOTM0Mzg5NA==","user":{"login":"RubenVerborgh","id":675313,"node_id":"MDQ6VXNlcjY3NTMxMw==","avatar_url":"https://avatars1.githubusercontent.com/u/675313?v=4","gravatar_id":"","url":"https://api.github.com/users/RubenVerborgh","html_url":"https://github.com/RubenVerborgh","followers_url":"https://api.github.com/users/RubenVerborgh/followers","following_url":"https://api.github.com/users/RubenVerborgh/following{/other_user}","gists_url":"https://api.github.com/users/RubenVerborgh/gists{/gist_id}","starred_url":"https://api.github.com/users/RubenVerborgh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RubenVerborgh/subscriptions","organizations_url":"https://api.github.com/users/RubenVerborgh/orgs","repos_url":"https://api.github.com/users/RubenVerborgh/repos","events_url":"https://api.github.com/users/RubenVerborgh/events{/privacy}","received_events_url":"https://api.github.com/users/RubenVerborgh/received_events","type":"User","site_admin":false},"created_at":"2018-11-16T10:03:26Z","updated_at":"2018-11-16T10:03:26Z","author_association":"MEMBER","body":"We have had a privilege escalation bug in the past, where an ACL file could not be read (due to a server bug), and it was happily skipped.\r\n\r\nSo I think the issue here is: if an ACL file exists on disk, never ever read the parent."}}
{"actor":{"display_login":"RubenVerborgh"}}