Microsoft 信息保护 SDK - MipContext 对象概念
MipContext
MipContext
是 SDK 中的最高级别对象。 它负责管理可能作为应用程序或服务的一部分创建的所有配置文件的状态。 此外,它会在 MipContext 对象被销毁后处理释放 MIP SDK 资源。
重要
每个进程只允许一个 MipContext
。 创建多个可能会导致意外行为。 MipContext
应在应用启动时创建,并且在应用的生存期中使用相同的 MipContext。
创建 mip::MipContext
的对象后,可以使用 MipContext
对象来创建 mip::FileProfile
、mip::PolicyProfile
或 mip::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
对象后,它可用于创建 FileProfile
、PolicyProfile
或 ProtectionProfile
对象,具体取决于应用程序使用的 SDK。
正在关闭
正确销毁所有 MIP SDK 对象需要关闭 MIPContext。 这可以通过调用 Shutdown 函数来实现。 当 MipContext
对象被销毁时,MipContext
析构函数也将调用 MipContext.Shutdown()
。
mip::MipContext::CreateWithCustomFeatureSettings()
注意
此 API 在 MIP SDK 1.10 及更高版本中已弃用。 请更新为使用 MipConfiguration
和 mip::MipContext::Create()
。
创建一个新的 MipContext 实例以在初始化配置文件时使用,并启用自定义功能设置。
mip::ApplicationInfo
- MIP 存储缓存的路径。
mip::LogLevel
- (可选)
mip::LoggerDelegate
- (可选)
mip::TelemetryConfiguration
mip::FlightingFeature