...
This example demonstrates how the agent builds the metadata that gets attached to a classified file.
Metadata Entries
The agent is designed to write various types of metadata entries, each serving a specific purpose:
...
This design allows for a high degree of customization in how metadata is written, catering to diverse requirements and integration scenarios.
AIP Metadata Configuration
The agent is able to write metadata that aligns with AIP's standards, allowing seamless interaction with Microsoft's security framework.
Below is an example of a configuration that demonstrates how the agent can be configured to write AIP metadata.
Code Block | ||
---|---|---|
| ||
{ "idaip": "8e808d02-fdc4-4fc9-8938-853b0a4a5d3d", ... "aipConfiguration": { "siteId": "ed86fd3a-ab24-4113-a9f8-6cb38f63c190", "labels": [ { "id": "734f255c-faeb-4316-b0c0-3d88dfc5bbef", "name": "Public", "method": "Priviledged", "contentBits": 3 }, { "id": "d2ee4459-2afa-4136-9d18-4f2ebca102cf", "name": "General Business", "method": "Priviledged", "contentBits": 3 }, { "id": "65650f8c-b1ca-43b3-aad5-b4fa5ffcfb95", "name": "Confidential", "method": "Priviledged", "contentBits": 3 }, { "id": "574e5463-b443-4182-9781-3fc620ed259c", "name": "Restricted", "method": "Priviledged", "contentBits": 3 } ], "mappings": [ { "classification": "Public", "aipLabelId": "734f255c-faeb-4316-b0c0-3d88dfc5bbef" }, { "classification": "General Business", "aipLabelId": "d2ee4459-2afa-4136-9d18-4f2ebca102cf" }, { "classification": "Confidential", "aipLabelId": "65650f8c-b1ca-43b3-aad5-b4fa5ffcfb95" }, { "classification": "Restricted", "aipLabelId": "574e5463-b443-4182-9781-3fc620ed259c"} ]} }, ] ... }, |
This configuration includes specific AIP labels and their corresponding classifications, defining how the agent translates its internal categorizations into a format that AIP can recognize.
Configurable Tags
The agent also provides the functionality to write fully customized metadata entries.
...
Code Block |
---|
{ "id": "8e808d02-fdc4-4fc9-8938-853b0a4a5d3d", ... "defaultSettings": { .... "writeMetadataTags": [ { "tagName": "ClassificationTagSetId", "tagHandle": "e16409a7-1700-4153-9090-3955bc2f0ae8" }, { "tagName": "ClassificationValue", "tagHandle": "{classification}" }, { "tagName": "DistributionTagSetId", "tagHandle": "004dea33-8751-4399-a76e-95f371cb4119" }, { "tagName": "DistributionValue", "tagHandle": "{distribution}" }, { "tagName": "FileId", "tagHandle": "{fileid}" }, { "tagName": "UserId", "tagHandle": "{user}" }, { "tagName": "TagDateTime", "tagHandle": "{datetime}" }, { "tagName": "{name:e16409a7-1700-4153-9090-3955bc2f0ae8:0}", "tagHandle": "{value:e16409a7-1700-4153-9090-3955bc2f0ae8:0}" }, { "tagName": "classification_guid", "tagHandle": "{classification_guid}" }, { "tagName": "compliance_guid", "tagHandle": "{compliance_guid}" }, { "tagName": "distribution_guid", "tagHandle": "{distribution_guid}" } ] }, ... } |
The tagHandle
field within this configuration supports various placeholders that facilitate dynamic tagging:
{classification}
- current classification value of the document{distribution}
- current distribution value of the document{compliance}
- current compliance value of the document{datetime}
- current date and time{email}
- email of the current user (only works when outlook plugin is installed){user}
- id of the current user{machineid}
- id of the current machine{fileid}
- unique file id{classification_raw}
- This is the tag value without the tag alias{compliance_raw}
- This is the tag value without the tag alias{distribution_raw}
- This is the tag value without the tag alias{classification_guid}
- This is a uniquid id generated based on tagset id and tag name{classification_guid}
- This is a uniquid id generated based on tagset id and tag name{classification_guid}
- This is a uniquid id generated based on tagset id and tag name
Writing Metadata to files
As already mentioned in the beginning of this page, the agent uses a slightly different approach for each file to write/read the metadata. This flexibility is necessitated by the diverse range of file types and their various mechanisms for storing metadata. The following outlines the approaches used for different file categories:
...