Microsoft 信息保护 SDK - 策略处理程序概念

在策略 SDK 中,mip::PolicyHandler 公开用于计算策略操作和提交审核事件的操作。

策略处理程序的功能

mip::PolicyHandler 公开用于读取、写入和移除标签和保护信息的方法。 有关完整列表,请参阅 API 参考

本文将介绍以下方法:

  • ComputeActions
  • NotifyCommittedActions

要求

创建 PolicyHandler 需要满足以下要求:

  • 执行 mip::MipContext 操作
  • 执行 mip::PolicyProfile 操作
  • 添加到 mip::PolicyProfilemip::PolicyEngine
  • 可实现 mip::PolicyHandler::Observer 的类

创建策略处理程序

获取策略操作所需的第一步是创建 PolicyHandler 对象。 此类实现获取特定标签必须采取的操作列表所需的功能。 它还实现了触发审核事件的功能。

要创建 PolicyHandler,只需通过承诺/未来模式调用 PolicyEngineCreatePolicyHandlerAsync 函数,就像这样简单。

CreatePolicyHandlerAsync 接受单个参数:isAuditDiscoveryEnabled。 如果应用程序在审核日志中应显示心跳信号和发现事件,请将此值设置为true

注意

mip::PolicyHandler::Observer 类必须在派生类中实现,因为 CreatePolicyHandler 需要 Observer 对象。

auto createPolicyHandlerPromise = std::make_shared<std::promise<std::shared_ptr<mip::PolicyHandler>>>();
auto createPolicyHandlerFuture = createPolicyHandlerPromise->get_future();
PolicyEngine->CreatePolicyHandlerAsync(true);
auto handler = createPolicyHandlerFuture.get();

成功创建 PolicyHandler 对象后,可以计算操作并提交审核事件。

后续步骤

现在你已经了解了如何创建策略处理程序: