Microsoft Information Protection (MIP) Cronologia delle versioni di Software Development Kit (SDK) e criteri di supporto
Servizio
Ogni versione generale di disponibilità (GA) è supportata per un anno una volta rilasciata la versione ga successiva. La documentazione potrebbe non includere informazioni sulle versioni non supportate. Le correzioni e le nuove funzionalità vengono applicate solo alla versione ga più recente.
Le versioni di anteprima non devono essere distribuite nell'ambiente di produzione. Usare invece la versione di anteprima più recente per testare nuove funzionalità o correzioni disponibili nella versione ga successiva. È supportata solo la versione di anteprima più recente.
Cronologia delle versioni
Usare le informazioni seguenti per visualizzare le novità o le modifiche apportate per una versione supportata. La versione più recente è elencata per prima.
I pacchetti NuGet per le versioni principali rimangono attivi in NuGet. Solo la versione più recente di ogni versione principale viene mantenuta nell'Area download Microsoft. Le versioni precedenti alla versione 1.4 non sono disponibili.
Nota
Per il supporto tecnico, visitare il forum di Stack Overflow Microsoft Information Protection o aprire un caso di supporto con supporto tecnico Microsoft.
Versione | Collegamento | Stato | Fine del supporto |
---|---|---|---|
1.13 | https://aka.ms/mipsdkbins | Supportato | TBD |
1.12 | https://aka.ms/mipsdkbins112 | Supportato | 17 marzo 2024 |
1.11 | https://aka.ms/mipsdkbins111 | Supportato | 9 giugno 2023 |
1,10 | https://aka.ms/mipsdkbins110 | Supporto esterno | 17 novembre 2022 |
1,9 | https://aka.ms/mipsdkbins19 | Supporto esterno | 23 agosto 2022 |
1.8 | https://aka.ms/mipsdkbins18 | Supporto esterno | 29 aprile 2022 |
1,7 | https://aka.ms/mipsdkbins17 | Supporto esterno | 14 gennaio 2022 |
1.6 | https://aka.ms/mipsdkbins16 | Supporto esterno | 23 settembre 2021 |
1.5 | https://aka.ms/mipsdkbins15 | Supporto esterno | 16 aprile 2021 |
1.4 | https://aka.ms/mipsdkbins14 | Supporto esterno | 2 marzo 2021 |
Versione 1.13.161
Data di rilascio: 28 marzo 2023
Correzioni di bug
- Correzione di un problema di firma nel pacchetto NuGet .NET.
- È stato risolto un problema in
ProtectionProfile
cui mancava l'impostazione di pubblicazione offline.
Versione 1.13.158
Data di rilascio: 17 marzo 2023
File SDK
- Aggiunta di un flag di funzionalità che consente a MIP SDK di pubblicare file e messaggi di posta elettronica di Office in modalità di concatenamento a blocchi di crittografia.
- Impostare con la funzionalità
UseCBCForOfficeFileEncryption
di anteprima tramiteMipConfiguration.FeatureSettingsOverride()
.
- Impostare con la funzionalità
- È stato risolto i problemi relativi all'utilizzo della catena a blocchi di crittografia (CBC) protetti da file e messaggi di posta elettronica di Office. MIP SDK può ora usare il contenuto protetto in modalità CBC generato da Office.
Protection SDK
- Aggiunta del supporto di anteprima per la pubblicazione offline in Protection SDK.
- La protezione offline può essere abilitata impostando
ProtectionProfileSettings.OfflinePublishing
sutrue
sia in C++ che in .NET.
- La protezione offline può essere abilitata impostando
Modifiche di rilievo
PublishingSettings
per la ripubblicazione richiederà ora una licenza di pubblicazione serializzata o unProtectionHandler
nel costruttore anziché poter impostare entrambe le operazioni dopo la costruzione.- Rimosso
SetPublishingLicenseForRepublish
eSetProtectionHandlerForRepublish
. ProtectionDescriptorBuilder
ora useràSetLabelInfo
invece diSetLabelId
Insert
metodo inmip::StorageDelegate
edIStorageDelegate
è stato sostituito conInsertOrReplace
.
Aggiornamento critico
MIP SDK 1.13 introduce il supporto per l'utilizzo di file e messaggi di posta elettronica protetti con AES256-CBC generati da Word, Excel, PowerPoint, Outlook, Exchange Online, SharePoint Online e applicazioni abilitate per MIP SDK che hanno consenso esplicito per la pubblicazione CBC. Se l'applicazione usa File SDK per usare uno di questi formati, è importante aggiornare l'applicazione a MIP SDK 1.13. Nella seconda metà del 2023, app M365, Exchange Online e SharePoint Online inizierà a proteggere con AES256-CBC per impostazione predefinita. Le applicazioni che non sono state aggiornate non riusciranno a decrittografare correttamente i file e i messaggi di posta elettronica.
MIP SDK 1.13 continuerà a pubblicare documenti e messaggi di posta elettronica di Office usando AES128 in modalità codebook elettronico (BCE). MIP SDK 1.14, pianificato per la versione di giugno 2023, abiliterà la pubblicazione AES256-CBC per impostazione predefinita. Se si vuole testare la pubblicazione CBC in anticipo, abilitare il UseCBCForOfficeFileEncryption
flag di funzionalità tramite MipConfiguration.FeatureSettingsOverride()
.
Le applicazioni che non riescono a eseguire l'aggiornamento a MIP SDK 1.13 possono iniziare a riscontrare un'eccezione con i dettagli seguenti: Something bad happened: AESCryptoWriter: Failed to transform final block
.
Versione 1.12.101
Data di rilascio: 18 novembre 2022
File SDK
- È stato risolto un problema per cui includere caratteri speciali in un nome di etichetta potrebbe causare l'annullamento di un messaggio da Parte di Microsoft Outlook.
- Correzione di un bug quando la protezione è stata rimossa per le etichette inattive.
- Correzione di un bug per cui non è stato possibile aprire le autorizzazioni delle etichette con l'autenticazione condivisa abilitata per i documenti protetti.
- Libgsf aggiornato alla versione 1.14.50 e LibXML2 alla versione 2.9.14.
- XMP aggiornato usa una versione aggiornata di Expat – versione 2.4.7
SDK dei criteri
- Correzione di un bug con eccezione di metadati non valida per
ComputeActions
.
Protection SDK
- Aggiunta di funzioni di accesso per recuperare gli URL intranet e extranet da
TenantInformation
. - Esposto un'API C per acquisire licenze di delega.
- Correzione di un bug per i metadati delle etichette padre non coerenti quando le etichette figlio vengono rimosse.
- Correzione di un bug della cache di autenticazione per
CreateFromLicenseType
. - Risolvere un problema a causa del quale il motore viene pulito durante una
GetTemplatesAsync()
chiamata potrebbe causare un arresto anomalo. - Aggiunto
GetLicenseRightsData
per ottenere la licenza utente/objectId/puid e diritti dalla licenza di pubblicazione. - Correzione di un bug in cui il tag descrittore non è stato possibile aggiungere alla licenza se non sono presenti descrittori.
- Correzione di un arresto anomalo di .NET in Linux.
- Correzione di un problema di spazio per la scrivania; viene ora segnalato un errore quando MIP esce da spazio su disco durante la protezione del contenuto.
- Dipendenza OpenSSL aggiornata a 1.1.1-r.1.
Aggiornamenti piattaforma e dipendenza
- Correzione di un bug in cui i cloud non sono stati trattati in modo coerente.
- Aggiunta del supporto per la funzionalità di anteprima della pubblicazione offline.
- Correzione di un bug per cui i wrapper mancavano nel cloud di telemetria per scenari cloud sovrani.
- Rimosso i dati personali dai dati di telemetria di controllo delle compilazioni di debug.
Modifiche di rilievo
- Se entrambi
usersWithDefaultRights
eadditionalUsersAndRights
sono vuoti,CreateFromLicenseType
genererà unBadInputError
oggetto . - Aggiunta di nuovi metodi
GetLicenseRightsData
eGetLicenseRightsDataAsync
nella classeProtectionEngine
.
Versione 1.12.61
Data di rilascio: 9 giugno 2022
File SDK
- File SDK supporta ora il limite dei dati tramite
FileEngineSettings.DataBoundary
. - Correzione di un bug in
GetCodePage
.MsgInspector
- Correzione di bug in cui BodyType ha sempre restituito TXT in
MsgInspector
. - Correzione di un bug nel wrapper Java in cui l'uso di
UserRoles
java.util.Collections$UnmodifiableCollection non può essere eseguito il cast all'eccezione java.util.List . - Correzione di un bug durante la decrittografia dei file >di testo da 2 GB con
GetDecryptedTemporaryStreamAsync()
.
SDK dei criteri
- Policy SDK supporta ora il limite dei dati tramite
PolicyEngineSettings.DataBoundary
. - Correzione di un bug in cui in determinate condizioni le modifiche apportate ai criteri hanno causato un arresto anomalo.
- È stato risolto un problema per cui le etichette Encrypt Only con protezione DKE non venivano filtrate quando dovrebbero essere state.
Protection SDK
- Anteprima: aggiunta del supporto per la protezione offline.
- Abilitare la protezione offline impostando
ProtectionProfile.OfflinePublishing
su true durante la creazione di unProtectionProfile
oggetto . - I modelli di memorizzazione nella cache richiedono l'impostazione
ProtectionEngineSettings.SetTemplateRefreshArgs(std::chrono::hours)
(C++) oProtectionEngineSettings.TemplateRefreshArgs
(.NET) per abilitare la memorizzazione nella cache dei modelli di protezione.
- Abilitare la protezione offline impostando
- Protection SDK supporta ora i limiti dei dati tramite
ProtectionEngineSettings.DataBoundary
Modifiche di rilievo
FileHandler.SetLabel()
L'API non supporta più i file rpmsg come input.- Il passaggio di un file MSG di testo non crittografato all'oggetto
MsgInspector
comporterà un errore NotSupportedError MsgInpector
non tenterà più di decrittografare gli allegati che fanno parte del file message.rpmsg .MsgInpector
restituirà ora un file MSG completamente funzionale se il file message.rpmsg aveva allegati MSG. Questi file MSG possono essere decrittografati con l'APIFileHandler.RemoveProtection
.TelemetryDelegate
eAuditDelegate
Il metodo WriteEvent richiede ora un secondo parametro,EventContext
. LaEventContext
classe espone informazioni sul cloud di destinazione e sui limiti dei dati per l'evento.
Aggiornamenti piattaforma e dipendenza
- Aggiunta del supporto per tutti e tre gli SDK per l'impostazione del limite dei dati dell'Unione europea.
- Quando
DataBoundary
è impostato su UE, tutti gli eventi di telemetria e controllo verranno trasmessi direttamente all'area dell'UE. - L'impostazione su qualsiasi altra area comporta l'emissione
DataBoundary
di dati al punto di ingresso del servizio più vicino.
- Quando
- Aggiornamento libxml2 alla versione 2.9.13.
- Correzione di un arresto anomalo specifico per Android.
- È stato risolto un problema per cui SDK non rispettava completamente il livello di log
Versione 1.11.96
Data di rilascio: 20 luglio 2022
File SDK
- Correzione di un bug in
MemoryStream
perGetDecryptedTemporaryStream
tipi di file di grandi dimensioni - Correzione di un bug che causa la perdita di dati durante la crittografia PDF a causa dell'arresto anomalo del overflow dello stack
- Con
OptimizePdfMemory
, se /Info è unObjStm
oggetto indiretto interno, verrà ora restituitoPDFPARSER_ERROR_FORMAT
anziché il overflow dello stack
- Con
- Correzione di un bug per cui il supporto delle librerie MIP non è stato caricato in Java
- Correzione di un bug in cui i file MSG con allegati file MSG protetti riscontrano un danneggiamento quando
rpmsg
l'estensione ha un terminatore null finale finale - Correzione di un arresto anomalo nei file MSG con allegati di collegamento
- Correzione di un bug in cui la sequenza dell'applicazione etichetta non è stata rispettata correttamente usando l'app Client unificata AIP per Windows
- Correzione di un bug in cui
RemoveProtection
è stata specificata l'eccezionewLabelDisabledError
che indica l'etichetta inattiva - Correzione di un bug in cui
DeleteLabel
è stata generata un'eccezione di metadati non valida mentre il file di input è protetto da templateID
SDK dei criteri
- È stato risolto un problema per cui la modifica dei criteri causava un arresto anomalo a causa della mancata corrispondenza tra la mappa nativa e gestita durante
OnPolicyChanged
la chiamata
Modifiche alla piattaforma e alle dipendenze
- Correzione di un problema per cui i dati di telemetria e controllo potrebbero non essere inviati quando si usa L'interfaccia C# o Java
- Correzione di un bug in cui i cloud con lo stesso URL di base non sono stati trattati in modo coerente
- Versione aggiornata di Adobe XMP alla funzione 6.0.0 e correzione di sicurezza push per la vulnerabilità dell'espagrante nella funzione 2.1.0
storeAtts()
- Flag esposto
EnableAuditAndTelemetryForSovereignClouds
per .NET - Correzione di un arresto anomalo causato dall'integrità del flusso di controllo che esegue controlli di sicurezza della tabella virtuale
- Disabilitati questi controlli perché Android non supporta controlli di tabella tra librerie
- Correzione di un bug nel delegato di crittografia di Windows per l'uso dopo la vulnerabilità gratuita. Si applica solo alle applicazioni impostate
EnableFipsValidatedCryptography
in WindowshashObject
vettore è stato pulito prima dell'handle e ha causato un uso dopo aver liberato quando l'handle è stato pulito nel distruttore diBcryptData
Versione 1.11.64
Data di rilascio: 12 gennaio 2022
File SDK
- Correzione di un bug nei file MSG con wrapping pfile usando il formato del contenuto non corretto.
- Correzione di un bug in cui la
Inspector
classe ha causato un arresto anomalo neirpmsg
file. - Correzione di un bug in cui SDK non comprimeva correttamente i file su 4 GB, causando un possibile danneggiamento.
Protection SDK
- È stato risolto un problema relativo all'individuazione dei record DNS per AD RMS in iOS.
Aggiornamenti piattaforma e dipendenza
- Aggiornamento di log4j nelle app di esempio Java.
- Rinominare arm64 ABI in Android in arm64-v8a
Versione 1.11.53
Data di rilascio: 17 novembre 2021
File SDK
- Correzione di bug in cui IsModified() in mip::FileHandler restituisce false anziché true per un testo non crittografato. File MSG con allegato protetto.
- Correzione di bug Per risolvere i problemi di formattazione XML nei metadati che hanno interrotto le etichette senza protezione in determinati casi.
SDK dei criteri
- Sono stati introdotti miglioramenti per impedire il deadlock nella sincronizzazione dei criteri.
Modifiche di rilievo
In precedenza, quando un'etichetta è stata configurata per "Do Not Forward" o "Encrypt Only" e un'azione di protezione dei file, MIP SDK non visualizzerebbe l'etichetta nell'elenco di etichette per il tipo di contenuto del file.
- L'SDK è stato aggiornato per risolvere questo problema. L'etichetta non verrà filtrata in entrambi i casi quando configurata per applicare entrambi i tipi di contenuto.
- Questa modifica non influisce sulle etichette in cui l'azione di protezione è "Encrypt Only" o "Do Not Forward".
- Infine, non influisce sulle etichette destinate ai file in cui l'azione è stata predefinita o la protezione definita dall'utente.
Aggiornamento delle eccezioni esistenti per una migliore gestione di scenari specifici. L'oggetto seguente è stato eseguito in precedenza come
NetworkError::Category::FailureResponseCode
NetworkError::Category::ServiceUnavailable
- Nuova categoria di eccezioni (
NetworkError
eccezione). - Restituito quando il servizio dipendente non è disponibile.
- Il servizio restituisce 503
- Nuova categoria di eccezioni (
NetworkError::Category::Throttled
- Eccezione:
NetworkError
- Restituito quando sono state effettuate troppe richieste al servizio dipendente.
- Il servizio restituisce 429
- Eccezione:
Aggiornamenti piattaforma e dipendenza
- Dipendenze dell'SDK aggiornate alle versioni più recenti
- Tutti i file binari MIP SDK sono stati aggiornati per l'uso della versione 2.9.12 della libreria statica libxml2 e della libreria dinamica libgsf per Android e Windows.
- Supporto proxy per Linux introdotto. Esempio di come impostare il proxy seguente.
export HTTP_PROXY="http://10.10.10.10:8080"
Versione 1.10.115
Data di rilascio 25 febbraio 2022
- Correzione di un bug nei file MSG con wrapping pfile usando il formato del contenuto non corretto.
- Correzione di un bug in cui la
Inspector
classe ha causato un arresto anomalo neirpmsg
file. - Correzione di un bug in cui SDK non comprimeva correttamente i file su 4 GB, causando un possibile danneggiamento.
- Correzione di un bug nel rilevamento dei file MSG protetti. I file potrebbero essere stati protetti ma SDK li ha trattati come testo non crittografato.
Versione 1.10.98
Data di rilascio 29 settembre 2021
Correzioni di bug
- Correzione di un bug in iOS in cui il codice bit non è stato abilitato
Versione 1.10.97
Data di rilascio: 17 settembre 2021
Correzioni di bug
- Correzione di un bug in cui gli allegati nei file MSG sono stati danneggiati durante l'applicazione di un'etichetta di protezione al file MSG.
Versione 1.10.93
Data di rilascio: 23 agosto 2021
Modifiche generali
- Classe aggiunta
MipConfiguration
.- Questa classe controlla le impostazioni di configurazione impostate in precedenza direttamente su MipContext.
- Delegati, posizione di registrazione e così via. vengono impostati come parte di questo oggetto.
- Per informazioni dettagliate, vedere Concetti di MipContext .
MipContext::Create()
il costruttore è stato modificato in modo da accettare solo il nuovoMipConfiguration
oggetto.- Per informazioni dettagliate, vedere Concetti di MipContext .
- Tutte le impostazioni del motore verranno predefinite per le impostazioni locali en-US nel caso in cui la
.Locale
proprietà sia impostata sunull
. - È stato risolto un problema per cui l'SDK non rispettava completamente le impostazioni del livello di registrazione.
File SDK
- Aggiunta del supporto per la lettura e la scrittura di etichette nei file MSG.
- Il modello per l'etichettatura di questi file è uguale a qualsiasi altro tipo di file.
- L'impostazione personalizzata enable_msg_file_type deve essere impostata per abilitare la gestione dei file MSG.
- Gli allegati saranno protetti ma non etichettati.
- Per informazioni dettagliate sull'impostazione personalizzata, vedere Impostare enable_msg_file_type e usare File SDK per proteggere il file con estensione msg .
FileHandler::IsLabeledOrProtected()
supporta ora i file MSG.- File SDK supporta ora la decrittografia degli allegati protetti nei file MSG non protetti.
- Ciò si applica solo ai file e non ai contenitori, ad esempio MSG o FILE ZIP.
- Aggiunta di un nuovo metodo statico
mip::FileHandler::GetFileStatus()
- Questa funzione restituisce un nuovo
mip::FileStatus
oggetto che indica se il file è etichettato, protetto o contiene oggetti protetti. FileStatus
espone tre proprietà:IsProtected
,IsLabeled
eContainsProtectedObjects
.ContainsProtectedObjects
è utile per i file MSG con allegati protetti.
- Questa funzione restituisce un nuovo
- Quando si chiama
FileHandler::RemoveProtection()
un file MSG di testo non crittografato con allegati protetti, la protezione verrà rimossa dagli allegati. - Correzione di un bug in cui
IProtectionHandler
è stato eliminato quando si chiamaIFileHandler.SetProtection()
in un ciclo.IProtectionHandler
l'istanza non verrà più distrutta dopo l'uso.
SDK dei criteri
- La variabile
${Event.DateTime}
di contrassegno del contenuto è ora predefinita rispetto all'ora UTC.- Questa opzione può essere impostata nuovamente sul valore predefinito precedente usando la funzionalità
EventDateTimeTokenUseUtc
di anteprima .
- Questa opzione può essere impostata nuovamente sul valore predefinito precedente usando la funzionalità
- Correzione di bug in cui
IsActive
non è stato restituito gli stessi valori all'interno di unPolicyHandler
oggetto durante il recupero delle etichette da unPolicyEngine
oggetto .
Protection SDK
- Sono stati aggiunti nuovi tipi di errore più specifici che verranno visualizzati sia in Protection che in File SDK. Vedere la sezione Modifiche di rilievo.
Modifiche di rilievo
- Sono state introdotte nuove impostazioni personalizzate per gestire le impostazioni di controllo predefinite.
- Aggiunta di una nuova proprietà nel delegato di controllo per impostare le impostazioni di controllo.
LabelGroupData
la classe non haIsAuditEnabled()
più metodo.- È possibile usare invece
GetEnableAuditSetting()
per ottenereEnableAudit
le impostazioni nei criteri una volta caricati i criteri. Le impostazioni di controllo predefinite sarannoUndefined
opposte atrue
nelle versioni precedenti.
- Consentire il passaggio del fuso orario del documento a ComputeActions per consentire il calcolo delle azioni come se il documento esistesse in un fuso orario diverso dal computer che applica l'etichetta.
- Utile per quando le etichette vengono applicate per conto di un utente tramite un servizio, dove l'ora locale del server non è necessariamente uguale a quella dell'utente.
- Invece di restituire il formato UTC, l'ora predefinita è l'ora
${Event.DateTime}
locale senza visualizzare il fuso orario.
- Aggiornamento delle eccezioni esistenti per una migliore gestione di scenari specifici.
NoPermissionsError::Category::NotPremiumLicenseUser
- In precedenza è stato eseguito come
NoPermissionsError::Category::AccessDenied
- Causato da un utente senza licenza che tenta di revocare il contenuto protetto.
- In precedenza è stato eseguito come
NoPermissionsError::Category::NotOwner
- In precedenza è stato eseguito come
NoPermissionsError::Category::AccessDenied
- Causato da un utente che tenta di revocare un documento che non è proprietario.
- In precedenza è stato eseguito come
ServiceDisabledError::Extent::Tenant
- In precedenza è stato eseguito come
ServiceDisabledError::Extent::User
- Restituito quando il servizio Azure Rights Management di destinazione è invece disabilitato.
- In precedenza è stato eseguito come
NoPermissionsError::Category::AccessDenied
- In precedenza è stato eseguito come
NetworkError::Category::FailureResponseCode
- Restituito quando l'utente non ha diritti di pubblicazione a causa di licenze o controlli di onboarding.
- In precedenza è stato eseguito come
BadInputError::ErrorCode::DoubleKey
- In precedenza è stato eseguito come
NetworkError::Category::FailureResponseCode
- Restituito quando i parametri DKE (Double Key Encryption) non sono corretti.
- In precedenza è stato eseguito come
CustomerKeyUnavailableError
- Nuova eccezione.
- Restituito quando il tenant è configurato per bring-your-own-key (BYOK) e la chiave non può essere raggiunta.
- Il servizio restituisce HTTP424.
NetworkError::Category::FunctionNotImplemented
- Nuova eccezione.
- Restituito quando il servizio ha restituito HTTP501 (non implementato).
- L'oggetto seguente è stato eseguito in precedenza come
NetworkError::Category::FailureResponseCode
TemplateArchivedError
: l'applicazione ha tentato di applicare un ID modello archiviato.LicenseNotRegisteredError
: la licenza di pubblicazione dei documenti non è registrata per la revoca.NoPermissionsError::Category::UserNotFound
: l'utente specificato non esiste nel tenant di destinazione.NoPermissionsError::Category::InvalidEmail
: è stato fornito un indirizzo di posta elettronica non valido.NoPermissionsError::Category::AccessDenied
: l'identità fornita non è un'entità riconosciuta da RMS o non è un delegato valido.BadInputError::ErrorCode::LicenseNotTrusted
: la licenza di pubblicazione specificata non proviene da un editore attendibile. (Non nell'API C)BadInputError::ErrorCode::ParameterParsing
: restituito da vari problemi XML, JSON o altri problemi di analisi (Non nell'API C)
Aggiornamenti piattaforma e dipendenza
- Aggiunta del supporto per Debian 10.
- Aggiunta del supporto per Ubuntu 20.04.
Versione 1.9.90
Data di rilascio: 7 luglio 2021
Modifiche generali
- Correzione di un bug in File SDK in cui non è stato possibile decrittografare i documenti legacy in Windows a 32 bit.
- Abilitare bitcode nelle build iOS.
- Aggiornamento di Ubuntu 16.04 per l'uso di OpenSSL 1.1.1k.
- È stato risolto un problema durante la decrittografia dei file MSG gestiti in precedenza dagli strumenti eDiscovery di terze parti.
Versione 1.9.78
Data di rilascio: 29 aprile 2021
Modifiche generali
- Aggiunta di un nuovo parametro che consente agli sviluppatori di fornire ID di scenario personalizzati per correlare gli errori.
- Nel caso in cui sia necessario un caso di supporto per diagnosticare un errore sul lato servizio, questo ID scenario può essere utile per la risoluzione dei problemi.
- File SDK: quando si crea un
FileHandler
set di applicationScenarioID tramiteFileExecutionState
- Protection SDK: diverse API supportano ora il passaggio dell'ID dello scenario.
mip::ProtectionCommonSettings(mApplicationScenarioId)
mip::GetTemplatesSettings::CreateGetTemplatesSettings()->SetApplicationScenarioId()
mip::ProtectionHandler::PublishingSettings()->SetApplicationScenarioId()
mip::ProtectionHandler::ConsumptionSettings()->SetApplicationScenarioId()
mip::PolicyEngine::SetSessionId()
- Aggiunta di
Workload
enumerazioni e controlli di consenso.- Aggiunta
HasWorkloadConsent()
di eGetWorkloadConsent()
aFileEngine
ePolicyEngine
.
- Aggiunta
- Aggiunta di API sincrone al wrapper .NET di Policy SDK:
AddEngine()
,ListEngines()
,DeleteEngine()
,UnloadEngine()
. - Aggiunta del supporto per il reindirizzamento delle richieste di protezione tramite
ProtectionProfile::Settings::AddRedirectionUri()
- È stato aggiunto un contesto del logger che può essere usato con
LoggerDelegate
per scrivere dati di contesto personalizzati nei log.- Questa API può essere utile per correlare gli eventi di errore nei servizi a una singola operazione o a un singolo evento.
- Le API seguenti supportano la fornitura del contesto del logger:
LoggerDelegate::WriteToLogWithContext
TaskDispatcherDelegate::DispatchTask
oExecuteTaskOnIndependentThread
FileEngine::Settings::SetLoggerContext(const std::shared_ptr<void>& loggerContext)
FileProfile::Settings::SetLoggerContext(const std::shared_ptr<void>& loggerContext)
ProtectionEngine::Settings::SetLoggerContext(const std::shared_ptr<void>& loggerContext)
ProtectionProfile::Settings::SetLoggerContext(const std::shared_ptr<void>& loggerContext)
PolicyEngine::Settings::SetLoggerContext(const std::shared_ptr<void>& loggerContext)
PolicyProfile::Settings::SetLoggerContext(const std::shared_ptr<void>& loggerContext)
FileHandler::IsProtected()
FileHandler::IsLabeledOrProtected()
FileHanlder::GetSerializedPublishingLicense()
PolicyHandler::IsLabeled()
Aggiornamenti di piattaforma e dipendenza
- Aggiunta del supporto per CentOS 8
- Aggiunta del supporto per i framework iOS
- Aggiornamento di OpenSSL alla versione 1.1.1k
- Aggiornamento di SQLite alla versione 3.34.1
Modifiche di rilievo
- Modifica del comportamento di controllo predefinito per i tenant in cui Analisi AIP è abilitato. È ora obbligatorio che, oltre a configurare i componenti lato servizio della funzionalità di Analisi AIP, è necessario impostare la proprietà EnableAudit su true nei criteri di etichetta di riservatezza.
Set-LabelPolicy -Identity Global -AdvancedSettings @{EnableAudit="True"}
- Per informazioni dettagliate sull'impostazione delle impostazioni avanzate dei criteri, vedere questo articolo di Docs.
- Aggiunta della funzione
GetApplicationScenarioId()
aFileExecutionState
. - Enumerazione rimossa
ContentFormat
. - Aggiunta di errori specifici con categorie per un set di errori esposti in precedenza in
NetworkError
tramite stringhe/codici di errore.NoPermissionsError::Category::UserNotFound
NoPermissionsError::Category::AccessDenied
NoPermissionsError::Category::AccessExpired
NoPermissionsError::Category::UserNotFound
Microsoft.RightsManagement.Exceptions.UnknownTenantException
Il servizio generato verrà ora visualizzato comeServiceDisabledError
invece diNetwork Error
Correzioni di bug
- Correzione di una perdita di memoria durante la chiamata a
mip::FileHandler::IsLabeledOrProtected()
. - Correzione di un bug per cui l'errore in
FileHandler::InspectAsync()
chiamato osservatore non corretto. - Correzione di un bug per cui l'SDK ha tentato di applicare il formato dell'etichetta di creazione condivisa ai formati di Office che non supportano la creazione condivisa (DOC, PPT, XLS).
- Correzione di un arresto anomalo del wrapper .NET correlato all'eliminazione
FileEngine
. L'oggetto nativoPolicyEngine
è rimasto presente per un certo periodo e tenterebbe un aggiornamento dei criteri, causando un arresto anomalo. - Correzione di un bug per cui l'SDK ignorava le etichette applicate dalle versioni precedenti di AIP a causa della proprietà SiteID mancante.
Versione 1.8.97
Data di rilascio: 24 febbraio 2021
- Correzione di un bug per cui le etichette figlio non venivano filtrate correttamente e includevano tutti i tipi di etichette, anche se non richiesto.
- Correzione di un bug per cui le etichette non venivano mantenute
RemoveProtection()
se i metadati delle etichette erano incompleti.
Versione 1.8.94
Data di rilascio: 8 febbraio 2021
- Correzione di un bug nel pacchetto NuGet in cui la configurazione di debug per i progetti C++ ha distribuito file binari di versione. La versione 1.8.86 può causare un arresto anomalo con app C++ native. Assicurarsi di eseguire l'aggiornamento alla versione 1.8.94 o successiva.
- Correzione di un bug per cui il motore dei criteri era necessario per rimuovere la protezione.
- Se il motore dei criteri non può essere caricato e i metadati delle etichette sono presenti, verrà rimosso se la protezione viene rimossa.
- Correzione di un bug per cui è stato generato vuoto
labelInfo.xml
se il file è stato modificato in un'altra etichetta protetta.
Versione 1.8.86
Data di rilascio: 13 gennaio 2021
Modifiche generali
- Aggiunta del supporto per Mac in ARM.
- Firma di tutti i file dylib per Mac.
- Tutti i cloud sono completamente supportati in tutti e tre gli SDK.
- Rinominare
TelemetryConfiguration
conDiagnosticConfiguration
. - Aggiornato
MipContext
per accettareDiagnosticConfiguration
invece diTelemetryConfiguration
. - È stato esposto un nuovo
AuditDelegate
oggetto . - Diverse impostazioni personalizzate hanno modificato il nome e verranno rimosse nella versione 1.9. Continueranno a funzionare in parallelo con i nomi degli aggiornamenti nella versione 1.8.
Nuovo nome | Nome precedente |
---|---|
is_debug_audit | is_debug_telemetry |
is_audit_disabled | is_built_in_audit_disabled |
File SDK
- Aggiunta del supporto per le etichette definite dall'utente con crittografia a chiave doppia.
- Aggiunta di un'API per
MsgInspector.BodyType
esporre il tipo di codifica del corpo per i file MSG. - Aggiunta di API per supportare la crittografia a chiave doppia con autorizzazioni User-Defined.
- Aggiunta del flag per
mip::FileHandler
che consentirà al chiamante di disabilitare l'invio dell'evento di individuazione del controllo. In questo modo si risolve uno scenario in cui l'uso dell'APIClassifyAsync()
genera eventi di individuazione duplicati. - Correzione di bug in cui:
- L'impostazione della protezione nel file XPS non riesce.
- Non è possibile aprire un file dopo il caricamento/download da SharePoint Online e la rimozione di autorizzazioni personalizzate.
RemoveProtection()
la funzione accetterebbe un input message.rpmsg. Ora accetta solo file MSG.- Arresto anomalo che si è verificato durante il tentativo di rilevare o revocare file non protetti.
SDK per i criteri
- Rimosso
ActionId
dalle proprietà predefinite dei metadati per garantire la coerenza tra i documenti etichettati da Microsoft Office e SharePoint Online. - Aggiunta del supporto per le etichette specifiche di Azure Purview.
- Aggiunta della possibilità di eseguire l'override dei dati di telemetria e del controllo tramite delegati per ognuno di essi.
- Il delegato di controllo consente di inviare eventi di controllo AIP a una destinazione diversa da AIP Analytics o oltre ad AIP Analytics.
- Aggiunta del flag per
mip::PolicyHandler
che consentirà al chiamante di individuare l'invio dell'evento di individuazione del controllo. In questo modo si risolve uno scenario in cui l'uso dell'APIClassifyAsync()
genera eventi di individuazione duplicati. - Correzione di un bug per cui non è stato possibile aprire il database dei criteri crittografati in determinati scenari.
- Nuovo esposto
AuditDelegate
che consente agli sviluppatori di eseguire l'override della pipeline di controllo predefinita di MIP SDK e inviare eventi alla propria infrastruttura. mip::ClassifierUniqueIdsAndContentFormats
eGetContentFormat()
ora restituisconostd::string
invece dimip::ContentFormat
. Questa modifica viene replicata nei wrapper .NET e Java.ContentFormat.Default
è oraContentFormat.File
.
Protection SDK
- Aggiunta di una
ProtectionEngineSettings.SetAllowCloudServiceOnly
proprietà che impedisce le connessioni ai cluster Di Active Directory Rights Management Services se true. Verranno usati solo gli ambienti cloud. - Aggiunta del supporto per l'acquisizione delle licenze di delega.
- Le licenze di delega consentono ai servizi di recuperare una licenza per il contenuto per conto di un utente.
- Ciò consente al servizio di visualizzare i dati dei diritti e decrittografare per conto dell'utente senza ulteriori chiamate al servizio.
Wrapper Java (anteprima pubblica)
- Aggiunta del supporto per Track e Revoke a Java Wrapper.
- Aggiunta del supporto del flusso a Java Wrapper
API C
- Rimosso MIP_FLIGHTING_FEATURE_KEEP_PDF_LINEARIZATION flag dall'API C.
Versione 1.7.147
File SDK
- Correzione di bug secondaria per il formato di file PBIX.
Versione 1.7.145
Data di rilascio: 13 novembre 2020
Modifiche generali
- Aggiornamento del pacchetto NuGet per copiare le dipendenze solo in caso di aggiornamento anziché sempre.
- La configurazione di debug in .NET userà la versione di rilascio delle librerie native. È stato rilevato che i clienti che distribuiscono soluzioni .NET in modalità di debug nei server remoti sono stati necessari per installare il runtime di debug di VC++, che non è semplice. Se è necessario eseguire il debug in librerie native, copiare le DLL dall'SDK ridistribuibile nella cartella del progetto (https://ala.ms/mipsdkbins)
- Correzione di un bug che generava avvisi per i progetti .NET Core.
Versione 1.7.133
Data di rilascio: 23 settembre 2020
Modifiche generali dell'SDK
- Anteprima pubblica disponibile per Java in Windows e Ubuntu 18.04.
- .NET Core ora supportato in Windows.
- Supporto dell'anteprima pubblica per .NET Core in Ubuntu 18.04.
- Registrazione locale migliorata per l'archivio chiavi quando il tipo di cache di archiviazione è impostato su
OnDiskEncrypted.
- Abilitazione della funzionalità in anteprima in .NET Wrapper
- Comportamento di telemetria dell'SDK ripristinato alla versione precedente alla 1.6. Un set minimo di eventi di utilizzo viene ora inviato quando è stato scelto solo per la telemetria minima.
File SDK
- Correzione della conversione del corpo UTF-16/UTF-8 in
MSGInspector
. - Impostare un limite massimo di dimensioni massime predefinito per i file protetti da File SDK su 6 GB.
- Modifica apportata a causa della decrittografia di file di grandi dimensioni che richiedono almeno le dimensioni del file nella memoria disponibile.
- Può essere sottoposto a override tramite l'impostazione
max_file_size_for_protection
personalizzata .
- Aggiunta del supporto per pdf linearizzati.
- Correzione di un bug per cui LastModifiedDate non è stato aggiornato nell'evento Change.
- Correzione di una perdita di memoria nella creazione di PDF protetti.
- File SDK supporta la revoca dei file rilevati.
FileEngine::Settings::SetLabelFilter
è deprecato, usareConfigureFunctionality
invece.
SDK per i criteri
- Policy SDK supporta ora le azioni di etichettatura Crittografa solo.
- Correzione di un bug per cui
mip::Identity
non è stato caricato correttamente dai motori memorizzati nella cache. - Correzione di un bug per cui i confronti GUID di classificazione facevano distinzione tra maiuscole e minuscole nell'API di classificazione.
- Eventi di controllo arricchiti aggiungendo nuovi campi.
Protection SDK
- Correzione di un bug per cui
mip::Identity
non è stato caricato correttamente dai motori memorizzati nella cache. - Aggiunta della registrazione implicita per le licenze di pubblicazione appena create.
- Aggiunta del supporto per gli algoritmi di crittografia usati per supportare DKE nei file di Office.
- Parametri e
owner
residocumentId
facoltativi.
API C
- Aggiunta dell'identità mancante e delle API DKE.
- Spostato
AuthDelegate
dal profilo al motore in tutti gli SDK. - Pubblicare l'esempio di Policy SDK per C
MIP_CC_CreateProtectionEngineSettingsWithIdentity
è stato deprecato, usareMIP_CC_CreateProtectionEngineSettingsWithIdentityAndAuthCallback
invece .MIP_CC_CreateProtectionEngineSettingsWithEngineId
è stato deprecato, usareMIP_CC_CreateProtectionEngineSettingsWithEngineIdAndAuthCallback
invece .MIP_CC_CreateProtectionProfileSettings
la firma è stata modificata.MIP_CC_CreatePolicyEngineSettingsWithIdentity
è stato deprecato, usareMIP_CC_CreatePolicyEngineSettingsWithIdentityAndAuthCallback
.MIP_CC_CreatePolicyEngineSettingsWithEngineId
è stato deprecato, usareMIP_CC_CreatePolicyEngineSettingsWithEngineIdAndAuthCallback
.MIP_CC_PolicyEngineSettings_SetLabelFilter
è stato deprecato, usareMIP_CC_PolicyEngineSettings_ConfigureFunctionality
.MIP_CC_CreatePolicyProfileSettings
la firma è stata modificata.
Modifiche di rilievo
Comuni
TelemetryConfiguration::isTelemetryOptedOut
è stato rinominato inisMinimalTelemetryEnabled
.
API C
mip_cc_document_state
è stato aggiornato con un nuovo valoremip_cc_metadata_version_format
contentMetadataVersionFormat
Versione 1.6.103
Data di rilascio: 16 aprile 2020
Modifiche generali dell'SDK
- TLS 1.2 applicato per tutte le comunicazioni HTTP non ADRMS.
- È stata eseguita la migrazione dell'implementazione HTTP di iOS/macOS da NSURLConnection a NSURLSession.
- Componente di telemetria iOS migrato da Aria SDK a 1DS SDK.
- Il componente telemetria ora usa HttpDelegate di MIP in iOS, macOS e Linux. (in precedenza solo win32).
- Sicurezza dei tipi migliorata per l'API C.
- Moved AuthDelegate from Profile to Engine in C++, C#, and Java APIs.
- AuthDelegate spostato dal costruttore di
Profile::Settings
aEngine::Settings
. - Aggiunta di Category a NoPolicyError per fornire altre informazioni sul motivo per cui la sincronizzazione dei criteri non è riuscita.
- Aggiunta del
PolicyEngine::GetTenantId
metodo . - Aggiunta del supporto esplicito per tutti i cloud.
- Nuovo
Engine::Settings::SetCloud
metodo per impostare il cloud di destinazione (GCC High, 21-Vianet e così via). - La chiamata al metodo esistente
Engine::Settings::SetCloudEndpointBaseUrl
non è più necessaria per i cloud riconosciuti.
- Nuovo
- Codice bit abilitato per i file binari iOS.
File SDK
- Aggiunta
IFileHandler::InspectAsync
ai wrapper C# e Java - Nuovo supporto tramite
FileProfile::AcquirePolicyAuthToken
per l'attivazione dell'acquisizione di token dei criteri per consentire a un'applicazione di riscaldare la cache dei token. MsgInspector::GetAttachments
restituiscevector<shared_ptr<MsgAttachmentData>>
invece divector<unique_ptr<MsgAttachmentData>>
TelemetryConfiguration::isOptedOut
l'impostazione ora disabilita completamente i dati di telemetria. In precedenza è stato inviato un set di dati di telemetria minimi.
SDK per i criteri
- Nuovo supporto per l'attivazione dell'acquisizione di token per consentire a un'applicazione di riscaldare la cache dei token tramite
PolicyProfile::AcquireAuthToken
. - Le etichette HYOK vengono filtrate per impostazione predefinita.
- I metadati associati alle etichette eliminate verranno ora rimossi.
- Se esiste una mancata corrispondenza tra i criteri di etichetta memorizzati nella cache e i criteri di riservatezza, la cache dei criteri verrà cancellata.
- Nuovo supporto per i metadati con controllo delle versioni:
- Un formato di file può riconvalidare il percorso o il formato dei metadati dell'etichetta. In tal caso, un'applicazione deve fornire a MIP tutti i metadati e MIP determinerà quali metadati sono "true".
ContentLabel::GetExtendedProperties
ora restituiscevector<MetadataEntry>
invece divector<pair<string, string>>
.MetadataAction::GetMetadataToAdd
ora restituiscevector<MetadataEntry>
invece divector<pair<string, string>>
.ExecutionState::GetContentMetadata
dovrebbe ora restituirevector<MetadataEntry>
invece divector<pair<string, string>>
.ExecutionState::GetContentMetadataVersion
deve restituire la versione più elevata dei metadati riconosciuta dall'applicazione per il formato di file corrente (in genere 0).PolicyEngine::GetWxpMetadataVersion
restituisce la versione dei metadati per i documenti di Office configurata dall'amministratore del tenant (0 = predefinito, 1 = formato abilitato per la creazione condivisa).- Modifiche equivalenti nell'API C:
MIP_CC_ContentLabel_GetExtendedProperties
MIP_CC_MetadataAction_GetMetadataToAdd
mip_cc_metadata_callback
mip_cc_document_state
MIP_CC_PolicyEngine_GetWxpMetadataVersion
TelemetryConfiguration::isOptedOut
l'impostazione ora disabilita completamente i dati di telemetria. In precedenza è stato inviato un set di dati di telemetria minimi.
Protection SDK
- Nuovo supporto per la registrazione e la revoca per il rilevamento dei documenti.
- Nuovo supporto per la generazione di una pre-licenza durante la pubblicazione.
- Certificato microsoft TLS pubblico esposto usato dal servizio protezione.
GetMsftCert
eGetMsftCertPEM
- Se un'applicazione esegue l'override
HttpDelegate
dell'interfaccia, deve considerare attendibili i certificati server emessi da questa CA. - Questo requisito dovrebbe essere rimosso entro la fine del 2020.
Versione 1.5.124
Data di rilascio: 2 marzo 2020
Modifiche generali dell'SDK
- API Java (solo Windows)
- Annullamento di attività MIP asincrone
- Tutte le chiamate asincrone restituiscono un oggetto mip::AsyncControl con un metodo Cancel()
- File binari dipendenti con caricamento ritardato
- Facoltativamente, mascherare proprietà di telemetria/controllo specifiche
- Configurabile tramite mip::TelemetryConfiguration::maskedProperties
- Eccezioni migliorate:
- Tutti gli errori includono ID di correlazione interattivi nella stringa di descrizione
- Errore di rete con campi 'Category', 'BaseUrl', 'RequestId' e 'StatusCode'
- Dettagli dei risultati o degli errori dell'API C migliorati
File SDK
- Verifica senza rete se il file è etichettato o protetto
- mip::FileHandler::IsLabeledOrProtected()
- Rischio minore di falsi positivi (ad esempio se il file contiene metadati dell'etichetta zombie)
- Etichette di filtro associate a tipi specifici di protezione
- Configurabile tramite mip::FileEngine::Settings::SetLabelFilter()
- Esporre i dati dei criteri in File SDK
- mip::FileEngine::GetPolicyDataXml()
SDK per i criteri
- Contrassegno di contenuto dinamico per le azioni filigrana/intestazione/piè di pagina:
- Campi come ${Item.Label}, ${Item.Name}, ${User.Name}, ${Event.DateTime} verranno popolati automaticamente da MIP
- mip::Identity può essere costruito con il campo "name" descrittivo usato dal contrassegno di contenuto dinamico
- Configurabile tramite mip::P olicyEngine::Settings::SetVariableTextMarkingType()
- Verifica gratuita della rete se il contenuto è etichettato
- mip::P olicyHandler::IsLabeled()
- Rischio minore di falsi positivi (ad esempio, se il contenuto contiene metadati dell'etichetta zombie)
- TTL cache dei criteri di etichetta
- Impostazione predefinita: 30 giorni
- Configurabile tramite mip::P olicyProfile::SetCustomSettings()
- Modifica importante
- Aggiornamento di PolicyEngine.Settings.LabelFilter dall'elenco di enumerazioni a un campo di bit nullable.
Protection SDK
- Pre-licenza
- L'esistenza di una pre-licenza insieme al contenuto crittografato, insieme a un certificato utente recuperato in precedenza, consente la decrittografia offline del contenuto
- mip::P rotectionHandler::ConsumptionSettings può essere costruito con una licenza preliminare
- mip::P rotectionEngine::LoadUserCert| Async() recupera il certificato utente archiviato in base ai criteri di memorizzazione nella cache di mip::P rotectionProfile
- Controllo delle funzionalità specifico del server
- Verifica se il tenant dell'utente supporta la funzionalità "solo crittografia" (disponibile solo in Azure RMS)
- mip::P rotectionEngine::IsFeatureSupported()
- Dettagli più avanzati durante il recupero di modelli RMS
- Modifiche di rilievo
mip::ProtectionEngine::GetTemplates()
vector<shared_ptr<string>>
valore restituito sostituito convector<shared_ptr<mip::TemplateDescriptor>>
(C++)mip::ProtectionEngine::Observer::OnGetTemplatesSuccess()
parametro callbackshared_ptr<vector<string>>
sostituito convector<shared_ptr<mip::TemplateDescriptor>>
(C++)- IProtectionEngine.GetTemplates| Valore restituito
List<string>
Async() sostituito conList<TemplateDescriptor>
. (C#) - MIP_CC_ProtectionEngine_GetTemplates() mip_cc_guid* parametro sostituito con mip_cc_template_descriptor* (API C)
API C
- Modifiche di rilievo: la maggior parte delle funzioni aggiornate per includere mip_cc_error* parametro può essere NULL
Aggiornamenti di errore/eccezione
- Riepilogo della gestione degli errori:
- AccessDeniedError: all'utente non sono stati concessi diritti di accesso al contenuto
- NoAuthTokenError: l'app non ha fornito il token di autenticazione
- NoPermissionsError: all'utente non sono stati concessi diritti per contenuto specifico, ma è disponibile referrer/owner
- ServiceDisabledError: il servizio è disabilitato per utente/dispositivo/piattaforma/tenant
- AdhocProtectionRequiredError: la protezione ad hoc deve essere impostata prima di impostare un'etichetta
- BadInputError: input non valido dall'utente/app
- InsufficientBufferError: input del buffer non valido dall'utente o dall'app
- LabelDisabledError: l'ID etichetta viene riconosciuto ma disabilitato per l'uso
- LabelNotFoundError: ID etichetta non riconosciuto
- TemplateNotFoundError: ID modello non riconosciuto
- ConsentDeniedError: operazione che richiede il consenso dell'utente o dell'app non è stata concessa il consenso
- DeprecatoApiError: questa API è stata deprecata
- FileIOError: impossibile leggere/scrivere file
- InternalError: errore interno imprevisto
- NetworkError
- ProxyAuthenticationError: è necessaria l'autenticazione proxy
- Category=BadResponse: risposta HTTP illeggibile restituita dal server (tentativo potrebbe avere esito positivo)
- Category=Cancelled: impossibile stabilire la connessione HTTP perché l'operazione è stata annullata dall'utente/dall'app (probabilmente il tentativo avrà esito positivo)
- Category=FailureResponseCode: il server ha restituito una risposta di errore generica (il nuovo tentativo potrebbe avere esito positivo)
- Category=NoConnection: impossibile stabilire una connessione HTTP (tentativo potrebbe avere esito positivo)
- Category=Offline: impossibile stabilire una connessione HTTP perché l'applicazione è in modalità offline (tentativi non riusciti)
- Category=Proxy: non è stato possibile stabilire una connessione HTTP a causa di un problema del proxy (probabilmente il tentativo non riesce)
- Category=SSL: non è stato possibile stabilire una connessione HTTP a causa di un problema SSL (tentativo probabilmente non riuscito)
- Category=Throttled: risposta "limitata" restituita dal server (il backoff o il nuovo tentativo avrà probabilmente esito positivo)
- Category=Timeout: non è stato possibile stabilire una connessione HTTP dopo il timeout (probabilmente il tentativo avrà esito positivo)
- Category=UnexpectedResponse: il server ha restituito dati imprevisti (tentativi potrebbero avere esito positivo)
- NoPolicyError: il tenant o l'utente non è configurato per le etichette
- NotSupportedError: operazione non supportata nello stato corrente
- OperationCancelledError: Operazione annullata
- PrivilegedRequiredError: impossibile modificare l'etichetta a meno che il metodo di assegnazione non sia privo di privilegi
- AccessDeniedError: all'utente non sono stati concessi diritti di accesso al contenuto
- Modifiche
- Rimosso PolicySyncError inutilizzato. Sostituito da NetworkError
- Rimozione di TransientNetworkError inutilizzata. Sostituito dalle categorie NetworkError
Versione 1.4.0
Data di rilascio: 6 novembre 2019
Questa versione introduce il supporto per Protection SDK nel pacchetto .NET (Microsoft.InformationProtection.File).
Modifiche dell'SDK
- Miglioramenti delle prestazioni e correzioni di bug
- Enumerazione StorageType rinominata in CacheStorageType
- Collegamenti Android a libc++ invece di gnustl
- Api deprecate in precedenza rimosse
- File/Policy/Profile::Settings deve essere inizializzato con un Oggetto MipContext
- File/Policy/Profile::Settings path, application info, logger delegate, telemetry e log level getters/setters sono stati rimossi. Queste proprietà sono gestite da MipContext
- Supporto migliore per la libreria statica nelle piattaforme Apple
- Librerie statiche monolitiche
- libmip_file_sdk_static.a
- libmip_upe_sdk_static.a
- libmip_protection_sdk_static.a
- libmip_upe_and_protection_sdk_static.a
- Dipendenze di terze parti estratte in librerie separate
- libsqlite3.a
- libssl.a
- Librerie statiche monolitiche
- Rimosso mip_telemetry.dll (unito in mip_core.dll)
File SDK
- RPMSG
- Crittografia
- Aggiunta del supporto per la decrittografia di string8
- Comportamento dell'estensione PFILE configurabile (impostazione predefinita, {extension}. PFILE o P{extension})
- ProtectionSettings::SetPFileExtensionBehavior
SDK per i criteri
- API C completa
- Configurare il filtro delle etichette associate alla protezione
- PolicyEngine::Settigns::SetLabelFilter()
Protection SDK
- Api deprecate in precedenza rimosse
- Removed ProtectionEngine::CreateProtectionHandlerFromDescriptor[Async] (usare ProtectionEngine::CreateProtectionHandlerForPublishing[Async])
- Removed ProtectionEngine::CreateProtectionHandlerFromPublishingLicense[Async] (usare ProtectionEngine::CreateProtectionHandlerForConsumption[Async])
- API C# completa
- API C completa
- Modifiche alla normalizzazione delle API C dall'anteprima dell'API C v1.3:
- Rinominato mip_cc_storage_type in mip_cc_cache_storage_type
- Ridenominazione di MIP_CC_AddProtectionProfileEngine in MIP_CC_ProtectionProfile_AddEngine
- Rinominato MIP_CC_CreateProtectionEngineSettingsForExistingEngine in MIP_CC_CreateProtectionEngineSettingsWithEng
- Ridenominazione di MIP_CC_CreateProtectionEngineSettingsForNewEngine in MIP_CC_CreateProtectionEngineSettingsWithIdentity
- Rinominato MIP_CC_SetProtectionProfileSettingsHttpDelegate in MIP_CC_ProtectionProfileSettings_SetHttpDelegate
- Rinominato MIP_CC_CreateProtectionHandlerForConsumption in MIP_CC_ProtectionEngine_CreateProtectionHandlerForConsumption
- Rinominato MIP_CC_CreateProtectionHandlerForPublishing in MIP_CC_ProtectionEngine_CreateProtectionHandlerForPublishing
- Rinominato MIP_CC_GetProtectionEngineId in MIP_CC_ProtectionEngine_GetEngineId
- Rinominato MIP_CC_GetProtectionEngineTemplates in MIP_CC_ProtectionEngine_GetTemplates
- Rinominato MIP_CC_GetProtectionEngineTemplatesSize in MIP_CC_ProtectionEngine_GetTemplatesSize
- Ridenominazione di MIP_CC_SetTelemetryConfigurationHttpDelegate in MIP_CC_TelemetryConfiguration_SetHttpDelegate
- Ridenominazione di MIP_CC_SetTelemetryConfigurationHostName in MIP_CC_TelemetryConfiguration_SetHostName
- Rinominato MIP_CC_SetTelemetryConfigurationIsLocalCachingEnabled in MIP_CC_TelemetryConfiguration_SetIsLocalCachingEnabled
- Rinominato MIP_CC_SetTelemetryConfigurationIsNetworkDetectionEnabled in MIP_CC_TelemetryConfiguration_SetIsNetworkDetectionEnabled
- Rinominato MIP_CC_SetTelemetryConfigurationIsTelemetryOptedOut in MIP_CC_TelemetryConfiguration_SetIsTelemetryOptedOut
- Rinominato MIP_CC_SetTelemetryConfigurationLibraryName in MIP_CC_TelemetryConfiguration_SetLibraryName
- Rimosso MIP_CC_ProtectionEngine_GetRightsForLabelIdSize e aggiornato MIP_CC_ProtectionEngine_GetRightsForLabelId per popolare un mip_cc_string_list anziché un buffer di stringhe delimitato da virgole
- Rimosso MIP_CC_ProtectionHandler_GetRightsSize e aggiornato MIP_CC_ProtectionHandler_GetRights per popolare un mip_cc_string_list anziché un buffer di stringhe delimitato da virgole
- Aggiunta di MIP_CC_ProtectionEngine_GetEngineIdSize e MIP_CC_ProtectionEngine_GetEngineId aggiornato per popolare un buffer di stringhe anziché un mip_cc_guid
- MIP_CC_CreateProtectionDescriptorFromUserRights ora accetta il parametro "mip_cc_dictionary-" anziché "mip_cc_dictionary"
- MIP_CC_ProtectionEngineSettings_SetCustomSettings ora accetta il parametro 'mip_cc_dictionary-' invece di 'mip_cc_dictionary'
- MIP_CC_ProtectionProfileSettings_SetCustomSettings ora accetta il parametro 'mip_cc_dictionary-' invece di 'mip_cc_dictionary'
- MIP_CC_TelemetryConfiguration_SetCustomSettings ora accetta il parametro 'mip_cc_dictionary-' invece di 'mip_cc_dictionary'
- MIP_CC_CreateMipContext i parametri 'isOfflineOnly' e 'loggerDelegateOverride'
- Modifiche alla normalizzazione delle API C dall'anteprima dell'API C v1.3:
Versione 1.3.0
Data di rilascio: 22 agosto 2019
Nuove funzioni e caratteristiche
mip::MipContext
è il nuovo oggetto di livello più alto.- La decrittografia dei file MSG protetti è ora supportata.
- L'ispezione dei file message.rpmsg è supportata tramite
mip::FileInspector
emip::FileHandler::InspectAsync()
. - La cache su disco può ora essere crittografata facoltativamente.
- Protection SDK supporta ora i clienti cloud cinesi.
- Supporto arm64 in Android.
- Supporto di Arm64e in iOS.
- È ora possibile disabilitare la cache delle licenze per l'utente finale.End-user license (EUL) cache can now be disabled.
- La crittografia con estensione pfile può essere disabilitata tramite
mip::FileEngine::EnablePFile
- Miglioramento delle prestazioni per le operazioni di protezione riducendo il numero di chiamate HTTP
- Rimosso i dettagli dell'identità delegata da
mip::Identity
e aggiunti inveceDelegatedUserEmail
amip::FileEngine::Settings
,mip::ProtectionSettings
,mip::PolicyEngine::Settings
emip::ProtectionHandler
.PublishingSettings
ConsumptionSettings
- Le funzioni che in precedenza restituivano LabelId ora restituiscono un
mip::Label
oggetto .
Modifiche
- Nelle versioni precedenti è necessario chiamare
mip::ReleaseAllResources
. La versione 1.3 sostituisce conmip::MipContext::~MipContext
omip::MipContext::Shutdown
. - Rimosso
ActionSource
damip::LabelingOptions
emip::ExecutionState::GetNewLabelActionSource
- Sostituito
mip::ProtectionEngine::CreateProtectionHandlerFromDescriptor
conmip::ProtectionEngine::CreateProtectionHandlerForPublishing
. - Sostituito
mip::ProtectionEngine::CreateProtectionHandlerFromPublishingLicense
conmip::ProtectionEngine::CreateProtectionHandlerForConsumption
. - Rinominato
mip::PublishingLicenseContext
mip::PublishingLicenseInfo
in e aggiornato in modo da contenere campi avanzati anziché byte serializzati non elaborati. mip::PublishingLicenseInfo
contiene i dati rilevanti per MIP dopo l'analisi di una licenza di pubblicazione (PL).mip::TemplateNotFoundError
emip::LabelNotFoundError
generata quando l'applicazione passa un ID modello o un ID etichetta non riconosciuto.- Aggiunta del supporto per l'accesso condizionale basato su etichetta tramite il parametro delle attestazioni di
AcquireToken()
emip::AuthDelegate::OAuth2Challenge()
. Questa funzionalità non è ancora stata esposta tramite il portale del Centro sicurezza e conformità.
Versione 1.2.0
Data di rilascio: 15 aprile 2019
Nuove funzioni e caratteristiche
- Il componente di telemetria ora usa lo stesso stack HTTP del resto di MIP, anche se l'applicazione client lo ha sottoposto a override con HttpDelegate.
- Le applicazioni client possono controllare il comportamento di threading delle attività asincrone eseguendo l'override di TaskDispatcherDelegate nei profili.
- La crittografia RPMSG è ora disponibile in anteprima.
- Allineare il comportamento di gestione delle eccezioni di File/Policy SDK con Protection SDK:
- ProxyAuthError generato da tutti gli SDK se un proxy è configurato per richiedere l'autenticazione.
- NoAuthTokenError generato da tutti gli SDK se il token di autenticazione vuoto viene fornito dall'implementazione dell'applicazione di mip::AuthDelegate::AcquireOAuth2Token.
- Miglioramento della memorizzazione nella cache HTTP per Policy SDK riduce il numero di chiamate HTTP necessarie per metà.
- Log,audit/telemetry più avanzati per migliorare il rilevamento e il debug degli errori.
- Supporto per etichette esterne/esterne per facilitare la migrazione alle etichette AIP.
- Supporto abilitato per le applicazioni di terze parti per scaricare i tipi di riservatezza da SCC.
- Sono esposte e configurabili altre impostazioni di telemetria (comportamento di memorizzazione nella cache/threading e così via).
Modifiche dell'SDK
- mip_common.dll suddiviso in mip_core.dll e mip_telemetry.dll.
- Rinominato mip::ContentState in mip::D ataState per descrivere come un'applicazione interagisce con i dati a un livello elevato.
- L'eccezione mip::AdhocProtectionRequiredError viene generata da FileHandler::SetLabel per notificare a un'applicazione che deve prima applicare la protezione ad hoc prima di applicare un'etichetta.
- L'eccezione mip::OperationCancelledError viene generata quando un'operazione è stata annullata, ad esempio a causa dell'arresto o dell'annullamento HTTP.
- Nuove API:
- mip::ClassificationResult::GetSensitiveInformationDetections
- mip::FileEngine::GetLastPolicyFetchTime
- mip::FileEngine::GetDefaultSensitivityLabel
- mip::FileEngine::GetPolicyId
- mip::FileEngine::HasClassificationRules
- mip::FileEngine::Settings::SetPolicyCloudEndpointBaseUrl
- mip::FileHandler::GetDecryptedTemporaryFileAsync
- mip::FileHandler::Observer::OnGetDecryptedTemporaryFileFailure
- mip::FileHandler::Observer::OnGetDecryptedTemporaryFileSuccess
- mip::File/Policy/ProtectionProfile::SetTaskDispatcherDelegate
- mip::File/Policy/ProtectionProfile::SetTelemetryConfiguration
- mip::HttpRequest::GetBody restituisce std::vector<uint8_t> anziché std::string
- mip::HttpRequest::GetId
- mip::P olicyEngine::GetLastPolicyFetchTime
- mip::P olicyEngine::GetPolicyId
- mip::P olicyEngine::HasClassificationRules
- mip::P olicyEngine::Settings::SetCloudEndpointBaseUrl
- mip::P rotectionDescriptor::GetContentId
- (interface) mip::TaskDispatcherDelegate
Nuovi requisiti
- è necessario chiamare mip::ReleaseAllResources prima della terminazione del processo (dopo aver cancellato i riferimenti a tutti i profili, motori e gestori)
- (interface) mip::ExecutionState::GetClassificationResults return type and "classificationIds" parameter has changed
- (interfaccia) mip::FileExecutionState::GetAuditMetadata può essere implementato dalle applicazioni per specificare informazioni dettagliate da esporre al dashboard di controllo di un amministratore tenant (ad esempio mittente, destinatari, ultima modifica e così via).
- (interface) mip::FileExecutionState::GetClassificationResults return type has changed, and it now requires a FileHandler parameter
- (interfaccia) mip::FileExecutionState::GetDataState deve essere implementato dalle applicazioni per specificare come un'applicazione interagisce con contentIdentifier
- (interface) mip::HttpDelegate interface richiede metodi 'CancelOperation' e 'CancelAllOperations'
- (interface) mip::HttpDelegate interface 'Send' and 'SendAsync' return mip::HttpOperation invece di mip::HttpResponse
- (interface) mip::HttpResponse::GetBody restituisce std::vector<uint8_t> anziché std::string
- (interface) mip::HttpResponse interface richiede l'implementazione del metodo 'GetId'
- mip::ContentLabel::GetCreationTime restituiscono std::chrono::time_point anziché std::string
- mip::FileEngine::CreateFileHandlerAsync non accetta più il parametro 'contentIdentifier'
- mip::P olicyHandler::NotifyCommitedActions rinominato in mip::P olicyHandler::NotifyCommittedActions
Versione 1.1.0
Data di rilascio: 15 gennaio 2019
Questa versione introduce il supporto per le piattaforme seguenti:
- .NET
- iOS SDK (Policy SDK)
- Android SDK (Policy SDK e Protection SDK)
Nuove funzioni e caratteristiche
- Supporto di ADRMS
- Le operazioni di Protection SDK sono realmente asincrone (in Win32), consentendo operazioni di crittografia/decrittografia simultanee non bloccanti
- I callback dell'applicazione (AuthDelegate, HTTPDelegate e così via) possono ora essere richiamati su -any- thread in background
- Le proprietà delle etichette personalizzate impostate dagli amministratori IT possono ora essere lette tramite mip::Label::GetCustomSettings
- La licenza di pubblicazione serializzata può ora essere recuperata direttamente da un file senza alcuna operazione HTTP tramite mip::FileHandler::GetSerializedPublishingLicense
- Le applicazioni ricevono una notifica se è necessaria un'operazione HTTP per completare la creazione di un mip::FileEngine/mip::P olicyEngine tramite mip::FileProfile::Observer::OnAddPolicyEngineStarting/mip::P olicyProfile::Observer::OnAddEngineStarting
- Rilevamento se il contenuto protetto ha una data di scadenza o meno è stato semplificato con il metodo pratico mip::P rotectionDescriptor::D oesContentExpire
- Classificazione:
- I tipi di riservatezza (espressioni regex per CC#, passport #e così via) possono essere acquisiti dal servizio SCC
- Abilitare la funzionalità impostando il flag mip::FileEngine::Settings/mip::P olicyEngine::Settings
- Leggere i tipi tramite mip::FileEngine::ListSensitivityTypes/mip::P olicyEngine::ListSensitivityTypes
- I risultati della classificazione dalle utilità dello scanner di documenti esterni possono essere inseriti in MIP per guidare etichette consigliate/obbligatorie in base al contenuto del documento
- Passare i risultati a MIP tramite mip::FileExecutionState::GetClassificationResults/mip::ExecutionState::GetClassificationResults
- mip::ApplyLabelAction e mip::RecommendLabelAction possono essere restituiti da mip::P olicyEngine::ComputeActions quando i risultati della classificazione corrispondono a una regola dei criteri che indica le etichette obbligatorie/consigliate
- I tipi di riservatezza (espressioni regex per CC#, passport #e così via) possono essere acquisiti dal servizio SCC
Nuovi requisiti
- Popolamento applicato di campi ID/nome/versione mip::ApplicationInfo durante la creazione di mip::FileProfile, mip::P olicyProfile e mip::P rotectionProfile
- Le applicazioni devono implementare una nuova interfaccia mip::FileExecutionState durante la creazione di mip::FileHandlers
Nuove eccezioni
- mip::NoAuthTokenError generato se AuthDelegate dell'applicazione restituisce un token vuoto (a causa dell'annullamento)
- Si applica alla creazione di:
- mip::FileEngine
- mip::FileHandler
- mip::PolicyEngine
- mip::ProtectionHandler
- Si applica alla creazione di:
- mip::NoPolicyError generato se il tenant non è configurato per le etichette
- Si applica alla creazione di:
- mip::FileEngine
- mip::PolicyEngine
- Si applica alla creazione di:
- mip::ServiceDisabledError generato se il servizio RMS è disabilitato per un utente/dispositivo/piattaforma/tenant specifico
- Si applica alla creazione di:
- mip::FileHandler
- mip::ProtectionHandler
- Si applica alla creazione di:
- mip::NoPermissionsError generato se un utente non dispone dei diritti per decrittografare un documento o il contenuto è scaduto
- Si applica alla creazione di:
- mip::FileHandler
- mip::ProtectionHandler
- Si applica alla creazione di:
Passaggi successivi
- Per informazioni sulle piattaforme supportate e altro ancora, vedere Domande frequenti e problemi di MIP SDK .
- Per informazioni su come iniziare a usare MIP SDK, vedere Configurazione e configurazione di MIP SDK .