MM-38150 Adding playbooks permissions (#19096)

* Add playbooks related permissions.

* Add RolesGrantPermission to pluginapi

* Fixing scopes.

* New defaults.

* Fix defaults

* Fix tests.

* Fix migration.

* More test and migration fixes.

* Need to add everything to system admin too.

* Move to 63

* Feedback fixes.

* Fix system manager editing playbook permissions.
Этот коммит содержится в:
Christopher Speller
2021-12-07 09:43:33 -08:00
коммит произвёл GitHub
родитель 129f0aabd3
Коммит 5ec78546e2
19 изменённых файлов: 670 добавлений и 59 удалений

Просмотреть файл

@@ -41,6 +41,11 @@ func init() {
ChannelGuestRoleId,
ChannelUserRoleId,
ChannelAdminRoleId,
PlaybookAdminRoleId,
PlaybookMemberRoleId,
RunAdminRoleId,
RunMemberRoleId,
}, NewSystemRoleIDs...)
// When updating the values here, the values in mattermost-redux must also be updated.
@@ -362,6 +367,11 @@ const (
ChannelUserRoleId = "channel_user"
ChannelAdminRoleId = "channel_admin"
PlaybookAdminRoleId = "playbook_admin"
PlaybookMemberRoleId = "playbook_member"
RunAdminRoleId = "run_admin"
RunMemberRoleId = "run_member"
RoleNameMaxLength = 64
RoleDisplayNameMaxLength = 128
RoleDescriptionMaxLength = 1024
@@ -807,6 +817,61 @@ func MakeDefaultRoles() map[string]*Role {
BuiltIn: true,
}
roles[PlaybookAdminRoleId] = &Role{
Name: PlaybookAdminRoleId,
DisplayName: "authentication.roles.playbook_admin.name",
Description: "authentication.roles.playbook_admin.description",
Permissions: []string{
PermissionPublicPlaybookManageMembers.Id,
PermissionPublicPlaybookManageProperties.Id,
PermissionPrivatePlaybookManageMembers.Id,
PermissionPrivatePlaybookManageProperties.Id,
PermissionPublicPlaybookMakePrivate.Id,
},
SchemeManaged: true,
BuiltIn: true,
}
roles[PlaybookMemberRoleId] = &Role{
Name: PlaybookMemberRoleId,
DisplayName: "authentication.roles.playbook_member.name",
Description: "authentication.roles.playbook_member.description",
Permissions: []string{
PermissionPublicPlaybookView.Id,
PermissionPublicPlaybookManageMembers.Id,
PermissionPublicPlaybookManageProperties.Id,
PermissionPrivatePlaybookView.Id,
PermissionPrivatePlaybookManageMembers.Id,
PermissionPrivatePlaybookManageProperties.Id,
PermissionRunCreate.Id,
},
SchemeManaged: true,
BuiltIn: true,
}
roles[RunAdminRoleId] = &Role{
Name: RunAdminRoleId,
DisplayName: "authentication.roles.run_admin.name",
Description: "authentication.roles.run_admin.description",
Permissions: []string{
PermissionRunManageMembers.Id,
PermissionRunManageProperties.Id,
},
SchemeManaged: true,
BuiltIn: true,
}
roles[RunMemberRoleId] = &Role{
Name: RunMemberRoleId,
DisplayName: "authentication.roles.run_member.name",
Description: "authentication.roles.run_member.description",
Permissions: []string{
PermissionRunView.Id,
},
SchemeManaged: true,
BuiltIn: true,
}
roles[SystemGuestRoleId] = &Role{
Name: "system_guest",
DisplayName: "authentication.roles.global_guest.name",