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

Issue 6520008: Device policy infrastructure (Closed)

Created:
9 years, 10 months ago by Jakob Kummerow
Modified:
9 years, 6 months ago
CC:
chromium-reviews, Paweł Hajdan Jr., brettw-cc_chromium.org
Visibility:
Public.

Description

Device policy infrastructure This continues the work of http://codereview.chromium.org/6312121/. Description of that CL: This refactors the cloud policy-related code to support device policy that gets associated with the whole browser session. Device policy information will show up in g_browser_process->local_state(). Also, start supporting recommended policy from the cloud. BUG=chromium-os:11259, chromium-os:11257, chromium-os:11256 TEST=Enable device policy by passing --device-policy-cache-dir, claim a device and verify that policy gets downloaded. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=75732

Patch Set 1 #

Total comments: 71

Patch Set 2 : address comments; add tests #

Patch Set 3 : fix ChromeOS tests #

Total comments: 38

Patch Set 4 : address Mattias' comments #

Total comments: 14

Patch Set 5 : fix nits #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+2583 lines, -2222 lines) Patch
M chrome/browser/browser_process.h View 1 2 chunks +2 lines, -3 lines 0 comments Download
M chrome/browser/browser_process_impl.h View 1 3 chunks +4 lines, -6 lines 0 comments Download
M chrome/browser/browser_process_impl.cc View 1 6 chunks +14 lines, -16 lines 0 comments Download
A chrome/browser/policy/browser_policy_connector.h View 1 2 3 1 chunk +77 lines, -0 lines 0 comments Download
A chrome/browser/policy/browser_policy_connector.cc View 1 2 3 1 chunk +179 lines, -0 lines 0 comments Download
M chrome/browser/policy/cloud_policy_cache.h View 1 2 3 5 chunks +34 lines, -19 lines 0 comments Download
M chrome/browser/policy/cloud_policy_cache.cc View 1 2 3 6 chunks +117 lines, -71 lines 0 comments Download
M chrome/browser/policy/cloud_policy_cache_unittest.cc View 1 17 chunks +98 lines, -70 lines 0 comments Download
A chrome/browser/policy/cloud_policy_controller.h View 1 1 chunk +138 lines, -0 lines 0 comments Download
A chrome/browser/policy/cloud_policy_controller.cc View 1 1 chunk +309 lines, -0 lines 0 comments Download
A chrome/browser/policy/cloud_policy_controller_unittest.cc View 1 2 3 4 1 chunk +258 lines, -0 lines 0 comments Download
A chrome/browser/policy/cloud_policy_identity_strategy.h View 1 1 chunk +83 lines, -0 lines 0 comments Download
A chrome/browser/policy/cloud_policy_subsystem.h View 1 1 chunk +73 lines, -0 lines 0 comments Download
A chrome/browser/policy/cloud_policy_subsystem.cc View 1 2 3 1 chunk +124 lines, -0 lines 0 comments Download
M chrome/browser/policy/configuration_policy_pref_store.cc View 1 3 chunks +31 lines, -14 lines 0 comments Download
M chrome/browser/policy/configuration_policy_pref_store_unittest.cc View 1 chunk +1 line, -1 line 0 comments Download
D chrome/browser/policy/configuration_policy_provider_keeper.h View 1 chunk +0 lines, -46 lines 0 comments Download
D chrome/browser/policy/configuration_policy_provider_keeper.cc View 1 chunk +0 lines, -100 lines 0 comments Download
D chrome/browser/policy/device_management_policy_provider.h View 1 chunk +0 lines, -174 lines 0 comments Download
D chrome/browser/policy/device_management_policy_provider.cc View 1 1 chunk +0 lines, -416 lines 0 comments Download
D chrome/browser/policy/device_management_policy_provider_unittest.cc View 1 1 chunk +0 lines, -382 lines 0 comments Download
M chrome/browser/policy/device_management_service.h View 1 1 chunk +2 lines, -1 line 0 comments Download
A chrome/browser/policy/device_policy_identity_strategy.h View 1 1 chunk +62 lines, -0 lines 0 comments Download
A chrome/browser/policy/device_policy_identity_strategy.cc View 1 chunk +114 lines, -0 lines 0 comments Download
M chrome/browser/policy/device_token_fetcher.h View 1 2 chunks +76 lines, -137 lines 0 comments Download
M chrome/browser/policy/device_token_fetcher.cc View 1 2 chunks +117 lines, -279 lines 0 comments Download
M chrome/browser/policy/device_token_fetcher_unittest.cc View 1 2 3 4 2 chunks +127 lines, -179 lines 2 comments Download
A chrome/browser/policy/profile_policy_connector.h View 1 2 3 4 1 chunk +56 lines, -0 lines 0 comments Download
A chrome/browser/policy/profile_policy_connector.cc View 1 2 3 4 1 chunk +100 lines, -0 lines 0 comments Download
D chrome/browser/policy/profile_policy_context.h View 1 chunk +0 lines, -70 lines 0 comments Download
D chrome/browser/policy/profile_policy_context.cc View 1 chunk +0 lines, -96 lines 0 comments Download
A chrome/browser/policy/user_policy_identity_strategy.h View 1 1 chunk +81 lines, -0 lines 0 comments Download
A chrome/browser/policy/user_policy_identity_strategy.cc View 1 1 chunk +236 lines, -0 lines 0 comments Download
M chrome/browser/prefs/browser_prefs.cc View 1 2 3 3 chunks +4 lines, -2 lines 0 comments Download
M chrome/browser/prefs/pref_member.h View 1 2 3 2 chunks +6 lines, -1 line 0 comments Download
M chrome/browser/profiles/profile.h View 1 2 chunks +3 lines, -3 lines 0 comments Download
M chrome/browser/profiles/profile.cc View 1 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/profiles/profile_impl.h View 1 2 chunks +2 lines, -2 lines 0 comments Download
M chrome/browser/profiles/profile_impl.cc View 1 4 chunks +8 lines, -8 lines 0 comments Download
M chrome/chrome_browser.gypi View 1 2 3 4 5 chunks +15 lines, -6 lines 0 comments Download
M chrome/chrome_tests.gypi View 1 2 3 3 chunks +1 line, -3 lines 0 comments Download
M chrome/common/chrome_switches.h View 1 2 3 2 chunks +2 lines, -0 lines 0 comments Download
M chrome/common/chrome_switches.cc View 1 1 chunk +4 lines, -0 lines 0 comments Download
M chrome/common/pref_names.h View 1 1 chunk +3 lines, -1 line 0 comments Download
M chrome/common/pref_names.cc View 1 1 chunk +8 lines, -4 lines 0 comments Download
M chrome/test/testing_browser_process.h View 1 2 3 3 chunks +3 lines, -6 lines 0 comments Download
M chrome/test/testing_browser_process.cc View 1 3 chunks +8 lines, -12 lines 0 comments Download
D chrome/test/testing_device_token_fetcher.h View 1 chunk +0 lines, -46 lines 0 comments Download
D chrome/test/testing_device_token_fetcher.cc View 1 chunk +0 lines, -45 lines 0 comments Download
M chrome/test/testing_profile.h View 1 1 chunk +1 line, -1 line 0 comments Download
M chrome/test/testing_profile.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 23 (0 generated)
Jakob Kummerow
Continuation of Mattias' work. What's done: - renaming of newly introduced classes - integration with ...
9 years, 10 months ago (2011-02-14 13:53:01 UTC) #1
gfeher
My first round. http://codereview.chromium.org/6520008/diff/1/chrome/browser/policy/browser_policy_connector.h File chrome/browser/policy/browser_policy_connector.h (right): http://codereview.chromium.org/6520008/diff/1/chrome/browser/policy/browser_policy_connector.h#newcode30 chrome/browser/policy/browser_policy_connector.h:30: // Activates the cloud policy context. ...
9 years, 10 months ago (2011-02-14 17:28:50 UTC) #2
brettw
http://codereview.chromium.org/6520008/diff/1/chrome/browser/policy/cloud_policy_subsystem.cc File chrome/browser/policy/cloud_policy_subsystem.cc (right): http://codereview.chromium.org/6520008/diff/1/chrome/browser/policy/cloud_policy_subsystem.cc#newcode71 chrome/browser/policy/cloud_policy_subsystem.cc:71: device_management_service_->Initialize(request_context); It looks like this function starts a URL ...
9 years, 10 months ago (2011-02-14 17:49:31 UTC) #3
Mattias Nissler (ping if slow)
http://codereview.chromium.org/6520008/diff/1/chrome/browser/policy/cloud_policy_subsystem.cc File chrome/browser/policy/cloud_policy_subsystem.cc (right): http://codereview.chromium.org/6520008/diff/1/chrome/browser/policy/cloud_policy_subsystem.cc#newcode71 chrome/browser/policy/cloud_policy_subsystem.cc:71: device_management_service_->Initialize(request_context); On 2011/02/14 17:49:31, brettw wrote: > It looks ...
9 years, 10 months ago (2011-02-14 18:55:58 UTC) #4
brettw
http://codereview.chromium.org/6520008/diff/1/chrome/browser/policy/cloud_policy_subsystem.cc File chrome/browser/policy/cloud_policy_subsystem.cc (right): http://codereview.chromium.org/6520008/diff/1/chrome/browser/policy/cloud_policy_subsystem.cc#newcode71 chrome/browser/policy/cloud_policy_subsystem.cc:71: device_management_service_->Initialize(request_context); On 2011/02/14 18:55:58, Mattias Nissler wrote: > On ...
9 years, 10 months ago (2011-02-14 19:15:35 UTC) #5
Mattias Nissler (ping if slow)
http://codereview.chromium.org/6520008/diff/1/chrome/browser/policy/cloud_policy_subsystem.cc File chrome/browser/policy/cloud_policy_subsystem.cc (right): http://codereview.chromium.org/6520008/diff/1/chrome/browser/policy/cloud_policy_subsystem.cc#newcode71 chrome/browser/policy/cloud_policy_subsystem.cc:71: device_management_service_->Initialize(request_context); On 2011/02/14 19:15:35, brettw wrote: > On 2011/02/14 ...
9 years, 10 months ago (2011-02-14 19:38:56 UTC) #6
Mattias Nissler (ping if slow)
mostly nits. http://codereview.chromium.org/6520008/diff/1/chrome/browser/browser_main.cc File chrome/browser/browser_main.cc (right): http://codereview.chromium.org/6520008/diff/1/chrome/browser/browser_main.cc#newcode121 chrome/browser/browser_main.cc:121: #include <dbus/dbus-glib.h> why? I guess I accidentally ...
9 years, 10 months ago (2011-02-15 10:15:16 UTC) #7
danno
some nits, and please implement test cases. http://codereview.chromium.org/6520008/diff/1/chrome/browser/policy/browser_policy_connector.h File chrome/browser/policy/browser_policy_connector.h (right): http://codereview.chromium.org/6520008/diff/1/chrome/browser/policy/browser_policy_connector.h#newcode31 chrome/browser/policy/browser_policy_connector.h:31: // since ...
9 years, 10 months ago (2011-02-15 12:27:15 UTC) #8
danno
Mostly nits. Please implement this missing tests, then you'll get my LGTM.
9 years, 10 months ago (2011-02-15 12:52:58 UTC) #9
gfeher
more nits http://codereview.chromium.org/6520008/diff/1/chrome/browser/policy/cloud_policy_identity_strategy.h File chrome/browser/policy/cloud_policy_identity_strategy.h (right): http://codereview.chromium.org/6520008/diff/1/chrome/browser/policy/cloud_policy_identity_strategy.h#newcode10 chrome/browser/policy/cloud_policy_identity_strategy.h:10: #include <vector> Do you actually need vector ...
9 years, 10 months ago (2011-02-15 13:17:01 UTC) #10
brettw
On 2011/02/14 19:38:56, Mattias Nissler wrote: > That sounds reasonable. However, I'm not yet buying ...
9 years, 10 months ago (2011-02-15 21:53:51 UTC) #11
gfeher
http://codereview.chromium.org/6520008/diff/1/chrome/browser/policy/user_policy_identity_strategy.cc File chrome/browser/policy/user_policy_identity_strategy.cc (right): http://codereview.chromium.org/6520008/diff/1/chrome/browser/policy/user_policy_identity_strategy.cc#newcode43 chrome/browser/policy/user_policy_identity_strategy.cc:43: const FilePath& cache_file_; This shouldn't be a reference.
9 years, 10 months ago (2011-02-18 20:12:26 UTC) #12
gfeher
http://codereview.chromium.org/6520008/diff/1/chrome/browser/policy/user_policy_identity_strategy.cc File chrome/browser/policy/user_policy_identity_strategy.cc (right): http://codereview.chromium.org/6520008/diff/1/chrome/browser/policy/user_policy_identity_strategy.cc#newcode27 chrome/browser/policy/user_policy_identity_strategy.cc:27: UserPolicyIdentityStrategy::TokenCache> { Nit: please create a private destructor and ...
9 years, 10 months ago (2011-02-18 20:21:29 UTC) #13
Jakob Kummerow
I addressed all of your feedback; please have another look. I'm currently working on the ...
9 years, 10 months ago (2011-02-21 12:12:15 UTC) #14
Jakob Kummerow
As promised, here's an update to fix the ChromeOS tests.
9 years, 10 months ago (2011-02-21 12:51:04 UTC) #15
Mattias Nissler (ping if slow)
Almost there. The tests are good, thanks for writing them! http://codereview.chromium.org/6520008/diff/16001/chrome/browser/browser_main.cc File chrome/browser/browser_main.cc (right): http://codereview.chromium.org/6520008/diff/16001/chrome/browser/browser_main.cc#newcode56 ...
9 years, 10 months ago (2011-02-21 14:39:13 UTC) #16
Jakob Kummerow
Review control, this is Charlie-Lima-Six-Five-Two-Something, approaching runway 2 and requesting permission to land. http://codereview.chromium.org/6520008/diff/16001/chrome/browser/browser_main.cc File ...
9 years, 10 months ago (2011-02-22 10:02:33 UTC) #17
Mattias Nissler (ping if slow)
LGTM with nits and pending trybots. http://codereview.chromium.org/6520008/diff/20001/chrome/browser/policy/device_token_fetcher_unittest.cc File chrome/browser/policy/device_token_fetcher_unittest.cc (right): http://codereview.chromium.org/6520008/diff/20001/chrome/browser/policy/device_token_fetcher_unittest.cc#newcode38 chrome/browser/policy/device_token_fetcher_unittest.cc:38: class ProxyDeviceManagementBackend; Don't ...
9 years, 10 months ago (2011-02-22 12:01:20 UTC) #18
gfeher
LGTM with a nit. http://codereview.chromium.org/6520008/diff/20001/chrome/browser/policy/profile_policy_connector.h File chrome/browser/policy/profile_policy_connector.h (right): http://codereview.chromium.org/6520008/diff/20001/chrome/browser/policy/profile_policy_connector.h#newcode48 chrome/browser/policy/profile_policy_connector.h:48: scoped_ptr<UserPolicyIdentityStrategy> identity_strategy; Nit: please append ...
9 years, 10 months ago (2011-02-22 13:45:42 UTC) #19
danno
mostly nits http://codereview.chromium.org/6520008/diff/20001/chrome/browser/policy/cloud_policy_controller_unittest.cc File chrome/browser/policy/cloud_policy_controller_unittest.cc (right): http://codereview.chromium.org/6520008/diff/20001/chrome/browser/policy/cloud_policy_controller_unittest.cc#newcode30 chrome/browser/policy/cloud_policy_controller_unittest.cc:30: ~MockCloudPolicyIdentityStrategy() {} nit: virtual http://codereview.chromium.org/6520008/diff/20001/chrome/browser/policy/cloud_policy_controller_unittest.cc#newcode51 chrome/browser/policy/cloud_policy_controller_unittest.cc:51: ~MockDeviceTokenFetcher() ...
9 years, 10 months ago (2011-02-22 15:02:54 UTC) #20
Jakob Kummerow
http://codereview.chromium.org/6520008/diff/20001/chrome/browser/policy/cloud_policy_controller_unittest.cc File chrome/browser/policy/cloud_policy_controller_unittest.cc (right): http://codereview.chromium.org/6520008/diff/20001/chrome/browser/policy/cloud_policy_controller_unittest.cc#newcode30 chrome/browser/policy/cloud_policy_controller_unittest.cc:30: ~MockCloudPolicyIdentityStrategy() {} On 2011/02/22 15:02:54, danno wrote: > nit: ...
9 years, 10 months ago (2011-02-22 16:53:58 UTC) #21
danno
LGTM with one nit! http://codereview.chromium.org/6520008/diff/17006/chrome/browser/policy/device_token_fetcher_unittest.cc File chrome/browser/policy/device_token_fetcher_unittest.cc (right): http://codereview.chromium.org/6520008/diff/17006/chrome/browser/policy/device_token_fetcher_unittest.cc#newcode52 chrome/browser/policy/device_token_fetcher_unittest.cc:52: DeviceManagementBackend* backend_; nit: mark as ...
9 years, 10 months ago (2011-02-22 17:32:09 UTC) #22
Jakob Kummerow
9 years, 10 months ago (2011-02-23 10:04:56 UTC) #23
http://codereview.chromium.org/6520008/diff/17006/chrome/browser/policy/devic...
File chrome/browser/policy/device_token_fetcher_unittest.cc (right):

http://codereview.chromium.org/6520008/diff/17006/chrome/browser/policy/devic...
chrome/browser/policy/device_token_fetcher_unittest.cc:52:
DeviceManagementBackend* backend_;
On 2011/02/22 17:32:09, danno wrote:
> nit: mark as weak

Done.

...and landed.

Powered by Google App Engine
This is Rietveld 408576698