OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/chromeos/policy/user_network_configuration_updater_fact
ory.h" | 5 #include "chrome/browser/chromeos/policy/user_network_configuration_updater_fact
ory.h" |
6 | 6 |
7 #include "base/memory/singleton.h" | 7 #include "base/memory/singleton.h" |
8 #include "chrome/browser/chromeos/policy/user_network_configuration_updater.h" | 8 #include "chrome/browser/chromeos/policy/user_network_configuration_updater.h" |
9 #include "chrome/browser/chromeos/profiles/profile_helper.h" | 9 #include "chrome/browser/chromeos/profiles/profile_helper.h" |
10 #include "chrome/browser/policy/profile_policy_connector.h" | 10 #include "chrome/browser/policy/profile_policy_connector.h" |
11 #include "chrome/browser/policy/profile_policy_connector_factory.h" | 11 #include "chrome/browser/policy/profile_policy_connector_factory.h" |
12 #include "chrome/browser/profiles/incognito_helpers.h" | 12 #include "chrome/browser/profiles/incognito_helpers.h" |
13 #include "chrome/browser/profiles/profile.h" | 13 #include "chrome/browser/profiles/profile.h" |
14 #include "chromeos/network/network_handler.h" | 14 #include "chromeos/network/network_handler.h" |
15 #include "components/keyed_service/content/browser_context_dependency_manager.h" | 15 #include "components/keyed_service/content/browser_context_dependency_manager.h" |
16 #include "components/policy/core/common/cloud/cloud_policy_constants.h" | 16 #include "components/policy/core/common/cloud/cloud_policy_constants.h" |
17 #include "components/user_manager/user.h" | 17 #include "components/user_manager/user.h" |
18 #include "components/user_manager/user_manager.h" | 18 #include "components/user_manager/user_manager.h" |
19 #include "components/user_manager/user_type.h" | |
20 | 19 |
21 namespace policy { | 20 namespace policy { |
22 | 21 |
23 // static | 22 // static |
24 UserNetworkConfigurationUpdater* | 23 UserNetworkConfigurationUpdater* |
25 UserNetworkConfigurationUpdaterFactory::GetForProfile(Profile* profile) { | 24 UserNetworkConfigurationUpdaterFactory::GetForProfile(Profile* profile) { |
26 return static_cast<UserNetworkConfigurationUpdater*>( | 25 return static_cast<UserNetworkConfigurationUpdater*>( |
27 GetInstance()->GetServiceForBrowserContext(profile, true)); | 26 GetInstance()->GetServiceForBrowserContext(profile, true)); |
28 } | 27 } |
29 | 28 |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
66 return NULL; // On the login screen only device network policies apply. | 65 return NULL; // On the login screen only device network policies apply. |
67 | 66 |
68 user_manager::User* user = | 67 user_manager::User* user = |
69 chromeos::ProfileHelper::Get()->GetUserByProfile(profile); | 68 chromeos::ProfileHelper::Get()->GetUserByProfile(profile); |
70 DCHECK(user); | 69 DCHECK(user); |
71 // Currently, only the network policy of the primary user is supported. See | 70 // Currently, only the network policy of the primary user is supported. See |
72 // also http://crbug.com/310685 . | 71 // also http://crbug.com/310685 . |
73 if (user != user_manager::UserManager::Get()->GetPrimaryUser()) | 72 if (user != user_manager::UserManager::Get()->GetPrimaryUser()) |
74 return NULL; | 73 return NULL; |
75 | 74 |
76 const bool allow_trusted_certs_from_policy = | 75 const bool allow_trusted_certs_from_policy = user->HasGaiaAccount(); |
77 user->GetType() == user_manager::USER_TYPE_REGULAR; | |
78 | 76 |
79 ProfilePolicyConnector* profile_connector = | 77 ProfilePolicyConnector* profile_connector = |
80 ProfilePolicyConnectorFactory::GetForProfile(profile); | 78 ProfilePolicyConnectorFactory::GetForProfile(profile); |
81 | 79 |
82 return UserNetworkConfigurationUpdater::CreateForUserPolicy( | 80 return UserNetworkConfigurationUpdater::CreateForUserPolicy( |
83 profile, | 81 profile, |
84 allow_trusted_certs_from_policy, | 82 allow_trusted_certs_from_policy, |
85 *user, | 83 *user, |
86 profile_connector->policy_service(), | 84 profile_connector->policy_service(), |
87 chromeos::NetworkHandler::Get()->managed_network_configuration_handler()) | 85 chromeos::NetworkHandler::Get()->managed_network_configuration_handler()) |
88 .release(); | 86 .release(); |
89 } | 87 } |
90 | 88 |
91 } // namespace policy | 89 } // namespace policy |
OLD | NEW |