Microsoft信息保护 SDK - MipContext 对象概念

MipContext

MipContext 是 SDK 中的最高级别对象。 它负责管理在应用程序或服务中可能创建的所有个人资料的状态。 此外,它会在 MipContext 对象销毁后处理 MIP SDK 资源的释放。

重要

每个进程只允许有一个 MipContext。 创建多个可能会导致意外行为。 MipContext 应在应用启动时创建,并且在应用程序的整个生命周期中保持使用相同的 MipContext。

创建对象 mip::MipContext 后, MipContext 该对象可用于创建 mip::FileProfilemip::PolicyProfilemip::ProtectionProfile 对象。

创建 MipConfiguration

mip::MipConfiguration 允许应用程序为 MIP SDK 设置各种应用程序范围的配置设置。 这些设置包括:

  • 应用程序信息:名称、应用程序 ID、版本
  • 日志和缓存的存储目录
  • 日志记录级别
  • 脱机模式
  • 功能外部测试设置
  • 委托,包括日志记录、存储、HTTP、JSON 分析和 XML 分析。
  • 诊断配置
std::shared_ptr<mip::MipConfiguration> mipConfiguration = std::make_shared<mip::MipConfiguration>(mAppInfo,
				"mip_data",
				mip::LogLevel::Trace,
				false);
MipConfiguration mipConfiguration = new MipConfiguration(appInfo, "mip_data", LogLevel.Trace, false);

一旦MipConfiguration被初始化,就可以用它来创建MipContext对象。

创建 MipContext

使用 MipContext::Create() 函数,采用提供的 MipConfiguration 对象来创建 MipContext

std::shared_ptr<mip::MipContext> mMipContext = mip::MipContext::Create(mipConfiguration);
MipContext = mipContext = MIP.CreateMipContext(mipConfiguration);

MipContext创建对象后,它可用于创建FileProfilePolicyProfileProtectionProfile对象,具体取决于应用程序正在使用的 SDK。

正在关闭

正确销毁所有 MIP SDK 对象需要关闭 MIPContext。 这可以通过调用 Shutdown 函数来实现。 当 MipContext 对象被销毁时,MipContext 析构函数也将调用 MipContext.Shutdown()

mip::MipContext::CreateWithCustomFeatureSettings()

注释

MIP SDK 1.10 及 on 中已弃用此 API。 请更新为使用 MipConfigurationmip::MipContext::Create()

创建一个新的 MipContext 实例,以便在初始化配置文件时使用,并启用自定义功能设置。

  • mip::ApplicationInfo
  • MIP 存储缓存的路径。
  • mip::LogLevel
  • (可选) mip::LoggerDelegate
  • (可选) mip::TelemetryConfiguration
  • mip::FlightingFeature

后续步骤