SCIM: Update UIDs for provisioned users (#113423)

* Update UIDs for provisioned users

* change the prefix from scim_ to scim-

* Update tests
This commit is contained in:
linoman
2025-11-05 17:52:23 +01:00
committed by GitHub
parent 1830e2ce9d
commit daa28773d6
2 changed files with 9 additions and 3 deletions
@@ -181,6 +181,12 @@ func addUserMigrations(mg *Migrator) {
mg.AddMigration("Add index on user.is_service_account and user.last_seen_at", NewAddIndexMigration(userV2, &Index{
Cols: []string{"is_service_account", "last_seen_at"}, Type: IndexType,
}))
// Prefix SCIM UID for provisioned users to avoid numeric/existing-id collisions
mg.AddMigration("Prefix SCIM uid for provisioned users", NewRawSQLMigration("").
SQLite("UPDATE user SET uid = 'scim-' || uid WHERE is_provisioned = 1 AND uid NOT LIKE 'scim-%';").
Postgres("UPDATE `user` SET uid = 'scim-' || uid WHERE is_provisioned = TRUE AND uid NOT LIKE 'scim-%';").
Mysql("UPDATE user SET uid = CONCAT('scim-', uid) WHERE is_provisioned = 1 AND uid NOT LIKE 'scim-%';"))
}
const migSQLITEisServiceAccountNullable = `ALTER TABLE user ADD COLUMN tmp_service_account BOOLEAN DEFAULT 0;