Commit 475b4f6d authored by Aga Wronska's avatar Aga Wronska Committed by Commit Bot

Guard fetching User Policy for Child user with arc::kAvailableForChildAccountFeature flag .

Bug: 832919, 831251
Change-Id: I113dbedec6ee9b79f109aff876a2ccc97e057b73
Reviewed-on: https://chromium-review.googlesource.com/1014283Reviewed-by: default avatarAlexander Alekseev <alemate@chromium.org>
Reviewed-by: default avatarYury Khmel <khmel@chromium.org>
Reviewed-by: default avatarRahul Chaturvedi <rkc@chromium.org>
Commit-Queue: Aga Wronska <agawronska@chromium.org>
Cr-Commit-Position: refs/heads/master@{#551149}
parent 8351660f
......@@ -8,6 +8,7 @@
#include "base/macros.h"
#include "base/run_loop.h"
#include "base/test/scoped_feature_list.h"
#include "base/values.h"
#include "chrome/browser/chrome_notification_types.h"
#include "chrome/browser/chromeos/login/ui/login_display_webui.h"
......@@ -18,6 +19,7 @@
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_list.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
#include "components/arc/arc_features.h"
#include "components/policy/core/browser/browser_policy_connector.h"
#include "components/policy/policy_constants.h"
#include "components/user_manager/known_user.h"
......@@ -276,7 +278,16 @@ class UserCloudPolicyManagerChildTest
// LoginPolicyTestBase:
std::string GetIdToken() const override { return kIdTokenChildAccount; }
// UserCloudPolicyManagerNonEnterpriseTest:
void SetUp() override {
scoped_feature_list_.InitAndEnableFeature(
arc::kAvailableForChildAccountFeature);
UserCloudPolicyManagerNonEnterpriseTest::SetUp();
}
private:
base::test::ScopedFeatureList scoped_feature_list_;
DISALLOW_COPY_AND_ASSIGN(UserCloudPolicyManagerChildTest);
};
......
......@@ -34,6 +34,7 @@
#include "chromeos/chromeos_paths.h"
#include "chromeos/chromeos_switches.h"
#include "chromeos/dbus/dbus_thread_manager.h"
#include "components/arc/arc_features.h"
#include "components/keyed_service/content/browser_context_dependency_manager.h"
#include "components/policy/core/browser/browser_policy_connector.h"
#include "components/policy/core/common/cloud/cloud_external_data_manager.h"
......@@ -187,7 +188,10 @@ UserPolicyManagerFactoryChromeOS::CreateManagerForProfile(
const AccountId& account_id = user->GetAccountId();
const bool is_stub_user =
user_manager::UserManager::Get()->IsStubAccountId(account_id);
if (user->GetType() != user_manager::USER_TYPE_CHILD &&
const bool is_child_user_with_enabled_policy =
user->GetType() == user_manager::USER_TYPE_CHILD &&
base::FeatureList::IsEnabled(arc::kAvailableForChildAccountFeature);
if (!is_child_user_with_enabled_policy &&
(user->GetType() == user_manager::USER_TYPE_SUPERVISED ||
BrowserPolicyConnector::IsNonEnterpriseUser(
account_id.GetUserEmail()))) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment