diff options
author | vandebo@chromium.org <vandebo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-02-23 00:56:52 +0000 |
---|---|---|
committer | vandebo@chromium.org <vandebo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-02-23 00:56:52 +0000 |
commit | c67916d5bf56772d08aff56799f832bc93baa50e (patch) | |
tree | 14a7079212c779cb869c7007b83983442c364339 /chrome/browser/policy | |
parent | f233e423e687c8579d153926c5bacf309d472d83 (diff) | |
download | chromium_src-c67916d5bf56772d08aff56799f832bc93baa50e.zip chromium_src-c67916d5bf56772d08aff56799f832bc93baa50e.tar.gz chromium_src-c67916d5bf56772d08aff56799f832bc93baa50e.tar.bz2 |
Revert 184157
Speculative fix for DeviceLocalAccountTest.PolicyDownload failing on CrOS
> Extend the CloudPolicyValidator to support ExternalPolicyData.
>
> The CloudPolicyValidator verifies that policy downloaded from the cloud server
> is valid and checks its signature. This CL specializes the template to parse
> ExternalPolicyData protobufs, which are used for extensions policy.
>
> BUG=163318
>
>
> Review URL: https://chromiumcodereview.appspot.com/12334013
TBR=joaodasilva@chromium.org
Review URL: https://codereview.chromium.org/12321095
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@184240 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/policy')
-rw-r--r-- | chrome/browser/policy/cloud_policy_validator.cc | 21 | ||||
-rw-r--r-- | chrome/browser/policy/cloud_policy_validator.h | 17 | ||||
-rw-r--r-- | chrome/browser/policy/message_util.cc | 2 |
3 files changed, 3 insertions, 37 deletions
diff --git a/chrome/browser/policy/cloud_policy_validator.cc b/chrome/browser/policy/cloud_policy_validator.cc index 6cedc2e..d16f3cd 100644 --- a/chrome/browser/policy/cloud_policy_validator.cc +++ b/chrome/browser/policy/cloud_policy_validator.cc @@ -10,7 +10,6 @@ #include "base/stl_util.h" #include "chrome/browser/policy/cloud_policy_constants.h" #include "chrome/browser/policy/proto/chrome_device_policy.pb.h" -#include "chrome/browser/policy/proto/chrome_extension_policy.pb.h" #include "chrome/browser/policy/proto/cloud_policy.pb.h" #include "chrome/browser/policy/proto/device_management_backend.pb.h" #include "content/public/browser/browser_thread.h" @@ -77,12 +76,6 @@ void CloudPolicyValidatorBase::ValidatePolicyType( policy_type_ = policy_type; } -void CloudPolicyValidatorBase::ValidateSettingsEntityId( - const std::string& settings_entity_id) { - validation_flags_ |= VALIDATE_ENTITY_ID; - settings_entity_id_ = settings_entity_id; -} - void CloudPolicyValidatorBase::ValidatePayload() { validation_flags_ |= VALIDATE_PAYLOAD; } @@ -185,7 +178,6 @@ void CloudPolicyValidatorBase::RunChecks() { { VALIDATE_SIGNATURE, &CloudPolicyValidatorBase::CheckSignature }, { VALIDATE_INITIAL_KEY, &CloudPolicyValidatorBase::CheckInitialKey }, { VALIDATE_POLICY_TYPE, &CloudPolicyValidatorBase::CheckPolicyType }, - { VALIDATE_ENTITY_ID, &CloudPolicyValidatorBase::CheckEntityId }, { VALIDATE_TOKEN, &CloudPolicyValidatorBase::CheckToken }, { VALIDATE_USERNAME, &CloudPolicyValidatorBase::CheckUsername }, { VALIDATE_DOMAIN, &CloudPolicyValidatorBase::CheckDomain }, @@ -246,18 +238,6 @@ CloudPolicyValidatorBase::Status CloudPolicyValidatorBase::CheckPolicyType() { return VALIDATION_OK; } -CloudPolicyValidatorBase::Status CloudPolicyValidatorBase::CheckEntityId() { - if (!policy_data_->has_settings_entity_id() || - policy_data_->settings_entity_id() != settings_entity_id_) { - LOG(ERROR) << "Wrong settings_entity_id " - << policy_data_->settings_entity_id() << ", expected " - << settings_entity_id_; - return VALIDATION_WRONG_SETTINGS_ENTITY_ID; - } - - return VALIDATION_OK; -} - CloudPolicyValidatorBase::Status CloudPolicyValidatorBase::CheckTimestamp() { if (!policy_data_->has_timestamp()) { if (timestamp_option_ == TIMESTAMP_NOT_REQUIRED) { @@ -395,6 +375,5 @@ void CloudPolicyValidator<PayloadProto>::StartValidation( template class CloudPolicyValidator<em::ChromeDeviceSettingsProto>; template class CloudPolicyValidator<em::CloudPolicySettings>; -template class CloudPolicyValidator<em::ExternalPolicyData>; } // namespace policy diff --git a/chrome/browser/policy/cloud_policy_validator.h b/chrome/browser/policy/cloud_policy_validator.h index 6aeb4f1..3daf4d7 100644 --- a/chrome/browser/policy/cloud_policy_validator.h +++ b/chrome/browser/policy/cloud_policy_validator.h @@ -27,7 +27,6 @@ class MessageLite; namespace enterprise_management { class ChromeDeviceSettingsProto; class CloudPolicySettings; -class ExternalPolicyData; class PolicyData; class PolicyFetchResponse; } @@ -53,8 +52,6 @@ class CloudPolicyValidatorBase { VALIDATION_PAYLOAD_PARSE_ERROR, // Unexpected policy type. VALIDATION_WRONG_POLICY_TYPE, - // Unexpected settings entity id. - VALIDATION_WRONG_SETTINGS_ENTITY_ID, // Time stamp from the future. VALIDATION_BAD_TIMESTAMP, // Token doesn't match. @@ -121,9 +118,6 @@ class CloudPolicyValidatorBase { // Validates the policy type. void ValidatePolicyType(const std::string& policy_type); - // Validates the settings_entity_id value. - void ValidateSettingsEntityId(const std::string& settings_entity_id); - // Validates that the payload can be decoded successfully. void ValidatePayload(); @@ -176,10 +170,9 @@ class CloudPolicyValidatorBase { VALIDATE_DOMAIN = 1 << 2, VALIDATE_TOKEN = 1 << 3, VALIDATE_POLICY_TYPE = 1 << 4, - VALIDATE_ENTITY_ID = 1 << 5, - VALIDATE_PAYLOAD = 1 << 6, - VALIDATE_SIGNATURE = 1 << 7, - VALIDATE_INITIAL_KEY = 1 << 8, + VALIDATE_PAYLOAD = 1 << 5, + VALIDATE_SIGNATURE = 1 << 6, + VALIDATE_INITIAL_KEY = 1 << 7, }; // Reports completion to the |completion_callback_|. @@ -195,7 +188,6 @@ class CloudPolicyValidatorBase { Status CheckDomain(); Status CheckToken(); Status CheckPolicyType(); - Status CheckEntityId(); Status CheckPayload(); Status CheckSignature(); Status CheckInitialKey(); @@ -219,7 +211,6 @@ class CloudPolicyValidatorBase { std::string domain_; std::string token_; std::string policy_type_; - std::string settings_entity_id_; std::string key_; bool allow_key_rotation_; @@ -264,8 +255,6 @@ typedef CloudPolicyValidator<enterprise_management::ChromeDeviceSettingsProto> DeviceCloudPolicyValidator; typedef CloudPolicyValidator<enterprise_management::CloudPolicySettings> UserCloudPolicyValidator; -typedef CloudPolicyValidator<enterprise_management::ExternalPolicyData> - ComponentCloudPolicyValidator; } // namespace policy diff --git a/chrome/browser/policy/message_util.cc b/chrome/browser/policy/message_util.cc index 66e46ae..e4ca37a 100644 --- a/chrome/browser/policy/message_util.cc +++ b/chrome/browser/policy/message_util.cc @@ -59,8 +59,6 @@ int GetIDSForValidationStatus(CloudPolicyValidatorBase::Status status) { return IDS_POLICY_VALIDATION_PAYLOAD_PARSE_ERROR; case CloudPolicyValidatorBase::VALIDATION_WRONG_POLICY_TYPE: return IDS_POLICY_VALIDATION_WRONG_POLICY_TYPE; - case CloudPolicyValidatorBase::VALIDATION_WRONG_SETTINGS_ENTITY_ID: - return IDS_POLICY_VALIDATION_WRONG_SETTINGS_ENTITY_ID; case CloudPolicyValidatorBase::VALIDATION_BAD_TIMESTAMP: return IDS_POLICY_VALIDATION_BAD_TIMESTAMP; case CloudPolicyValidatorBase::VALIDATION_WRONG_TOKEN: |