Index: components/policy/core/common/cloud/signing_service.h |
diff --git a/components/policy/core/common/cloud/signing_service.h b/components/policy/core/common/cloud/signing_service.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..8f026d9d0d134118d403075179360e651bdaed61 |
--- /dev/null |
+++ b/components/policy/core/common/cloud/signing_service.h |
@@ -0,0 +1,30 @@ |
+// Copyright (c) 2016 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 COMPONENTS_POLICY_CORE_COMMON_CLOUD_SIGNING_SERVICE_H_ |
+#define COMPONENTS_POLICY_CORE_COMMON_CLOUD_SIGNING_SERVICE_H_ |
+ |
+#include <string> |
+ |
+#include "base/callback_forward.h" |
+#include "components/policy/policy_export.h" |
+#include "components/policy/proto/device_management_backend.pb.h" |
+ |
+namespace policy { |
+ |
+// Data signing interface. |
+class POLICY_EXPORT SigningService { |
+ public: |
+ using SigningCallback = base::Callback<void(bool success, |
+ enterprise_management::SignedData signed_data)>; |
+ |
+ // Signs |data| and calls |callback| with the signed data. |
+ virtual void SignData(const std::string& data, |
+ const SigningCallback& callback) = 0; |
+}; |
+ |
+} // namespace policy |
+ |
+#endif // COMPONENTS_POLICY_CORE_COMMON_CLOUD_SIGNING_SERVICE_H_ |
+ |