diff options
author | George Goldberg <george@gberg.me> | 2017-02-21 15:47:28 +0000 |
---|---|---|
committer | Christopher Speller <crspeller@gmail.com> | 2017-02-21 10:47:28 -0500 |
commit | 8bbe5dfb2f617da92300029b10a8b6b2672e4bf5 (patch) | |
tree | 3117cd065299d18890ee01ba073ad60f8021deec /utils | |
parent | 9646bddd21bf778349d1563e4fde756d4e981dd2 (diff) | |
download | chat-8bbe5dfb2f617da92300029b10a8b6b2672e4bf5.tar.gz chat-8bbe5dfb2f617da92300029b10a8b6b2672e4bf5.tar.bz2 chat-8bbe5dfb2f617da92300029b10a8b6b2672e4bf5.zip |
Fix permission grants for channel management. (#5478)
When selecting the Channel, Team & System level for channel permissions,
they must be explicitly granted to the Channel *and* the Team admins.
Diffstat (limited to 'utils')
-rw-r--r-- | utils/authorization.go | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/utils/authorization.go b/utils/authorization.go index de288fc81..9a45878a2 100644 --- a/utils/authorization.go +++ b/utils/authorization.go @@ -34,6 +34,10 @@ func SetDefaultRolesBasedOnConfig() { ) break case model.PERMISSIONS_CHANNEL_ADMIN: + model.ROLE_TEAM_ADMIN.Permissions = append( + model.ROLE_TEAM_ADMIN.Permissions, + model.PERMISSION_MANAGE_PUBLIC_CHANNEL_PROPERTIES.Id, + ) model.ROLE_CHANNEL_ADMIN.Permissions = append( model.ROLE_CHANNEL_ADMIN.Permissions, model.PERMISSION_MANAGE_PUBLIC_CHANNEL_PROPERTIES.Id, @@ -55,6 +59,10 @@ func SetDefaultRolesBasedOnConfig() { ) break case model.PERMISSIONS_CHANNEL_ADMIN: + model.ROLE_TEAM_ADMIN.Permissions = append( + model.ROLE_TEAM_ADMIN.Permissions, + model.PERMISSION_DELETE_PUBLIC_CHANNEL.Id, + ) model.ROLE_CHANNEL_ADMIN.Permissions = append( model.ROLE_CHANNEL_ADMIN.Permissions, model.PERMISSION_DELETE_PUBLIC_CHANNEL.Id, @@ -91,6 +99,10 @@ func SetDefaultRolesBasedOnConfig() { ) break case model.PERMISSIONS_CHANNEL_ADMIN: + model.ROLE_TEAM_ADMIN.Permissions = append( + model.ROLE_TEAM_ADMIN.Permissions, + model.PERMISSION_MANAGE_PRIVATE_CHANNEL_PROPERTIES.Id, + ) model.ROLE_CHANNEL_ADMIN.Permissions = append( model.ROLE_CHANNEL_ADMIN.Permissions, model.PERMISSION_MANAGE_PRIVATE_CHANNEL_PROPERTIES.Id, @@ -112,6 +124,10 @@ func SetDefaultRolesBasedOnConfig() { ) break case model.PERMISSIONS_CHANNEL_ADMIN: + model.ROLE_TEAM_ADMIN.Permissions = append( + model.ROLE_TEAM_ADMIN.Permissions, + model.PERMISSION_DELETE_PRIVATE_CHANNEL.Id, + ) model.ROLE_CHANNEL_ADMIN.Permissions = append( model.ROLE_CHANNEL_ADMIN.Permissions, model.PERMISSION_DELETE_PRIVATE_CHANNEL.Id, |