MM-14243: Remove any unused PERMANENT_DELETE_USER permission (#10516)

Этот коммит содержится в:
Jesús Espino
2019-03-29 16:33:40 +01:00
коммит произвёл GitHub
родитель 020ba82cdb
Коммит 4c8bac38bb
4 изменённых файлов: 17 добавлений и 4 удалений

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

@@ -125,7 +125,6 @@ func TestDoAdvancedPermissionsMigration(t *testing.T) {
model.PERMISSION_JOIN_PUBLIC_TEAMS.Id, model.PERMISSION_JOIN_PUBLIC_TEAMS.Id,
model.PERMISSION_CREATE_DIRECT_CHANNEL.Id, model.PERMISSION_CREATE_DIRECT_CHANNEL.Id,
model.PERMISSION_CREATE_GROUP_CHANNEL.Id, model.PERMISSION_CREATE_GROUP_CHANNEL.Id,
model.PERMISSION_PERMANENT_DELETE_USER.Id,
model.PERMISSION_CREATE_TEAM.Id, model.PERMISSION_CREATE_TEAM.Id,
}, },
"system_post_all": []string{ "system_post_all": []string{
@@ -306,7 +305,6 @@ func TestDoAdvancedPermissionsMigration(t *testing.T) {
model.PERMISSION_JOIN_PUBLIC_TEAMS.Id, model.PERMISSION_JOIN_PUBLIC_TEAMS.Id,
model.PERMISSION_CREATE_DIRECT_CHANNEL.Id, model.PERMISSION_CREATE_DIRECT_CHANNEL.Id,
model.PERMISSION_CREATE_GROUP_CHANNEL.Id, model.PERMISSION_CREATE_GROUP_CHANNEL.Id,
model.PERMISSION_PERMANENT_DELETE_USER.Id,
model.PERMISSION_CREATE_TEAM.Id, model.PERMISSION_CREATE_TEAM.Id,
}, },
"system_post_all": []string{ "system_post_all": []string{
@@ -582,7 +580,6 @@ func TestDoEmojisPermissionsMigration(t *testing.T) {
model.PERMISSION_JOIN_PUBLIC_TEAMS.Id, model.PERMISSION_JOIN_PUBLIC_TEAMS.Id,
model.PERMISSION_CREATE_DIRECT_CHANNEL.Id, model.PERMISSION_CREATE_DIRECT_CHANNEL.Id,
model.PERMISSION_CREATE_GROUP_CHANNEL.Id, model.PERMISSION_CREATE_GROUP_CHANNEL.Id,
model.PERMISSION_PERMANENT_DELETE_USER.Id,
model.PERMISSION_CREATE_TEAM.Id, model.PERMISSION_CREATE_TEAM.Id,
model.PERMISSION_CREATE_EMOJIS.Id, model.PERMISSION_CREATE_EMOJIS.Id,
model.PERMISSION_DELETE_EMOJIS.Id, model.PERMISSION_DELETE_EMOJIS.Id,

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

@@ -18,6 +18,7 @@ const (
MIGRATION_KEY_EMOJI_PERMISSIONS_SPLIT = "emoji_permissions_split" MIGRATION_KEY_EMOJI_PERMISSIONS_SPLIT = "emoji_permissions_split"
MIGRATION_KEY_WEBHOOK_PERMISSIONS_SPLIT = "webhook_permissions_split" MIGRATION_KEY_WEBHOOK_PERMISSIONS_SPLIT = "webhook_permissions_split"
MIGRATION_KEY_LIST_JOIN_PUBLIC_PRIVATE_TEAMS = "list_join_public_private_teams" MIGRATION_KEY_LIST_JOIN_PUBLIC_PRIVATE_TEAMS = "list_join_public_private_teams"
MIGRATION_KEY_REMOVE_PERMANENT_DELETE_USER = "remove_permanent_delete_user"
PERMISSION_MANAGE_SYSTEM = "manage_system" PERMISSION_MANAGE_SYSTEM = "manage_system"
PERMISSION_MANAGE_EMOJIS = "manage_emojis" PERMISSION_MANAGE_EMOJIS = "manage_emojis"
@@ -35,6 +36,7 @@ const (
PERMISSION_LIST_PRIVATE_TEAMS = "list_private_teams" PERMISSION_LIST_PRIVATE_TEAMS = "list_private_teams"
PERMISSION_JOIN_PUBLIC_TEAMS = "join_public_teams" PERMISSION_JOIN_PUBLIC_TEAMS = "join_public_teams"
PERMISSION_JOIN_PRIVATE_TEAMS = "join_private_teams" PERMISSION_JOIN_PRIVATE_TEAMS = "join_private_teams"
PERMISSION_PERMANENT_DELETE_USER = "permanent_delete_user"
) )
func isRole(role string) func(string, map[string]bool) bool { func isRole(role string) func(string, map[string]bool) bool {
@@ -173,6 +175,15 @@ func getListJoinPublicPrivateTeamsPermissionsMigration() permissionsMap {
} }
} }
func removePermanentDeleteUserMigration() permissionsMap {
return permissionsMap{
permissionTransformation{
On: permissionExists(PERMISSION_PERMANENT_DELETE_USER),
Remove: []string{PERMISSION_PERMANENT_DELETE_USER},
},
}
}
// DoPermissionsMigrations execute all the permissions migrations need by the current version. // DoPermissionsMigrations execute all the permissions migrations need by the current version.
func (a *App) DoPermissionsMigrations() *model.AppError { func (a *App) DoPermissionsMigrations() *model.AppError {
PermissionsMigrations := []struct { PermissionsMigrations := []struct {
@@ -182,6 +193,7 @@ func (a *App) DoPermissionsMigrations() *model.AppError {
{Key: MIGRATION_KEY_EMOJI_PERMISSIONS_SPLIT, Migration: getEmojisPermissionsSplitMigration}, {Key: MIGRATION_KEY_EMOJI_PERMISSIONS_SPLIT, Migration: getEmojisPermissionsSplitMigration},
{Key: MIGRATION_KEY_WEBHOOK_PERMISSIONS_SPLIT, Migration: getWebhooksPermissionsSplitMigration}, {Key: MIGRATION_KEY_WEBHOOK_PERMISSIONS_SPLIT, Migration: getWebhooksPermissionsSplitMigration},
{Key: MIGRATION_KEY_LIST_JOIN_PUBLIC_PRIVATE_TEAMS, Migration: getListJoinPublicPrivateTeamsPermissionsMigration}, {Key: MIGRATION_KEY_LIST_JOIN_PUBLIC_PRIVATE_TEAMS, Migration: getListJoinPublicPrivateTeamsPermissionsMigration},
{Key: MIGRATION_KEY_REMOVE_PERMANENT_DELETE_USER, Migration: removePermanentDeleteUserMigration},
} }
for _, migration := range PermissionsMigrations { for _, migration := range PermissionsMigrations {

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

@@ -286,6 +286,7 @@ func initializePermissions() {
"authentication.permissions.remove_others_reactions.description", "authentication.permissions.remove_others_reactions.description",
PERMISSION_SCOPE_CHANNEL, PERMISSION_SCOPE_CHANNEL,
} }
// DEPRECATED
PERMISSION_PERMANENT_DELETE_USER = &Permission{ PERMISSION_PERMANENT_DELETE_USER = &Permission{
"permanent_delete_user", "permanent_delete_user",
"authentication.permissions.permanent_delete_user.name", "authentication.permissions.permanent_delete_user.name",
@@ -304,12 +305,14 @@ func initializePermissions() {
"authentication.permissions.get_public_link.description", "authentication.permissions.get_public_link.description",
PERMISSION_SCOPE_SYSTEM, PERMISSION_SCOPE_SYSTEM,
} }
// DEPRECATED
PERMISSION_MANAGE_WEBHOOKS = &Permission{ PERMISSION_MANAGE_WEBHOOKS = &Permission{
"manage_webhooks", "manage_webhooks",
"authentication.permissions.manage_webhooks.name", "authentication.permissions.manage_webhooks.name",
"authentication.permissions.manage_webhooks.description", "authentication.permissions.manage_webhooks.description",
PERMISSION_SCOPE_TEAM, PERMISSION_SCOPE_TEAM,
} }
// DEPRECATED
PERMISSION_MANAGE_OTHERS_WEBHOOKS = &Permission{ PERMISSION_MANAGE_OTHERS_WEBHOOKS = &Permission{
"manage_others_webhooks", "manage_others_webhooks",
"authentication.permissions.manage_others_webhooks.name", "authentication.permissions.manage_others_webhooks.name",
@@ -352,12 +355,14 @@ func initializePermissions() {
"authentication.permissions.manage_system_wide_oauth.description", "authentication.permissions.manage_system_wide_oauth.description",
PERMISSION_SCOPE_SYSTEM, PERMISSION_SCOPE_SYSTEM,
} }
// DEPRECATED
PERMISSION_MANAGE_EMOJIS = &Permission{ PERMISSION_MANAGE_EMOJIS = &Permission{
"manage_emojis", "manage_emojis",
"authentication.permissions.manage_emojis.name", "authentication.permissions.manage_emojis.name",
"authentication.permissions.manage_emojis.description", "authentication.permissions.manage_emojis.description",
PERMISSION_SCOPE_TEAM, PERMISSION_SCOPE_TEAM,
} }
// DEPRECATED
PERMISSION_MANAGE_OTHERS_EMOJIS = &Permission{ PERMISSION_MANAGE_OTHERS_EMOJIS = &Permission{
"manage_others_emojis", "manage_others_emojis",
"authentication.permissions.manage_others_emojis.name", "authentication.permissions.manage_others_emojis.name",

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

@@ -268,7 +268,6 @@ func MakeDefaultRoles() map[string]*Role {
PERMISSION_JOIN_PUBLIC_TEAMS.Id, PERMISSION_JOIN_PUBLIC_TEAMS.Id,
PERMISSION_CREATE_DIRECT_CHANNEL.Id, PERMISSION_CREATE_DIRECT_CHANNEL.Id,
PERMISSION_CREATE_GROUP_CHANNEL.Id, PERMISSION_CREATE_GROUP_CHANNEL.Id,
PERMISSION_PERMANENT_DELETE_USER.Id,
}, },
SchemeManaged: true, SchemeManaged: true,
BuiltIn: true, BuiltIn: true,