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

Unified Diff: chrome/browser/resources/gaia_auth/main.js

Issue 781623003: Fix Chrome OS enrollment with SAML accounts (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years 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/resources/gaia_auth/main.js
diff --git a/chrome/browser/resources/gaia_auth/main.js b/chrome/browser/resources/gaia_auth/main.js
index c0a4785cc0dcaddb321c06c636b128ddfa4e6afd..74147f79b557a3ee3e82dcdc0df655f866befd93 100644
--- a/chrome/browser/resources/gaia_auth/main.js
+++ b/chrome/browser/resources/gaia_auth/main.js
@@ -57,6 +57,7 @@ Authenticator.prototype = {
// when support for key types other than plain text password is added.
passwordBytes_: null,
+ needPassword_: false,
chooseWhatToSync_: false,
skipForNow_: false,
sessionIndex_: null,
@@ -90,6 +91,7 @@ Authenticator.prototype = {
this.isConstrainedWindow_ = params.constrained == '1';
this.initialFrameUrl_ = params.frameUrl || this.constructInitialFrameUrl_();
this.initialFrameUrlWithoutParams_ = stripParams(this.initialFrameUrl_);
+ this.needPassword_ = params.needPassword == '1';
// For CrOS 'ServiceLogin' we assume that Gaia is loaded if we recieved
// 'clearOldAttempts' message. For other scenarios Gaia doesn't send this
@@ -382,8 +384,15 @@ Authenticator.prototype = {
this.sessionIndex_ = msg.sessionIndex;
if (this.passwordBytes_) {
+ // If the credentials passing API was used, login is complete.
window.parent.postMessage({method: 'samlApiUsed'}, this.parentPage_);
this.completeLogin_(msg);
+ } else if (!this.needPassword_) {
+ // If the credentials passing API was not used, the password was obtained
+ // by scraping. It must be verified before use. However, the host may not
+ // be interested in the password at all. In that case, verification is
+ // unnecessary and login is complete.
+ this.completeLogin_(msg);
} else {
this.supportChannel_.sendWithCallback(
{name: 'getScrapedPasswords'},

Powered by Google App Engine
This is Rietveld 408576698