0
Files
src/components/user_manager
Hidehiko Abe c05b05ee44 Rename UserManager::users to persisted users.
To reflect what it is.

BUG=278643115
TEST=Tryjob

Change-Id: I0c0ba43a2d9209f08157c0248151bc2079b2ef69
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6229548
Reviewed-by: Xiyuan Xia <xiyuan@chromium.org>
Commit-Queue: Hidehiko Abe <hidehiko@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1415957}
2025-02-04 18:05:44 -08:00
..
2025-01-29 08:54:29 -08:00

UserManager

This directory contains files for managing ChromeOS users. Historically, the code manages both user and user sessions. There is an on-going effort to move user session related code into //components/session_manager.

UserManager is the interface for managing ChromeOS users. UserManagerImpl is the production implementation of the interface.

UserManagerImpl is created at the PreProfileInit stage and destroyed at the PostMainMessageLoopRun stage, via BrowserProcessPlatformPart::InitializeUserManager() and BrowserProcessPlatformPart::DestroyUserManager.

UserDirectoryIntegrityManager

This directory contains the UserDirectoryIntegrityManager class. This class is responsible for detecting when a user did not completely complete the onboarding flow and crashed before adding an auth factor. This can leave the user in an inconsistent state as their home directory will be encrypted with no auth factors added.

UserDirectoryIntegrityManager writes the user's email to local state before creating the user home directory and erases it after adding a successful auth factor. Those operations are initiated from MountPerformer::CreateNewUser and AuthFactorEditor::OnAddCredentials respectively.

design doc