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

Unified Diff: chrome/browser/managed_mode/managed_mode.cc

Issue 11783008: Add a lock to the managed user settings page and require authentication for unlocking. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add a check if the passphrase is set before closing the settings. Created 7 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/managed_mode/managed_mode.cc
diff --git a/chrome/browser/managed_mode/managed_mode.cc b/chrome/browser/managed_mode/managed_mode.cc
index df06143d263ce97945dbab6da4b6d54c3586283b..7585bcd5bb3ce3a2d1ba7b452e418fe60d2f3a7d 100644
--- a/chrome/browser/managed_mode/managed_mode.cc
+++ b/chrome/browser/managed_mode/managed_mode.cc
@@ -117,6 +117,12 @@ void ManagedMode::RegisterUserPrefs(PrefServiceSyncable* prefs) {
PrefServiceSyncable::UNSYNCABLE_PREF);
prefs->RegisterListPref(prefs::kManagedModeBlacklist,
PrefServiceSyncable::UNSYNCABLE_PREF);
+ prefs->RegisterStringPref(prefs::kManagedModeLocalPassphrase,
+ "",
+ PrefServiceSyncable::UNSYNCABLE_PREF);
+ prefs->RegisterStringPref(prefs::kManagedModeLocalSalt,
+ "",
+ PrefServiceSyncable::UNSYNCABLE_PREF);
}
// static
@@ -144,6 +150,21 @@ bool ManagedMode::IsInManagedMode() {
return GetInstance()->IsInManagedModeImpl();
}
+// static
+bool ManagedMode::IsCustodianAuthenticated() {
+ if (GetInstance()->managed_profile_) {
+ PrefService* pref_service = GetInstance()->managed_profile_->GetPrefs();
+ if (pref_service->GetString(prefs::kManagedModeLocalPassphrase).empty())
+ return true;
+ }
+ return GetInstance()->is_custodian_authenticated_;
+}
+
+// static
+void ManagedMode::SetCustodianAuthenticated(bool isAuthenticated) {
+ GetInstance()->is_custodian_authenticated_ = isAuthenticated;
+}
+
bool ManagedMode::IsInManagedModeImpl() const {
// |g_browser_process| can be NULL during startup.
if (!g_browser_process)
@@ -384,6 +405,7 @@ void ManagedMode::OnBrowserRemoved(Browser* browser) {
ManagedMode::ManagedMode()
: managed_profile_(NULL),
+ is_custodian_authenticated_(false),
io_url_filter_context_(
new URLFilterContext(
BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO))),

Powered by Google App Engine
This is Rietveld 408576698