{"action":"opened","issue":{"url":"https://api.github.com/repos/liqd/thentos/issues/77","labels_url":"https://api.github.com/repos/liqd/thentos/issues/77/labels{/name}","comments_url":"https://api.github.com/repos/liqd/thentos/issues/77/comments","events_url":"https://api.github.com/repos/liqd/thentos/issues/77/events","html_url":"https://github.com/liqd/thentos/issues/77","id":75951684,"number":77,"title":"Authorization: Concepts","user":{"login":"mf59816","id":216437,"avatar_url":"https://avatars.githubusercontent.com/u/216437?v=3","gravatar_id":"","url":"https://api.github.com/users/mf59816","html_url":"https://github.com/mf59816","followers_url":"https://api.github.com/users/mf59816/followers","following_url":"https://api.github.com/users/mf59816/following{/other_user}","gists_url":"https://api.github.com/users/mf59816/gists{/gist_id}","starred_url":"https://api.github.com/users/mf59816/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mf59816/subscriptions","organizations_url":"https://api.github.com/users/mf59816/orgs","repos_url":"https://api.github.com/users/mf59816/repos","events_url":"https://api.github.com/users/mf59816/events{/privacy}","received_events_url":"https://api.github.com/users/mf59816/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/liqd/thentos/labels/help%20wanted","name":"help wanted","color":"159818"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-05-13T11:26:52Z","updated_at":"2015-05-13T11:26:52Z","closed_at":null,"body":"I'm opening a ticket for discussion on dclabels and lio.  Some of the questions I can think of:\r\n\r\n1. What is the relationship between access control and IFC?\r\n\r\n2. If we assign a DCLabel to an action, what does its integrity part mean?  Who has had write access to the data in the past?  Who is allowed to write it during the action execution?  Something else?  How does integrity relate to write protection?  (Similar questions exist for secrecy.)\r\n\r\n3. The integrity part seems to have exactly the same mechanics as the secrecy part in the sense that turning the conjunction into a disjunction and vice versa in meet / join cancels out the reversal of the implication arrow in the definition of the can-flow-to relation.  Is there a technical reason that it's the other way round, or is it motivated by intuition?\r\n\r\n4. Is there a simplification of disjunction category labels that we can map DCLabel into to understand them better?\r\n\r\n5. Which of label, clearance, privilege should we attach to data, actions, or other things in our code, and in which way?  What does that mean?\r\n\r\n6. Are there articles / tutorials missing on the reading list below?\r\n\r\n\r\nOur reading list so far:\r\n\r\n- http://www.scs.stanford.edu/~dm/home/papers/stefan:dclabels.pdf\r\n- http://www.cse.chalmers.se/~russo/publications_files/haskell11.pdf\r\n- http://www.cse.psu.edu/~trj1/cse543-f13/docs/denning_lattice.pdf\r\n\r\n"}}