New issue
Advanced search Search tips

Issue 867028 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Aug 2
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Mac
Pri: 2
Type: Bug



Sign in to add a comment

MachineLevelUserCloudPolicy doesn't support extension policy

Project Member Reported by zmin@chromium.org, Jul 24

Issue description

What steps will reproduce the problem?
(1) Setup Cloud policy for extension for MachineLevelUserCloudPolicy on admin.google.com
(2) Open Chrome

What is the expected result?
Chrome get extension cloud policy.

What happens instead?
Chrome does not get extension cloud policy.



 
Description: Show this description
Project Member

Comment 2 by bugdroid1@chromium.org, Jul 30

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d166d72c4765af26d419917d844e00ab173ed605

commit d166d72c4765af26d419917d844e00ab173ed605
Author: Owen Min <zmin@chromium.org>
Date: Mon Jul 30 16:33:55 2018

Make ComponentCloudPolicyStore support a new policy type.

The MachineLevelCloudPolicy needs to support extension cloud policy
with a new policy type kChromeMachineLevelExtensionCloudPolicyType.
The ComponentCloudPolicyStore/Service has been created earlier for
the new type but the store class doesn't aware of the new type.

Add this type into the store class so that
MachineLevelExtensionCloudPolicy can be applied to the extensions.

1) Update DomainConstants so that the new policy type is mapped to
   POLICY_DOMAIN_EXTENSIONS.
2) Append policy type as the new parameter of ctor.
3) Using the policy type from ctor to verify the policy data.
4) The policy type must match its associated policy domain.
5) The new policy type's scope is machine.
6) Load() and Clear() function only works on the policy data that is
   owned by the instance of ComponentCloudPolicyStore.

Also refactor associated unit test and add test for the new type.


Bug:  867028 
Change-Id: I2117906153d0135b1372ae42bb884abce72fc9d6
Reviewed-on: https://chromium-review.googlesource.com/1148883
Reviewed-by: Lutz Justen <ljusten@chromium.org>
Commit-Queue: Owen Min <zmin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#579063}
[modify] https://crrev.com/d166d72c4765af26d419917d844e00ab173ed605/components/policy/core/common/cloud/component_cloud_policy_service.cc
[modify] https://crrev.com/d166d72c4765af26d419917d844e00ab173ed605/components/policy/core/common/cloud/component_cloud_policy_store.cc
[modify] https://crrev.com/d166d72c4765af26d419917d844e00ab173ed605/components/policy/core/common/cloud/component_cloud_policy_store.h
[modify] https://crrev.com/d166d72c4765af26d419917d844e00ab173ed605/components/policy/core/common/cloud/component_cloud_policy_store_unittest.cc
[modify] https://crrev.com/d166d72c4765af26d419917d844e00ab173ed605/components/policy/core/common/cloud/component_cloud_policy_updater_unittest.cc

Project Member

Comment 3 by bugdroid1@chromium.org, Aug 1

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a6ff60aa36e348a4b09e9accedff296a9618ae08

commit a6ff60aa36e348a4b09e9accedff296a9618ae08
Author: Owen Min <zmin@chromium.org>
Date: Wed Aug 01 15:36:54 2018

Refactor ComponentCloudPolicyStore.

Refactor the class as one instance only supports one policy type and domain pair.

PolicyDomain is now the member of class which indicates the type/domain instance
owned.

Also,
1) Remove domain to DomainConstants converting as there're two policy types use
   the same policy domain.
2) Store()/Delete() check whether the policy namespace matches the owned domain
   or not.
3) Purge() only filters on the owned domain.


Bug:  867028 
Change-Id: I7fc5650bb11e0ea6db362efc113eca049fdd2fb1
Reviewed-on: https://chromium-review.googlesource.com/1155653
Commit-Queue: Owen Min <zmin@chromium.org>
Reviewed-by: Lutz Justen <ljusten@chromium.org>
Cr-Commit-Position: refs/heads/master@{#579815}
[modify] https://crrev.com/a6ff60aa36e348a4b09e9accedff296a9618ae08/components/policy/core/common/cloud/component_cloud_policy_service.cc
[modify] https://crrev.com/a6ff60aa36e348a4b09e9accedff296a9618ae08/components/policy/core/common/cloud/component_cloud_policy_store.cc
[modify] https://crrev.com/a6ff60aa36e348a4b09e9accedff296a9618ae08/components/policy/core/common/cloud/component_cloud_policy_store.h
[modify] https://crrev.com/a6ff60aa36e348a4b09e9accedff296a9618ae08/components/policy/core/common/cloud/component_cloud_policy_store_unittest.cc

Status: Fixed (was: Assigned)

Sign in to add a comment