MM-58548 Remove manage_team permissions from System Console Ancillary permissions (#27395)

* remove manage team permissions from sysconsole_write_user_management_chanels and sysconsole_write_user_management_groups

* update migrations, add unit tests

* run migrations-extract

* make updating ancillary permissions a post

* update file names

* add new api to doc, update body to just be []string

* revert moving ancillary permissions to post

* fix queries after final testing

* Update channel.go

* Update channel.go

* Update 000124_remove_manage_team_permission.up.sql

* Update 000124_remove_manage_team_permission.up.sql

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
Этот коммит содержится в:
Scott Bishel
2024-07-09 08:21:29 -06:00
коммит произвёл GitHub
родитель 485dc64c5f
Коммит 99881b819a
10 изменённых файлов: 108 добавлений и 5 удалений

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

@@ -0,0 +1 @@
-- Skipping it because the forward migrations are destructive

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

@@ -0,0 +1,21 @@
CREATE PROCEDURE RemoveUploadFilePermission()
BEGIN
updateRoles: LOOP
-- update affected rows
UPDATE Roles
SET Permissions = REGEXP_REPLACE(Permissions, 'manage_team[[:space:]|?]', '')
WHERE Permissions REGEXP 'manage_team[[:space:]|?]'
AND Permissions not like '%sysconsole_write_user_management_teams%'
AND (Permissions like '%sysconsole_write_user_management_channels%'
OR Permissions like '%sysconsole_write_user_management_groups%')
LIMIT 100;
-- check if the loop has completed
IF ROW_COUNT() < 100 THEN
LEAVE updateRoles;
END IF;
END LOOP updateRoles;
END;
CALL RemoveUploadFilePermission();
DROP PROCEDURE IF EXISTS RemoveUploadFilePermission;