Feature #12626

Updated by Peter Amstutz almost 4 years ago

New API end point to migrate user accounts, accepts tokens of old user and new user.

Workbench will provide a "merge accounts page" which enables the user to be logged in to both accounts, presents a confirmation (possibly calling "dry run" API endpoint describing what will happen), and sends API request to merge.

All records (links, collections, projects, jobs, pipelines, etc) owned by old user are reassigned to a new group which is owned by the new user.

Links with tail_uuid of the old user are changed to the new user.

Links with head_uuid of the old user are deleted (??)

API tokens associated with old user are deleted (possible exception for scoped sharing links?)

SSH keys associated with the old user are deleted.

User gets to choose to keep either old or new username (used for vm logins, git repository namespace).

Old user should be completely removed from system after migration.

Internal DB refactor: separate authorizations table links current "identity_url" to a user UUID, can have multiple external authorizations linked to one user.