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

Side by Side Diff: chrome/browser/ui/webui/extensions/extension_settings_handler.cc

Issue 925563002: Supervised users: Slightly relax restrictions around extensions. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@test_ext_install_disable
Patch Set: rebase Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/ui/webui/extensions/extension_settings_handler.h" 5 #include "chrome/browser/ui/webui/extensions/extension_settings_handler.h"
6 6
7 #include "apps/app_load_service.h" 7 #include "apps/app_load_service.h"
8 #include "apps/saved_files_service.h" 8 #include "apps/saved_files_service.h"
9 #include "base/auto_reset.h" 9 #include "base/auto_reset.h"
10 #include "base/base64.h" 10 #include "base/base64.h"
(...skipping 253 matching lines...) Expand 10 before | Expand all | Expand 10 after
264 264
265 bool recommended_install = 265 bool recommended_install =
266 !managed_install && 266 !managed_install &&
267 management_policy_->MustRemainInstalled(extension, NULL); 267 management_policy_->MustRemainInstalled(extension, NULL);
268 extension_data->SetBoolean("recommendedInstall", recommended_install); 268 extension_data->SetBoolean("recommendedInstall", recommended_install);
269 269
270 // Suspicious install should always be mutually exclusive to managed and/or 270 // Suspicious install should always be mutually exclusive to managed and/or
271 // recommended install. 271 // recommended install.
272 DCHECK(!(managed_install || recommended_install) || !suspicious_install); 272 DCHECK(!(managed_install || recommended_install) || !suspicious_install);
273 273
274 // |web_ui()| can be null in unit tests.
275 bool installed_by_custodian = web_ui() &&
276 util::IsExtensionSupervised(extension, Profile::FromWebUI(web_ui()));
277 extension_data->SetBoolean("installedByCustodian", installed_by_custodian);
278
274 GURL icon = 279 GURL icon =
275 ExtensionIconSource::GetIconURL(extension, 280 ExtensionIconSource::GetIconURL(extension,
276 extension_misc::EXTENSION_ICON_MEDIUM, 281 extension_misc::EXTENSION_ICON_MEDIUM,
277 ExtensionIconSet::MATCH_BIGGER, 282 ExtensionIconSet::MATCH_BIGGER,
278 !enabled, NULL); 283 !enabled, NULL);
279 if (Manifest::IsUnpackedLocation(extension->location())) { 284 if (Manifest::IsUnpackedLocation(extension->location())) {
280 extension_data->SetString("path", extension->path().value()); 285 extension_data->SetString("path", extension->path().value());
281 extension_data->SetString( 286 extension_data->SetString(
282 "prettifiedPath", 287 "prettifiedPath",
283 extensions::path_util::PrettifyPath(extension->path()).value()); 288 extensions::path_util::PrettifyPath(extension->path()).value());
(...skipping 822 matching lines...) Expand 10 before | Expand all | Expand 10 after
1106 const base::ListValue* args) { 1111 const base::ListValue* args) {
1107 CHECK_EQ(2U, args->GetSize()); 1112 CHECK_EQ(2U, args->GetSize());
1108 std::string extension_id, allow_str; 1113 std::string extension_id, allow_str;
1109 CHECK(args->GetString(0, &extension_id)); 1114 CHECK(args->GetString(0, &extension_id));
1110 CHECK(args->GetString(1, &allow_str)); 1115 CHECK(args->GetString(1, &allow_str));
1111 const Extension* extension = 1116 const Extension* extension =
1112 extension_service_->GetInstalledExtension(extension_id); 1117 extension_service_->GetInstalledExtension(extension_id);
1113 if (!extension) 1118 if (!extension)
1114 return; 1119 return;
1115 1120
1121 if (util::IsExtensionSupervised(extension, Profile::FromWebUI(web_ui())))
1122 return;
1123
1116 if (!management_policy_->UserMayModifySettings(extension, NULL)) { 1124 if (!management_policy_->UserMayModifySettings(extension, NULL)) {
1117 LOG(ERROR) << "An attempt was made to change allow file access of an" 1125 LOG(ERROR) << "An attempt was made to change allow file access of an"
1118 << " extension that is non-usermanagable. Extension id : " 1126 << " extension that is non-usermanagable. Extension id : "
1119 << extension->id(); 1127 << extension->id();
1120 return; 1128 return;
1121 } 1129 }
1122 1130
1123 util::SetAllowFileAccess( 1131 util::SetAllowFileAccess(
1124 extension_id, extension_service_->profile(), allow_str == "true"); 1132 extension_id, extension_service_->profile(), allow_str == "true");
1125 } 1133 }
(...skipping 341 matching lines...) Expand 10 before | Expand all | Expand 10 after
1467 } 1475 }
1468 1476
1469 void ExtensionSettingsHandler::OnReinstallComplete( 1477 void ExtensionSettingsHandler::OnReinstallComplete(
1470 bool success, 1478 bool success,
1471 const std::string& error, 1479 const std::string& error,
1472 webstore_install::Result result) { 1480 webstore_install::Result result) {
1473 MaybeUpdateAfterNotification(); 1481 MaybeUpdateAfterNotification();
1474 } 1482 }
1475 1483
1476 } // namespace extensions 1484 } // namespace extensions
OLDNEW
« no previous file with comments | « chrome/browser/ui/extensions/extension_enable_flow.cc ('k') | extensions/browser/management_policy.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698