Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(405)

Issue 2798343003: Merge "cros: Fix flaky owner detection" (Closed)

Created:
3 years, 8 months ago by xiyuan
Modified:
3 years, 8 months ago
Reviewers:
CC:
chromium-reviews
Target Ref:
refs/branch-heads/3029
Project:
chromium
Visibility:
Public.

Description

Merge "cros: Fix flaky owner detection" > When owner key is generated for a consumer owner, OwnerKeySet is > called on both DeviceSettingsService and OwnerSettingsServiceChromeOS. > Code that watches for ownership signal from DeviceSettingsService > (either as an observer or via NOTIFICATION_OWNERSHIP_STATUS_CHANGED) > also expects that the private part of the owner is available at the > time the signal is generated. However, the private key loading > in OwnerSettingsServiceChromeOS is independent of load operations > in DeviceSettingsService. The private key may or may not be loaded > when a load operation finishes. The CL adds an explicit flag about > whether a consumer ownership is going to be established. When the > flag is set, DeviceSettingsService defers all loads until InitOwner > is called, which happens when the private key is loaded. > > Another problem is that a bool flag |is_current_user_owner_| is > used but it is not updated when switching active user. This causes > incorrect value returned for IsCurrentUserOwner call. The CL fixes > the problems by replacing the bool flag with comparing active user > AccountId with owner AccountId. Security is not reduced because the > owner account id is part of the signed policy blob and only set to > UserManager after policy blob is validated. > > BUG=702308, 706820 > TEST=DeviceSettingsServiceTest.LoadDeferredDuringOwnershipEastablishment > > Review-Url: https://codereview.chromium.org/2779973007 > Cr-Commit-Position: refs/heads/master@{#461835} > (cherry picked from commit c8310bb706ce377ab64aac321f6e8f286826b360) Review-Url: https://codereview.chromium.org/2798343003 . Cr-Commit-Position: refs/branch-heads/3029@{#606} Cr-Branched-From: 939b32ee5ba05c396eef3fd992822fcca9a2e262-refs/heads/master@{#454471} Committed: https://chromium.googlesource.com/chromium/src/+/33ef6173cda18bb0e9bf1d890318216b59483207

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+92 lines, -36 lines) Patch
M chrome/browser/chromeos/login/existing_user_controller.cc View 2 chunks +12 lines, -3 lines 0 comments Download
M chrome/browser/chromeos/login/users/chrome_user_manager_impl.h View 1 chunk +0 lines, -3 lines 0 comments Download
M chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc View 2 chunks +0 lines, -9 lines 0 comments Download
M chrome/browser/chromeos/settings/device_settings_service.h View 2 chunks +9 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/settings/device_settings_service.cc View 4 chunks +16 lines, -2 lines 0 comments Download
M chrome/browser/chromeos/settings/device_settings_service_unittest.cc View 1 chunk +50 lines, -0 lines 0 comments Download
M components/user_manager/user_manager_base.h View 2 chunks +0 lines, -7 lines 0 comments Download
M components/user_manager/user_manager_base.cc View 4 chunks +5 lines, -12 lines 0 comments Download

Messages

Total messages: 2 (1 generated)
xiyuan
3 years, 8 months ago (2017-04-06 15:58:14 UTC) #2
Message was sent while issue was closed.
Committed patchset #1 (id:1) manually as
33ef6173cda18bb0e9bf1d890318216b59483207.

Powered by Google App Engine
This is Rietveld 408576698