1
0
mirror of https://github.com/bitwarden/server.git synced 2025-07-03 17:12:49 -05:00

[AC-1682] Postgres migrations

This commit is contained in:
Rui Tome
2023-12-20 11:57:36 +00:00
parent c5f1be4d79
commit 86ba89f230
9 changed files with 4752 additions and 63 deletions

View File

@ -1,10 +1,24 @@
-- Update "CollectionUser" with "Manage" = 1 for all users with Manager role or 'EditAssignedCollections' permission
-- Update `CollectionUsers` with `Manage` = 1 for all users with Manager role or 'EditAssignedCollections' permission
UPDATE "CollectionUsers" cu
SET "ReadOnly" = false,
SET
"ReadOnly" = false,
"HidePasswords" = false,
"Manage" = true
FROM "OrganizationUser" ou
FROM "OrganizationUser" ou
WHERE cu."OrganizationUserId" = ou."Id"
AND (ou."Type" = 3 OR
AND (ou."Type" = 3 OR
(ou."Permissions" IS NOT NULL AND
(ou."Permissions"::text)::jsonb->>'editAssignedCollections' = 'true'));
((ou."Permissions"::text)::jsonb->>'editAssignedCollections') = 'true'));
-- Insert rows into CollectionUsers for Managers and users with 'EditAssignedCollections' permission assigned to groups with collection access
INSERT INTO "CollectionUsers" ("CollectionId", "OrganizationUserId", "ReadOnly", "HidePasswords", "Manage")
SELECT cg."CollectionId", ou."Id", false, false, true
FROM "CollectionGroups" cg
INNER JOIN "GroupUser" gu ON cg."GroupId" = gu."GroupId"
INNER JOIN "OrganizationUser" ou ON gu."OrganizationUserId" = ou."Id"
WHERE (ou."Type" = 3 OR
(ou."Permissions" IS NOT NULL AND
((ou."Permissions"::text)::jsonb->>'editAssignedCollections') = 'true'))
AND NOT EXISTS (
SELECT 1 FROM "CollectionUsers" cu
WHERE cu."CollectionId" = cg."CollectionId" AND cu."OrganizationUserId" = ou."Id");