Commit be5dec24 authored by Danan S's avatar Danan S Committed by Commit Bot

Make Gellerization use public api to force signin.

Previously we were using a private API to force the user to do
a full Google signin after gellerization.  Instead, we now use
UserManager::SaveForceOnlineSignin, which is the public API for
this purpose.

Also reverts changes to signin_metrics enum from http://crrev.com/c/1786857

Bug: 1000948
Change-Id: I287bc86b1d719f11d0da0c6bb6ef09fcfd355987
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1789827Reviewed-by: default avatarDavid Roger <droger@chromium.org>
Reviewed-by: default avatarMichael Giuffrida <michaelpg@chromium.org>
Reviewed-by: default avatarKush Sinha <sinhak@chromium.org>
Commit-Queue: Danan S <danan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#695286}
parent b31a699f
...@@ -19,11 +19,10 @@ ...@@ -19,11 +19,10 @@
#include "chrome/browser/ui/webui/chromeos/add_supervision/add_supervision_handler_utils.h" #include "chrome/browser/ui/webui/chromeos/add_supervision/add_supervision_handler_utils.h"
#include "chrome/browser/ui/webui/chromeos/add_supervision/add_supervision_metrics_recorder.h" #include "chrome/browser/ui/webui/chromeos/add_supervision/add_supervision_metrics_recorder.h"
#include "chrome/services/app_service/public/cpp/app_registry_cache.h" #include "chrome/services/app_service/public/cpp/app_registry_cache.h"
#include "components/signin/public/base/signin_metrics.h"
#include "components/signin/public/identity_manager/access_token_fetcher.h" #include "components/signin/public/identity_manager/access_token_fetcher.h"
#include "components/signin/public/identity_manager/access_token_info.h" #include "components/signin/public/identity_manager/access_token_info.h"
#include "components/signin/public/identity_manager/accounts_mutator.h"
#include "components/signin/public/identity_manager/identity_manager.h" #include "components/signin/public/identity_manager/identity_manager.h"
#include "components/user_manager/user_manager.h"
#include "content/public/browser/web_ui.h" #include "content/public/browser/web_ui.h"
#include "google_apis/gaia/gaia_constants.h" #include "google_apis/gaia/gaia_constants.h"
...@@ -94,12 +93,13 @@ void AddSupervisionHandler::LogOut() { ...@@ -94,12 +93,13 @@ void AddSupervisionHandler::LogOut() {
void AddSupervisionHandler::NotifySupervisionEnabled() { void AddSupervisionHandler::NotifySupervisionEnabled() {
SupervisedUserService* service = SupervisedUserService* service =
SupervisedUserServiceFactory::GetForProfile(Profile::FromWebUI(web_ui_)); SupervisedUserServiceFactory::GetForProfile(Profile::FromWebUI(web_ui_));
service->set_signout_required_after_supervision_enabled(); service->set_signout_required_after_supervision_enabled();
identity_manager_->GetAccountsMutator()
->InvalidateRefreshTokenForPrimaryAccount( // Force full sign-in the next time the user is at the login screen.
signin_metrics::SourceForRefreshTokenOperation:: // Gellerization can only be triggered by the primary user.
kAddSupervision_SupervisionEnabled); user_manager::UserManager* manager = user_manager::UserManager::Get();
manager->SaveForceOnlineSignin(manager->GetPrimaryUser()->GetAccountId(),
true /* force signin */);
// Record UMA metric that user has completed Add Supervision process. // Record UMA metric that user has completed Add Supervision process.
AddSupervisionMetricsRecorder::GetInstance()->RecordAddSupervisionEnrollment( AddSupervisionMetricsRecorder::GetInstance()->RecordAddSupervisionEnrollment(
......
...@@ -65,8 +65,6 @@ std::string SourceToString(SourceForRefreshTokenOperation source) { ...@@ -65,8 +65,6 @@ std::string SourceToString(SourceForRefreshTokenOperation source) {
case SourceForRefreshTokenOperation:: case SourceForRefreshTokenOperation::
kAccountReconcilor_RevokeTokensNotInCookies: kAccountReconcilor_RevokeTokensNotInCookies:
return "AccountReconcilor::RevokeTokensNotInCookies"; return "AccountReconcilor::RevokeTokensNotInCookies";
case SourceForRefreshTokenOperation::kAddSupervision_SupervisionEnabled:
return "AddSupervision::SupervisionEnabled";
} }
} }
} // namespace } // namespace
......
...@@ -314,9 +314,8 @@ enum class SourceForRefreshTokenOperation { ...@@ -314,9 +314,8 @@ enum class SourceForRefreshTokenOperation {
kMachineLogon_CredentialProvider, kMachineLogon_CredentialProvider,
kTokenService_ExtractCredentials, kTokenService_ExtractCredentials,
kAccountReconcilor_RevokeTokensNotInCookies, kAccountReconcilor_RevokeTokensNotInCookies,
kAddSupervision_SupervisionEnabled,
kMaxValue = kAddSupervision_SupervisionEnabled kMaxValue = kAccountReconcilor_RevokeTokensNotInCookies
}; };
// Different types of reporting. This is used as a histogram suffix. // Different types of reporting. This is used as a histogram suffix.
......
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