{"action":"created","issue":{"url":"https://api.github.com/repos/SpongePowered/Sponge/issues/211","labels_url":"https://api.github.com/repos/SpongePowered/Sponge/issues/211/labels{/name}","comments_url":"https://api.github.com/repos/SpongePowered/Sponge/issues/211/comments","events_url":"https://api.github.com/repos/SpongePowered/Sponge/issues/211/events","html_url":"https://github.com/SpongePowered/Sponge/issues/211","id":64815374,"number":211,"title":"Implement permissions handling for non-Player CommandSources","user":{"login":"zml2008","id":629092,"avatar_url":"https://avatars.githubusercontent.com/u/629092?v=3","gravatar_id":"","url":"https://api.github.com/users/zml2008","html_url":"https://github.com/zml2008","followers_url":"https://api.github.com/users/zml2008/followers","following_url":"https://api.github.com/users/zml2008/following{/other_user}","gists_url":"https://api.github.com/users/zml2008/gists{/gist_id}","starred_url":"https://api.github.com/users/zml2008/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zml2008/subscriptions","organizations_url":"https://api.github.com/users/zml2008/orgs","repos_url":"https://api.github.com/users/zml2008/repos","events_url":"https://api.github.com/users/zml2008/events{/privacy}","received_events_url":"https://api.github.com/users/zml2008/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"zml2008","id":629092,"avatar_url":"https://avatars.githubusercontent.com/u/629092?v=3","gravatar_id":"","url":"https://api.github.com/users/zml2008","html_url":"https://github.com/zml2008","followers_url":"https://api.github.com/users/zml2008/followers","following_url":"https://api.github.com/users/zml2008/following{/other_user}","gists_url":"https://api.github.com/users/zml2008/gists{/gist_id}","starred_url":"https://api.github.com/users/zml2008/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zml2008/subscriptions","organizations_url":"https://api.github.com/users/zml2008/orgs","repos_url":"https://api.github.com/users/zml2008/repos","events_url":"https://api.github.com/users/zml2008/events{/privacy}","received_events_url":"https://api.github.com/users/zml2008/received_events","type":"User","site_admin":false},"milestone":null,"comments":1,"created_at":"2015-03-27T17:43:00Z","updated_at":"2015-03-27T20:41:13Z","closed_at":null,"body":"paging @SpongePowered/developers \r\n\r\n# Handling CommandSource permissions\r\n\r\n## Server console\r\nDo we give server console real permissions? Maybe just make it be the default subject where UNDEFINED becomes TRUE??? I can see that we want to like stop the console from doing certain commands like accidentally, but if someone could access the console the sender could also access the permissions configuration to change permissions.\r\n\r\nConsole permissions subjects could also be lumped in with like 'remote' subjects -- like rcon, console, etc are part of the same collection?\r\n\r\n## Rcon\r\n\r\nShould be handled similar defaults to server console. More of a point to give this actual permissions, since there is a point to restricting capabilities (rcon access != FS access)\r\n\r\n## Command Blocks\r\nCommand blocks are harder. There are really multiple ways of going about this:\r\n\r\n1. All command blocks have the same permissions -- this is simple, lump the single 'commandblock' subject in with the rest of the system subjects\r\n2. Each command block's permissions are determined by the name given to it -- so default command block has permissions for '@', others by name. Enabling this means we might as well expect permissions plugins to support arbitrary subject types -- not just users/groups. This gives command blocks separate permissions from users/groups **i prefer this one**\r\n\r\n3. The command blocks share permissions with the same-named player. This may cause issues though if a command block is not required to have the same name as a player. Gotta test???\r\n\r\n\r\nAny other senders I missed? Let me know what you think about these proposals."},"comment":{"url":"https://api.github.com/repos/SpongePowered/Sponge/issues/comments/87082701","html_url":"https://github.com/SpongePowered/Sponge/issues/211#issuecomment-87082701","issue_url":"https://api.github.com/repos/SpongePowered/Sponge/issues/211","id":87082701,"user":{"login":"modwizcode","id":369772,"avatar_url":"https://avatars.githubusercontent.com/u/369772?v=3","gravatar_id":"","url":"https://api.github.com/users/modwizcode","html_url":"https://github.com/modwizcode","followers_url":"https://api.github.com/users/modwizcode/followers","following_url":"https://api.github.com/users/modwizcode/following{/other_user}","gists_url":"https://api.github.com/users/modwizcode/gists{/gist_id}","starred_url":"https://api.github.com/users/modwizcode/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/modwizcode/subscriptions","organizations_url":"https://api.github.com/users/modwizcode/orgs","repos_url":"https://api.github.com/users/modwizcode/repos","events_url":"https://api.github.com/users/modwizcode/events{/privacy}","received_events_url":"https://api.github.com/users/modwizcode/received_events","type":"User","site_admin":false},"created_at":"2015-03-27T20:41:13Z","updated_at":"2015-03-27T20:41:13Z","body":"@zml2008 I like a lot of this, but for the command blocks I think the proposals are flawed. Command block names are also used by some maps (mostly older) to indicate who is saying the /say command from the command block.\r\n\r\nMoving forward /tellraw will solve that problem, but we still have many maps with /say and named command blocks would be confusing with permissions. \r\n\r\nAs long as you address that smallish issue I'm perfectly fine with using the name of the command block."}}