Index: components/policy/core/common/cloud/cloud_policy_validator.cc |
diff --git a/components/policy/core/common/cloud/cloud_policy_validator.cc b/components/policy/core/common/cloud/cloud_policy_validator.cc |
index db015fd0ce75b3c52a6febb2e5b84b73e7a534a5..401a3e947056e30990f005218a787c1354868311 100644 |
--- a/components/policy/core/common/cloud/cloud_policy_validator.cc |
+++ b/components/policy/core/common/cloud/cloud_policy_validator.cc |
@@ -11,6 +11,7 @@ |
#include "base/single_thread_task_runner.h" |
#include "base/stl_util.h" |
#include "components/policy/core/common/cloud/cloud_policy_constants.h" |
+#include "components/user_manager/user_id.h" |
#include "crypto/signature_verifier.h" |
#include "google_apis/gaia/gaia_auth_util.h" |
#include "policy/proto/device_management_backend.pb.h" |
@@ -79,10 +80,10 @@ void CloudPolicyValidatorBase::ValidateTimestamp( |
} |
void CloudPolicyValidatorBase::ValidateUsername( |
- const std::string& expected_user, |
+ const user_manager::UserID& expected_user_id, |
bool canonicalize) { |
validation_flags_ |= VALIDATE_USERNAME; |
- user_ = expected_user; |
+ user_id_ = expected_user_id; |
canonicalize_user_ = canonicalize; |
} |
@@ -175,6 +176,7 @@ CloudPolicyValidatorBase::CloudPolicyValidatorBase( |
timestamp_not_after_(0), |
timestamp_option_(TIMESTAMP_REQUIRED), |
dm_token_option_(DM_TOKEN_REQUIRED), |
+ user_id_(std::string(), std::string()), |
canonicalize_user_(false), |
allow_key_rotation_(false), |
background_task_runner_(background_task_runner) {} |
@@ -476,14 +478,14 @@ CloudPolicyValidatorBase::Status CloudPolicyValidatorBase::CheckUsername() { |
return VALIDATION_BAD_USERNAME; |
} |
- std::string expected = user_; |
- std::string actual = policy_data_->username(); |
+ std::string expected_user_email = user_id_.GetUserEmail(); |
+ std::string actual_email = policy_data_->username(); |
if (canonicalize_user_) { |
- expected = gaia::CanonicalizeEmail(gaia::SanitizeEmail(expected)); |
- actual = gaia::CanonicalizeEmail(gaia::SanitizeEmail(actual)); |
+ expected_user_email = gaia::CanonicalizeEmail(gaia::SanitizeEmail(expected_user_email)); |
+ actual_email = gaia::CanonicalizeEmail(gaia::SanitizeEmail(actual_email)); |
} |
- if (expected != actual) { |
+ if (expected_user_email != actual_email) { |
LOG(ERROR) << "Invalid user name " << policy_data_->username(); |
return VALIDATION_BAD_USERNAME; |
} |