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

Issue 2486813002: Add DeviceADPolicyManager to provide AD policy. (Closed)

Created:
4 years, 1 month ago by Thiemo Nagel
Modified:
4 years, 1 month ago
CC:
chromium-reviews, alemate+watch_chromium.org, achuith+watch_chromium.org, oshima+watch_chromium.org, davemoore+watch_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add DeviceADPolicyManager to provide AD policy. For Active Directory-managed devices, in BrowserPolicyConnectorChromeOS replace the DeviceCloudPolicyManagerChromeOS ConfigurationPolicyProvider by the new DeviceADPolicyManager ConfigurationPolicyProvider and disable DeviceLocalAccountPolicyService and ServerBackedStateKeysBroker. Note that accessors to the disabled services may return nullptr now. Policy refresh is not yet wired through to authpolicyd, instead it triggers another load from session_manager. BUG=656558 TBR=bartfab (enterprise_platform_keys_private_api.cc) TBR=achuith (chrome/browser/ui/webui/options/chromeos) Committed: https://crrev.com/8d2791ecec5187ab2188b123ce50710d14f9b9e4 Cr-Commit-Position: refs/heads/master@{#433171}

Patch Set 1 #

Total comments: 34

Patch Set 2 : Address Maksim's comments. #

Patch Set 3 : Rebase. #

Patch Set 4 : Fix startup crash. #

Patch Set 5 : Rebase. #

Patch Set 6 : Compilation fix. #

Patch Set 7 : Fix browser tests. #

Patch Set 8 : Fix ownership callback in DeviceSettingsService::SetDeviceMode(). #

Patch Set 9 : Polish #

Total comments: 7

Patch Set 10 : Fix some tests. #

Patch Set 11 : Fix more tests #

Patch Set 12 : Rename verify_signature --> cloud_validations #

Total comments: 8

Patch Set 13 : Address Bernhard's comments #

Total comments: 6
Unified diffs Side-by-side diffs Delta from patch set Stats (+588 lines, -227 lines) Patch
M chrome/browser/chromeos/BUILD.gn View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/login/screens/chrome_user_selection_screen.cc View 1 chunk +6 lines, -2 lines 0 comments Download
M chrome/browser/chromeos/login/users/avatar/user_image_manager_browsertest.cc View 1 2 3 4 5 6 7 8 9 10 2 chunks +9 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc View 1 2 1 chunk +16 lines, -13 lines 0 comments Download
M chrome/browser/chromeos/login/users/wallpaper/wallpaper_manager_policy_browsertest.cc View 1 2 3 4 5 6 7 8 9 10 3 chunks +10 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/policy/browser_policy_connector_chromeos.h View 1 2 3 4 5 6 7 8 6 chunks +18 lines, -3 lines 0 comments Download
M chrome/browser/chromeos/policy/browser_policy_connector_chromeos.cc View 1 2 3 4 5 6 7 8 6 chunks +39 lines, -29 lines 0 comments Download
A chrome/browser/chromeos/policy/device_active_directory_policy_manager.h View 1 1 chunk +47 lines, -0 lines 0 comments Download
A chrome/browser/chromeos/policy/device_active_directory_policy_manager.cc View 1 1 chunk +80 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/policy/device_cloud_policy_initializer.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/chromeos/policy/device_cloud_policy_store_chromeos.h View 1 2 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/chromeos/policy/device_cloud_policy_store_chromeos.cc View 1 2 3 4 5 6 7 8 5 chunks +9 lines, -3 lines 0 comments Download
M chrome/browser/chromeos/policy/device_policy_cros_browser_test.cc View 1 2 3 4 5 6 7 8 9 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/policy/enrollment_handler_chromeos.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/chromeos/settings/device_settings_service.h View 1 2 3 4 5 6 7 8 9 chunks +36 lines, -14 lines 0 comments Download
M chrome/browser/chromeos/settings/device_settings_service.cc View 1 2 3 4 5 6 7 8 9 10 11 8 chunks +59 lines, -50 lines 0 comments Download
M chrome/browser/chromeos/settings/install_attributes.h View 1 2 3 4 5 6 7 8 1 chunk +8 lines, -2 lines 0 comments Download
M chrome/browser/chromeos/settings/install_attributes.cc View 1 2 3 4 5 6 7 8 2 chunks +15 lines, -1 line 0 comments Download
M chrome/browser/chromeos/settings/install_attributes_unittest.cc View 1 2 3 4 5 6 7 8 1 chunk +10 lines, -6 lines 0 comments Download
M chrome/browser/chromeos/settings/session_manager_operation.h View 1 2 3 4 5 6 7 8 9 10 11 4 chunks +14 lines, -9 lines 0 comments Download
M chrome/browser/chromeos/settings/session_manager_operation.cc View 1 2 3 4 5 6 7 8 9 10 11 4 chunks +45 lines, -35 lines 0 comments Download
M chrome/browser/chromeos/settings/session_manager_operation_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 4 chunks +4 lines, -0 lines 0 comments Download
M chrome/browser/extensions/api/enterprise_platform_keys_private/enterprise_platform_keys_private_api.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/policy/cloud/policy_header_service_factory.cc View 1 2 3 4 5 6 7 8 1 chunk +3 lines, -0 lines 0 comments Download
M chrome/browser/policy/profile_policy_connector.cc View 1 2 chunks +7 lines, -1 line 0 comments Download
M chrome/browser/policy/profile_policy_connector_factory.cc View 1 2 3 4 5 6 7 8 1 chunk +8 lines, -5 lines 0 comments Download
M chrome/browser/ui/webui/chromeos/login/core_oobe_handler.cc View 1 2 1 chunk +8 lines, -4 lines 0 comments Download
M chrome/browser/ui/webui/options/chromeos/accounts_options_browsertest.cc View 1 2 3 4 5 6 3 chunks +9 lines, -0 lines 2 comments Download
M chrome/browser/ui/webui/options/chromeos/shared_options_browsertest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 4 chunks +11 lines, -0 lines 0 comments Download
M chrome/browser/ui/webui/policy_ui_handler.h View 1 2 2 chunks +3 lines, -3 lines 0 comments Download
M chrome/browser/ui/webui/policy_ui_handler.cc View 1 2 3 4 5 6 7 8 9 10 11 12 14 chunks +89 lines, -41 lines 4 comments Download
M components/policy/core/common/cloud/cloud_policy_client.cc View 1 1 chunk +1 line, -1 line 0 comments Download
M components/policy/core/common/policy_map.h View 1 chunk +3 lines, -0 lines 0 comments Download
M components/policy/core/common/policy_map.cc View 1 chunk +6 lines, -0 lines 0 comments Download
M components/policy/core/common/policy_types.h View 1 chunk +3 lines, -0 lines 0 comments Download
M components/policy_strings.grdp View 1 2 3 4 5 6 7 8 1 chunk +3 lines, -0 lines 0 comments Download

Messages

Total messages: 104 (83 generated)
Thiemo Nagel
Hi Maksim, following your comments on my user policy plumbing CL, I've tried to design ...
4 years, 1 month ago (2016-11-10 19:27:45 UTC) #35
emaxx
https://codereview.chromium.org/2486813002/diff/140001/chrome/browser/chromeos/policy/browser_policy_connector_chromeos.cc File chrome/browser/chromeos/policy/browser_policy_connector_chromeos.cc (right): https://codereview.chromium.org/2486813002/diff/140001/chrome/browser/chromeos/policy/browser_policy_connector_chromeos.cc#newcode117 chrome/browser/chromeos/policy/browser_policy_connector_chromeos.cc:117: AddPolicyProvider(std::unique_ptr<ConfigurationPolicyProvider>( nit: Use base::WrapUnique? https://codereview.chromium.org/2486813002/diff/140001/chrome/browser/chromeos/policy/browser_policy_connector_chromeos.h File chrome/browser/chromeos/policy/browser_policy_connector_chromeos.h (right): https://codereview.chromium.org/2486813002/diff/140001/chrome/browser/chromeos/policy/browser_policy_connector_chromeos.h#newcode100 ...
4 years, 1 month ago (2016-11-11 15:25:09 UTC) #36
Thiemo Nagel
Thank you Maksim, I've tried to address all of your comments. Could you please take ...
4 years, 1 month ago (2016-11-16 19:11:01 UTC) #63
Thiemo Nagel
Hi alemate, could you please take a look at chrome/browser/chromeos/login/*? Thank you, Thiemo
4 years, 1 month ago (2016-11-16 20:40:45 UTC) #65
Thiemo Nagel
Hi Dan, could you please take a look at chrome/browser/ui/webui/*? Kind regards, Thiemo
4 years, 1 month ago (2016-11-16 20:43:27 UTC) #67
emaxx
LGTM https://codereview.chromium.org/2486813002/diff/300001/chrome/browser/chromeos/settings/device_settings_service.cc File chrome/browser/chromeos/settings/device_settings_service.cc (right): https://codereview.chromium.org/2486813002/diff/300001/chrome/browser/chromeos/settings/device_settings_service.cc#newcode260 chrome/browser/chromeos/settings/device_settings_service.cc:260: DCHECK((device_mode_ == policy::DEVICE_MODE_ENTERPRISE_AD) != nit: Use DCHECK_NE or ...
4 years, 1 month ago (2016-11-17 01:14:32 UTC) #70
Alexander Alekseev
chrome/browser/chromeos/login/* lgtm
4 years, 1 month ago (2016-11-17 11:21:37 UTC) #71
Alexander Alekseev
https://codereview.chromium.org/2486813002/diff/300001/chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc File chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc (right): https://codereview.chromium.org/2486813002/diff/300001/chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc#newcode226 chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc:226: if (!device_local_account_policy_service) { Just a question: Are you are ...
4 years, 1 month ago (2016-11-17 11:24:19 UTC) #72
Thiemo Nagel
https://codereview.chromium.org/2486813002/diff/300001/chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc File chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc (right): https://codereview.chromium.org/2486813002/diff/300001/chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc#newcode226 chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc:226: if (!device_local_account_policy_service) { On 2016/11/17 11:24:19, Alexander Alekseev wrote: ...
4 years, 1 month ago (2016-11-17 14:19:07 UTC) #79
Bernhard Bauer
https://codereview.chromium.org/2486813002/diff/360001/chrome/browser/ui/webui/options/chromeos/shared_options_browsertest.cc File chrome/browser/ui/webui/options/chromeos/shared_options_browsertest.cc (right): https://codereview.chromium.org/2486813002/diff/360001/chrome/browser/ui/webui/options/chromeos/shared_options_browsertest.cc#newcode139 chrome/browser/ui/webui/options/chromeos/shared_options_browsertest.cc:139: EXPECT_NE(nullptr, user); Is something else going to depend on ...
4 years, 1 month ago (2016-11-17 18:35:33 UTC) #83
Thiemo Nagel
Thanks a lot, Bernhard, I've addressed your comments. Could you maybe take another look? https://codereview.chromium.org/2486813002/diff/360001/chrome/browser/ui/webui/options/chromeos/shared_options_browsertest.cc ...
4 years, 1 month ago (2016-11-17 18:51:26 UTC) #85
Bernhard Bauer
LGTM!
4 years, 1 month ago (2016-11-17 18:52:51 UTC) #87
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2486813002/380001
4 years, 1 month ago (2016-11-17 19:03:48 UTC) #92
Dan Beam
https://codereview.chromium.org/2486813002/diff/380001/chrome/browser/ui/webui/options/chromeos/accounts_options_browsertest.cc File chrome/browser/ui/webui/options/chromeos/accounts_options_browsertest.cc (right): https://codereview.chromium.org/2486813002/diff/380001/chrome/browser/ui/webui/options/chromeos/accounts_options_browsertest.cc#newcode66 chrome/browser/ui/webui/options/chromeos/accounts_options_browsertest.cc:66: content::NotificationService::current()->Notify( the notification service is deprecated (as is code ...
4 years, 1 month ago (2016-11-17 19:09:10 UTC) #93
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_x64_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_rel_ng/builds/319408)
4 years, 1 month ago (2016-11-17 20:31:03 UTC) #95
Thiemo Nagel
PicasaDataProviderNoDatabaseGetListTest.NoDatabaseGetList looks like a flake to me. https://codereview.chromium.org/2486813002/diff/380001/chrome/browser/ui/webui/options/chromeos/accounts_options_browsertest.cc File chrome/browser/ui/webui/options/chromeos/accounts_options_browsertest.cc (right): https://codereview.chromium.org/2486813002/diff/380001/chrome/browser/ui/webui/options/chromeos/accounts_options_browsertest.cc#newcode66 chrome/browser/ui/webui/options/chromeos/accounts_options_browsertest.cc:66: content::NotificationService::current()->Notify( On ...
4 years, 1 month ago (2016-11-18 09:46:51 UTC) #96
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2486813002/380001
4 years, 1 month ago (2016-11-18 09:47:24 UTC) #98
commit-bot: I haz the power
Committed patchset #13 (id:380001)
4 years, 1 month ago (2016-11-18 10:46:09 UTC) #100
commit-bot: I haz the power
Patchset 13 (id:??) landed as https://crrev.com/8d2791ecec5187ab2188b123ce50710d14f9b9e4 Cr-Commit-Position: refs/heads/master@{#433171}
4 years, 1 month ago (2016-11-18 10:49:23 UTC) #102
Dan Beam
https://codereview.chromium.org/2486813002/diff/380001/chrome/browser/ui/webui/policy_ui_handler.cc File chrome/browser/ui/webui/policy_ui_handler.cc (right): https://codereview.chromium.org/2486813002/diff/380001/chrome/browser/ui/webui/policy_ui_handler.cc#newcode87 chrome/browser/ui/webui/policy_ui_handler.cc:87: {"sourceActiveDirectory", IDS_POLICY_SOURCE_ACTIVE_DIRECTORY}, alphabetize https://codereview.chromium.org/2486813002/diff/380001/chrome/browser/ui/webui/policy_ui_handler.cc#newcode322 chrome/browser/ui/webui/policy_ui_handler.cc:322: const policy::CloudPolicyStore* store_; DISALLOW
4 years, 1 month ago (2016-11-18 16:45:06 UTC) #103
Thiemo Nagel
4 years, 1 month ago (2016-11-21 13:31:22 UTC) #104
Message was sent while issue was closed.
Thank you Dan!  I've created a follow-up CL here:
https://codereview.chromium.org/2519023002

Achuith, in case there's anything you'd like me to change in
chrome/browser/ui/webui/options/chromeos, please comment on the new CL above.

https://codereview.chromium.org/2486813002/diff/380001/chrome/browser/ui/webu...
File chrome/browser/ui/webui/policy_ui_handler.cc (right):

https://codereview.chromium.org/2486813002/diff/380001/chrome/browser/ui/webu...
chrome/browser/ui/webui/policy_ui_handler.cc:87: {"sourceActiveDirectory",
IDS_POLICY_SOURCE_ACTIVE_DIRECTORY},
On 2016/11/18 16:45:05, Dan Beam wrote:
> alphabetize

Done.

https://codereview.chromium.org/2486813002/diff/380001/chrome/browser/ui/webu...
chrome/browser/ui/webui/policy_ui_handler.cc:322: const
policy::CloudPolicyStore* store_;
On 2016/11/18 16:45:05, Dan Beam wrote:
> DISALLOW

Done.

Powered by Google App Engine
This is Rietveld 408576698