Microsoft Information Protection SDK - C++ 1.17
API Reference Documentation for C++
Loading...
Searching...
No Matches
flighting_feature.h File Reference

A file containing the FlightingFeature definition. More...

#include <map>
#include "mip/mip_namespace.h"

Go to the source code of this file.

Enumerations

enum  FlightingFeature : unsigned int {
  ServiceDiscovery = 0 , AuthInfoCache = 1 , LinuxEncryptedCache = 2 , SingleDomainName = 3 ,
  PolicyAuth = 4 , UrlRedirectCache = 5 , PreLicensing = 6 , DoubleKey = 7 ,
  VariablePolicyTtl = 8 , VariableTextMarking = 9 , OptimizePdfMemory = 10 , RemoveDeletedLabelMd = 11 ,
  EnforceMinimumTls12 = 12 , MatchCloudType = 13 , EnableAuditAndTelemetryForSovereignClouds = 14 , EnableActionIdForV0Metadata = 15 ,
  PowerBiCustomSettings = 16 , KeyStoreBasedOnStoragePath = 17 , EventDateTimeTokenUseUtc = 18 , CrossTenantUserCert = 19 ,
  EncryptedDatabaseIntegrityChecking = 20 , EnableFipsValidatedCryptography = 21 , RemoveParentMetadataWhenChildLabelRemoved = 22 , UseCbcForOfficeFileEncryption = 23 ,
  EncryptedAppDataTemplateOnline = 24 , UseMsipcCompatability = 25 , PreLicenseValidityCheck = 26 , DynamicWatermarkingEnabled = 27 ,
  MockDynamicWatermarkingResponseEnabled = 28 , UseRapidJson = 29 , EnforceMinimumTls13 = 30 , IgnoreEmptyMsipLabelNameParseError = 31 ,
  EnableEngineSettingsTelemetry = 32 , EnableMP4Files = 33 , PrioritizeHtmlInMsgs = 34 , EnableExtendedErrors = 35 ,
  LoadCrossTenantUserCertOffline = 36 , CachePrelicenseEUL = 37 , DynamicProtectionTypeForConsumption = 38 , CloudAutoDiscovery = 39 ,
  FixOutlookMultiMsgAttachmentParsing = 40 , ExponentialBackoffRetries = 41 , GetBinaryHtmlBodyInMsgs = 42 , SetMsgPropertiesAsEmbeddedMessageForRpmsg = 43 ,
  GetCorrectCodePageInMsgInspectorUnicode = 44 , EnableMsgToHandleEmlAttachments = 45 , LimitMaxDepthWhenProcessingNestedAttachments = 46 , CacheDnsResults = 47 ,
  FileSDKOfflinePublishing = 48 , ProtectionAPITelemetryPropertyAdd = 49 , ProtectionSDKDataBoundarySetInMipContext = 50 , UseSubstrateLabelPolicyEndpoints = 51 ,
  MultipleLabelResolution = 52 , TargetCrossCloudProtectionLicenseEndpoint = 53
}
 Defines new features by name. More...
 

Functions

const std::map< FlightingFeature, bool > & GetDefaultFeatureSettings ()
 Gets whether or not a feature is enabled by default.
 

Detailed Description

A file containing the FlightingFeature definition.

Enumeration Type Documentation

◆ FlightingFeature

enum FlightingFeature : unsigned int

Defines new features by name.

Enumerator
ServiceDiscovery 

Rely on separate HTTP call to determine RMS service endpoints

AuthInfoCache 

Cache OAuth2 challenges per domain/tenant to reduce unnecessary 401 responses. Disable for apps/services that manage their own HTTP auth (like SPO, Edge)

LinuxEncryptedCache 

Enable encrypted caching for Linux platforms (Please read the prerequisites for this feature)

SingleDomainName 

Enable single company name for dns lookup. e.g. https://corprights

PolicyAuth 

Enable automatic HTTP authentication for requests sent to Policy service. Disable for apps/services that manage their own HTTP auth (like SPO, Edge)

UrlRedirectCache 

Cache URL redirects to reduce number of HTTP operations

PreLicensing 

Enable pre license api check

DoubleKey 

Enable double key protection feature to use a customer key to encrypt with

VariablePolicyTtl 

Enable variable policy time to live, disabling reverts to infinite policy

VariableTextMarking 

Enable variable text marking

OptimizePdfMemory 

Enable Optimize PDF Memory Creator in protect and unprotect PDF files

RemoveDeletedLabelMd 

Enable removing delete label's meta data

EnforceMinimumTls12 

Enforce TLS 1.2 or above for non-ADRMS HTTPS connections

MatchCloudType 

Reserved

EnableAuditAndTelemetryForSovereignClouds 

Enable telemetry and audit events for sovereign clouds

EnableActionIdForV0Metadata 

Write ActionID metadata for content using version 0

PowerBiCustomSettings 

Whether or not to add power bi settings to custom settings

KeyStoreBasedOnStoragePath 

Whether or not to use storage path in keystore

EventDateTimeTokenUseUtc 

Whether to replace ${Event.DateTime} with a UTC timestamp

CrossTenantUserCert 

Whether or not to pass up query parameters to /clientlicensorcertificates to support cross tenant scenarios

EncryptedDatabaseIntegrityChecking 

Enable database integrity checking

EnableFipsValidatedCryptography 

Enable the use of the FIPS-validated Windows CNG APIs instead of OpenSSL on Windows platforms

RemoveParentMetadataWhenChildLabelRemoved 

When removing a child label, clear any parent metadata of the removed label that may be present.

UseCbcForOfficeFileEncryption 

Office file format uses CBC protection.

EncryptedAppDataTemplateOnline 

Enable online publishing for encrypted app data for templates.

UseMsipcCompatability 

Modify certain outputs to match MSIPC formatting

PreLicenseValidityCheck 

Check prelicense for validity time.

DynamicWatermarkingEnabled 

Enable support for dynamic watermarking.

MockDynamicWatermarkingResponseEnabled 

Enable support to return a fixed dynamic watermarking format string.

UseRapidJson 

Use RapidJson for json parsing.

EnforceMinimumTls13 

Enforce TLS 1.3 or above for non-ADRMS HTTPS connections. Do not enable this feature until all internal services support the TLS 1.3 security protocol, as enabling it prematurely may cause application malfunctions.

IgnoreEmptyMsipLabelNameParseError 

Ignore empty label name parse error, enabled by default.

EnableEngineSettingsTelemetry 

Enable support to Add telemetry status for engine settings.

EnableMP4Files 

Enable support for MP4 files.

PrioritizeHtmlInMsgs 

Prioritize HTML body over RTF body in msg files.

EnableExtendedErrors 

Whether or not parsing extendedErrorInfo is enabled. C++ Default to on, C default to false due to potential memory leaking in error handle of mip_cc_error struct.

LoadCrossTenantUserCertOffline 

Whether or not to load cross tenant user cert when doing offline republishing.

CachePrelicenseEUL 

If true, will generate and cache a EUL based on a provided prelicense. Will cache nothing if false.

DynamicProtectionTypeForConsumption 

Enable dynamic (SharePoint) protection type for consumption.

CloudAutoDiscovery 

Enable cloud auto discovery.

FixOutlookMultiMsgAttachmentParsing 

Fix Outlook msg parsing when a message has multiple msg attachments.

ExponentialBackoffRetries 

Enable exponential backoff retries for HTTP requests.

GetBinaryHtmlBodyInMsgs 

If true, when retrieving the HTML body when processing MSGs, MIP will attempt to retrieve the binary HTML body if the string HTML body does not exist.

SetMsgPropertiesAsEmbeddedMessageForRpmsg 

If true, the MSG property headers will be set to type EmbeddedMessage when the MSG type is RPMSG. Without this set to true, MsgInspector will not find the proper codepage.

GetCorrectCodePageInMsgInspectorUnicode 

If true, the MSG inspector will return the code page of the MSG if it's a unicode MSG. If false, unicode MSGs will always have the unicode code page returned.

EnableMsgToHandleEmlAttachments 

If true, while decrypting MSGs any EML attachments will be decrypted as well. If true, EML attachments will also be cheked when determining if an MSG contains protected objects.

LimitMaxDepthWhenProcessingNestedAttachments 

If true, if the max depth passed into MsgFileFormat is 0, removing protection will fail. If this is not set, an EML with attached MSGs may exceed the max depth if remove protection is called on it.

CacheDnsResults 

If true, will cache the DNS lookup result. The DNS cache is bypassed if false.

FileSDKOfflinePublishing 

Enable offline publishing for file SDK.

ProtectionAPITelemetryPropertyAdd 

Enable Protection SDK APIs to take in additional telemetry properties

ProtectionSDKDataBoundarySetInMipContext 

ProtectionSDK hornors the data boundary set in MipContext

UseSubstrateLabelPolicyEndpoints 

Reserved: This flag was introduced for a 1.15 feature that has not been brought forward yet.

MultipleLabelResolution 

Enable logic to handle multiple labels from same tenant on single document.

TargetCrossCloudProtectionLicenseEndpoint 

Enables use of the distribution point url from a license (if available) when doing service discovery.

Function Documentation

◆ GetDefaultFeatureSettings()

const std::map< FlightingFeature, bool > & GetDefaultFeatureSettings ( )
inline

Gets whether or not a feature is enabled by default.

Returns
Default state of flighting features