Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Чтобы вычислить действие на основе текущего состояния и требуемого состояния, передайте сведения в пакет SDK MIP путем реализации mip::ExecutionState класса. Как и другие классы пакета SDK, ExecutionState это абстрактный класс, и разработчик должен реализовать его.
Note
Полный пример реализации ExecutionState см. в следующем примере исходного кода:
члены mip::ExecutionState
ExecutionState предоставляет следующие виртуальные члены. Каждый член предоставляет контекст обработчику политик, чтобы он смог вернуть сведения о том, какие действия следует предпринять приложению. SDK также может использовать эти сведения для предоставления Microsoft Purview данных аудита.
| Член | Возвраты |
|---|---|
std::shared_ptr<mip::Label> GetNewLabel() |
Возвращает метку, применяемую пакетом SDK к объекту. |
mip::DataState GetDataState() |
Возвращает mip::DataState состояния данных объекта. |
std::pair<bool, std::string> IsDowngradeJustified() |
Возвращает std::pair, указывающую, оправдано ли понижение и с обоснованием. |
std::string GetContentIdentifier() |
Возвращает идентификатор содержимого. Используйте удобочитаемый пользователем идентификатор, указывающий расположение объекта. |
std::string GetApplicationScenarioId() |
Возвращает идентификатор, который сопоставляет события приложения с соответствующими запросами REST службы аудита или защиты. |
mip::AssignmentMethod GetNewLabelAssignmentMethod() |
Возвращает mip::AssignmentMethod для метки. |
std::vector<std::pair<std::string, std::string>> GetNewLabelExtendedProperties() |
Возвращает std::vector из std::pair строк, содержащих пользовательские метаданные, которые SDK применяет к документу. |
std::vector<mip::MetadataEntry> GetContentMetadata() |
Возвращает std::vector объектов mip::MetadataEntry, содержащих текущие метаданные содержимого. |
std::shared_ptr<mip::ProtectionDescriptor> GetProtectionDescriptor() |
Возвращает указатель на mip::ProtectionDescriptor. |
std::string GetContentFormat() |
Возвращает строку. |
mip::ActionType GetSupportedActions() |
Возвращает mip::ActionTypes для метки. |
std::shared_ptr<mip::ClassificationResults> GetClassificationResults() |
Возвращает список результатов классификации, если реализован. |
Переопределите каждый член в реализации класса, производного от mip::ExecutionState. В предыдущем примере приложения определяется структура с именем ExecutionStateOptions, которая передаётся в конструктор производного класса.
В примере определяется структуру с именем ExecutionStateOptions:
struct ExecutionStateOptions {
std::unordered_map<std::string, std::string> metadata;
std::string newLabelId;
std::string contentIdentifier;
mip::ActionSource actionSource = mip::ActionSource::MANUAL;
mip::DataState dataState = mip::DataState::USE;
mip::AssignmentMethod assignmentMethod = mip::AssignmentMethod::STANDARD;
bool isDowngradeJustified = false;
std::string downgradeJustification;
std::string templateId;
std::string contentFormat = mip::GetFileContentFormat();
mip::ActionType supportedActions;
bool generateAuditEvent;
};
Задайте все свойства в приложении, а затем передайте ExecutionStateOptions в конструктор класса, производного от mip::ExecutionState. Пакет SDK использует эти сведения для определения выполняемых действий. В отчетах аудита Microsoft Purview также отображаются данные, предоставленные в mip::ExecutionState.
Дальнейшие действия
- Узнайте, как определить действия вычислений для новой или существующей метки на основе текущего и требуемого состояния.
- Скачайте примеры пакета SDK политики из GitHub и попробуйте использовать пакет SDK политики.