Commit 7ebc0921 authored by Aya ElAttar's avatar Aya ElAttar Committed by Commit Bot

Add EnterpriseClipboardDlpController

Added EnterpriseClipboardDlpController to apply data-leak
prevention on clipboard confidential data according to
the policy rules set by the admin.

Bug: 1096458
Change-Id: Idcdba108918e59ecebd50546f78ebf2a9d50c15f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2275907
Commit-Queue: Aya Elsayed <ayaelattar@google.com>
Reviewed-by: default avatarSergey Poromov <poromov@chromium.org>
Reviewed-by: default avatarNikita Podguzov <nikitapodguzov@chromium.org>
Cr-Commit-Position: refs/heads/master@{#788559}
parent 45f1117d
......@@ -1977,6 +1977,8 @@ source_set("chromeos") {
"policy/display_rotation_default_handler.h",
"policy/display_settings_handler.cc",
"policy/display_settings_handler.h",
"policy/dlp/enterprise_clipboard_dlp_controller.cc",
"policy/dlp/enterprise_clipboard_dlp_controller.h",
"policy/dm_token_storage.cc",
"policy/dm_token_storage.h",
"policy/enrollment_config.cc",
......
// Copyright 2020 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/chromeos/policy/dlp/enterprise_clipboard_dlp_controller.h"
#include "ui/base/clipboard/clipboard.h"
namespace chromeos {
bool EnterpriseClipboardDlpController::IsDataReadAllowed(
const ui::ClipboardDataEndpoint* const data_src,
const ui::ClipboardDataEndpoint* const data_dst) const {
// TODO(crbug.com/1102332): all the policy logic should be added later.
return true;
}
} // namespace chromeos
// Copyright 2020 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_BROWSER_CHROMEOS_POLICY_DLP_ENTERPRISE_CLIPBOARD_DLP_CONTROLLER_H_
#define CHROME_BROWSER_CHROMEOS_POLICY_DLP_ENTERPRISE_CLIPBOARD_DLP_CONTROLLER_H_
#include "ui/base/clipboard/clipboard_data_endpoint.h"
#include "ui/base/clipboard/clipboard_dlp_controller.h"
namespace chromeos {
// EnterpriseClipboardDlpController is responsible for preventing leaks of
// confidential clipboard data by controlling read operations according to the
// policy rules set by the admin.
class EnterpriseClipboardDlpController : public ui::ClipboardDlpController {
public:
EnterpriseClipboardDlpController() = default;
~EnterpriseClipboardDlpController() override = default;
EnterpriseClipboardDlpController(const EnterpriseClipboardDlpController&) =
delete;
void operator=(const EnterpriseClipboardDlpController&) = delete;
// nullptr can be passed instead of |data_src| or |data_dst|.
bool IsDataReadAllowed(
const ui::ClipboardDataEndpoint* const data_src,
const ui::ClipboardDataEndpoint* const data_dst) const override;
};
} // namespace chromeos
#endif // CHROME_BROWSER_CHROMEOS_POLICY_DLP_ENTERPRISE_CLIPBOARD_DLP_CONTROLLER_H_
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