arquivo do histórico de versões de lançamento do SDK do Microsoft Proteção de Informações (MIP)

Este artigo arquiva notas de versão para versões sem suporte do SDK do MIP (versão 1.15 e anterior). Para obter a política de suporte atual e as notas de versão para versões com suporte, consulte o histórico de versão do SDK do MIP e a política de suporte.

Importante

As versões documentadas neste artigo não têm mais suporte. Correções e novas funcionalidades são aplicadas apenas à versão GA mais recente. Use este arquivo apenas como referência histórica; para uso em produção, atualize para a versão mais recente com suporte.

Versão 1.15.134

Data de lançamento: 8 de abril de 2025

SDK de arquivos

  • Correção de um problema em que caracteres Unicode em mensagens HTML não estavam renderizando corretamente.
  • Correção de um problema em que os documentos do Office eram criptografados com a extensão .pfile quando os arquivos não eram sincronizados com OneDrive.
  • Correção de um bug em que um arquivo de saída parcialmente criado permanecia quando CommitAsync falhava.
  • Corrigido o bug em que os metadados do rótulo de permissões definidas pelo usuário eram alterados quando a proteção era modificada.

SDK de política

  • Correção de um problema em que o SDK de política não estava se conectando à nuvem especificada.
  • Correção de uma falha quando se usa um AuthDelegate no Android com o wrapper de C.

SDK de proteção

  • Correção de uma falha quando se usa um AuthDelegate no Android com o wrapper de C.

Atualizações de plataforma e dependência

  • Correção de um problema em que o TLS 1.2 não era aceito quando "permitir qualquer versão do TLS" foi configurado.
  • Correção de um problema em que os detalhes da exceção não eram exibidos no Android.
  • Atualizado o OpenSSL de 3.0.15 para 3.4.1.
  • Libxml2 atualizado de 2.12.7 para 2.14.0.
  • Atualização do Zlib da 1.2.13 para a 1.3.1.

Versão 1.14.171

Data de lançamento: 8 de abril de 2025

SDK de arquivos

  • Correção de um problema em que caracteres Unicode em mensagens HTML não estavam renderizando corretamente.

Atualizações de plataforma e dependência

  • Atualizado o OpenSSL de 3.0.15 para 3.4.1.
  • Libxml2 atualizado de 2.12.7 para 2.14.0.
  • Atualização do Zlib da 1.2.13 para a 1.3.1.

Versão 1.16.126

Data de lançamento: 13 de dezembro de 2024

SDK de arquivos

  • Adicionado suporte para rotular MP4s sem converter em um pfile. Aplicar um rótulo de proteção resulta em uma saída pfile.
  • Adição do recurso para descriptografar arquivos .MSG aninhados com ContainerDecryptionOption::All. Após 10 descriptografias do mesmo arquivo .MSG aninhado, é gerada uma exceção mip::BadInputError("Profundidade máxima alcançada em anexos msg aninhados").
  • Adição do suporte para o SDK de Arquivo do Arm64 para Windows.
  • Correção de um problema em que as informações de Criptografia de Chave Dupla estavam ausentes quando as permissões de User-Defined foram modificadas.
  • Correção de um bug quando a proteção de remoção falhou para tamanhos de arquivo maiores que 500 MB.
  • Corrigido um erro em que o estilo do texto em arquivos .MSG não era preservado durante a descriptografia.
  • Correção de um problema em que o SDK não gerava uma exceção quando os aplicativos tentavam proteção para arquivos inacessíveis.

SDK de proteção

  • Correção de uma falha intermitente na publicação offline.

Atualizações de plataforma e dependência

  • Correção de um problema em que o TLS 1.2 não era aceito, apesar de definir configurações para permitir qualquer versão do TLS.

Alterações críticas

  • Atualização de CommitAsync para remover os arquivos de saída em vez de um arquivo vazio após uma falha.
  • Atualização da API LoadUserCert de LoadUserCertSync LoadUserCert está obsoleto.
  • Exemplo atualizado de wrappers Java para utilizar o MSAL na autenticação.

Versão 1.15.107

Data de lançamento: 14 de outubro de 2024

SDK de arquivos

  • Corrigido um problema em que os arquivos .msg não podiam ser criptografados se o HTML do e-mail contivesse emojis. Ative esse recurso usando FlightingFeature::PriopritizeHtmlInMsgs, que está desativado por padrão.
  • Adicionado suporte para os padrões de codificação de texto KOI8-R, KOI8-U, ISO8859 (1, 3, 4, 6, 7, 8, 9, 13 e 15), HZ-GB2312, GB18030 e ISO-2022-JP.

Atualizações de plataforma e dependência

  • O SDK do MIP em .NET para todas as versões do Ubuntu agora está disponível em geral.
  • Adicionado suporte para Ubuntu 24.04.
  • Fim do suporte para Debian 10 e RHEL 7.
  • Atualizado o uriparser de 0.9.7 para 0.9.8.
  • Corrigido um problema com caches da licença de usuário final para proprietários de arquivos.
  • Exceções aprimoradas no iOS para incluir mais detalhes do erro.
  • Melhoria nas mensagens de erro de NoPermissionError durante a descriptografia de arquivo com ExtendedErrorInfo. Desative esse recurso desativando FlightingFeature::EnableExtendedErrors.

Versão 1.14.150

Data de lançamento: 14 de outubro de 2024

Atualizações de plataforma e dependência

  • Atualizado o uriparser de 0.9.7 para 0.9.8.

Versão 1.13.234

Data de lançamento: 14 de outubro de 2024

Atualizações de plataforma e dependência

  • Atualizado o uriparser de 0.9.7 para 0.9.8.
  • Atualização do Azure Identity de 1.11.0 para 1.11.4.
  • Correção de uma falha quando se adquire os dados de direitos de licença no wrapper de .NET.

Versão 1.15.94

Data de lançamento: 12 de agosto de 2024

SDK de arquivos

  • Correção de um problema em que falha ao salvar arquivos PDF com rótulos de proteção no Office.
  • Adição de exceção quando ocorre falha na rotulação de .zip.pfile para rótulos sem proteção.
  • Correção de um problema em que a descriptografia falhava em arquivos protegidos com o SDK do MIP versão 1.11 e inferior.

Atualizações de plataforma e dependência

  • Correção de uma falha quando se adquire os dados de direitos de licença no wrapper de .NET.
  • Atualização do Azure Identity de 1.11.0 para 1.11.4.

Versão 1.14.148

Data de lançamento: 12 de agosto de 2024

Atualizações de plataforma e dependência

  • Correção de uma falha quando se adquire os dados de direitos de licença no wrapper de .NET.
  • Atualização do Azure Identity de 1.11.0 para 1.11.4.

Versão 1.13.229

Data de lançamento: 12 de julho de 2024

SDK de arquivos

  • Correção de um problema em que PDFs linearizados estavam corrompidos.
  • Corrigido um problema em que a descriptografia falhava em arquivos rotulados com o MIP SDK 1.10/1.11.
  • Correção de um problema de segurança no analisador de PDF.

Versão 1.15.86

Data de lançamento: 5 de julho de 2024

SDK de arquivos

  • Correção de um problema em que PDFs linearizados estavam corrompidos.
  • Corrigido um problema em que a descriptografia de arquivos com rótulo falhava com o SDK do MIP 1.10/1.11.
  • Corrigido um bug de segurança no analisador de PDF.
  • Adicionado suporte para codificação de texto da Europa Central para proteger o e-mail RTF.

Atualizações de plataforma e dependência

  • Adicionado suporte para mascarar mais campos de PII, como engineIDs e caminhos de arquivo.
  • Adicionado suporte para adições de API C que permitem uma melhor configuração de descritores de proteção para permissões definidas pelo usuário e proteção do AdHoc.
  • Adicionado o suporte para TLS 1.3.

Versão 1.14.146

Data de lançamento: 5 de julho de 2024

SDK de arquivos

  • Correção de um problema em que PDFs linearizados estavam corrompidos.
  • Correção de um problema em que a descriptografia de arquivos rotulados falhava com o SDK do MIP 1.10/1.11.
  • Corrigido um bug de segurança no analisador de PDF.

Atualizações de plataforma e dependência

  • Adicionado o mascaramento de PII para os campos engineIDs e caminhos de arquivo.

Versão 1.14.128

Data de lançamento: 27 de fevereiro de 2024

SDK de arquivos

  • Corrigido um bug com caracteres unicode ao consumir arquivos MSG.
  • Correção de um problema em que os caracteres Hangul não eram exibidos corretamente em arquivos MSG.
  • Corrigido um bug em que os fluxos não eram alinhados corretamente quando não eram terminados por nulo.

SDK de proteção

  • Adicionado suporte para pré-licenças JSON codificadas em UTF16.
  • Adição de verificação de pré-licenças expiradas com FlightingFeature::PreLicenseValidityCheck, com o padrão verdadeiro.
  • Atualização de EUL e pré-licenças para expor o nome e a descrição do rótulo.

SDK de política

  • Atualizou a URL de sincronização de políticas para a nuvem da China.

Atualizações de locatários herdados que migraram do AD RMS para o RMS

  • Corrigido um problema em que LoadUserCert gerava um erro.
  • Correção de um problema que causava licenças de publicação offline corrompidas, que não podiam ser consumidas para descriptografar o conteúdo.
  • Corrigido um bug em que as pré-licenças legadas de locatário não eram aceitas pelo SDK de proteção.

Atualizações de plataforma e dependência

  • Analisador de URI atualizado para 0.9.7.
  • Atualização do SQLite3 para 3.45.1.
  • Libgsf atualizado para 1.14.52.

Alterações críticas

  • Corrigido o caminho para o arquivo de configuração de applicationPath/mipmip_config.json para applicationPath/mip/mip_config.json. Os aplicativos que usam um arquivo de configuração para mascarar PII em arquivos de log devem atualizar o local do arquivo.

Versão 1.13.209

Data de lançamento: 27 de fevereiro de 2024

SDK de arquivos

  • Corrigido um bug com caracteres unicode ao consumir arquivos MSG.
  • Correção de um problema em que os caracteres Hangul não eram exibidos corretamente em arquivos MSG.
  • Corrigido um bug em que os fluxos não eram alinhados corretamente quando não eram terminados por nulo.

SDK de política

  • Atualizou a URL de sincronização de políticas para a nuvem da China.

SDK de proteção

  • Correção de um problema em que as licenças eram armazenadas em cache sem emails do proprietário.
  • Adicionado suporte para pré-licenças JSON codificadas em UTF16.
  • Adição de verificação de pré-licenças expiradas com FlightingFeature::PreLicenseValidityCheck, com o padrão verdadeiro.
  • Licenças de usuário final (EULs) e pré-licenças atualizadas para expor o nome e a descrição do rótulo.

Atualizações para inquilinos legados que migraram do Active Directory Rights Management Service (AD RMS) para o Rights Management Service (RMS)

  • Corrigido um problema em que LoadUserCert gerava um erro.
  • Correção de um problema que causava licenças de publicação offline corrompidas, que não podiam ser consumidas para descriptografar o conteúdo.
  • Corrigido o bug em que as pré-licenças de um locatário legado não eram aceitas pelo SDK de proteção.

Atualizações de plataforma e dependência

  • OpenSSL atualizado para 1.1.1-w de 1.1.1-r.
  • Analisador de URI atualizado para 0.9.7.
  • Atualização do SQLite3 para 3.45.1.
  • Libgsf atualizado para 1.14.52.

Alterações críticas

  • Corrigido o caminho para o arquivo de configuração de applicationPath/mipmip_config.json para applicationPath/mip/mip_config.json. Os aplicativos que usam um arquivo de configuração para mascarar o PII (Informações pessoais identificáveis) nos arquivos de log devem atualizar o local do arquivo.

Versão 1.14.108

Data de lançamento: 27 de outubro de 2023

SDK de arquivos

  • Corrigido um bug em que .doc arquivos criptografados pelo SharePoint Online (SPO) tinham metadados inválidos.
  • Corrigido um problema em que a aplicação de rótulos a arquivos do Office e PDFs assinados invalidava a assinatura e impedia que eles fossem abertos em alguns editores.
  • Corrigido um bug em que a construção de arquivos .msg falhava ao usar a MAPI (Interface de Programação de Aplicativos de Mensagens) para converter alguns arquivos para .msg formato.
  • Correção de um bug no exemplo do SDK do arquivo MIP em que os arquivos de saída corrompidos não eram excluídos em caso de falha.
  • Corrigido um problema em que a descriptografia de arquivos PDF não removia todos os metadados de rótulos.
  • Corrigido um bug em que criptografar arquivos .msg com um corpo vazio gerava uma exceção.
  • Corrigido um bug em que .pdf arquivos que começam com comentários são protegidos como .pfiles em vez de arquivos .pdf protegidos nativamente.
  • Correção de um problema em que uma exceção era gerada ao atualizar um rótulo inativo com o mesmo rótulo.
  • Adição de exceções quando se tenta usar as operações de política em um mecanismo de arquivos somente para proteção.

SDK de política

  • Altere as URLs do serviço de política para direcionar os pontos de extremidade globais para as nuvens soberanas dos ambientes DoD, GCC-High e China.

SDK de proteção

  • Corrigido um bug em que anexos não protegidos por RMS não geravam um erro quando a descriptografia ou a inspeção falhavam para arquivos .msg.
  • Corrigido um erro em que EULs válidos por menos de um dia não eram mantidos em cache.
  • Adicionado suporte para preservar dados criptografados do aplicativo ao usar a proteção de modelo.
  • Adicionado suporte para extrair dados de modelo serializados (Windows/Linux/macOS).
    • Habilite usando: GetTemplatesSettings::SetFetchSerializedTemplates.
    • Recupere usando TemplateDescriptor::GetSerializedTemplate().
  • Corrigido um bug em que o repositório de certificados do usuário não era criptografado.
  • Corrigido um bug em que os dados assinados do aplicativo não eram fornecidos consistentemente entre publicação e consumo.

Atualizações de plataforma e dependência

  • Atualização para Open SSL 3.0 para conformidade com FIPS.
  • Correção de um problema em que alguns eventos de auditoria foram descartados.
  • Foi exposto um sinalizador para controlar o temporizador de desligamento máximo para a limpeza de cache 1DS.
  • Adicionado suporte para mascaramento de PII em arquivos de log. Por padrão, a PII não é mascarada.
    • Defina AllowPii como false em mip_config.json para mascarar PII com um arquivo de configuração. O arquivo de configuração está localizado em mipConfiguration-GetPath>()/mip.
  • Adicionado suporte para criptografia CBC de arquivos do Office por padrão.
  • Correção de exceção no Android em relação ao caminho de localização do recurso.

Alterações críticas

  • O código de erro para arquivos PDF e do Office assinados foi alterado de Mip::FileIOError para Mip::NotSupportedError.
  • As propriedades do evento de auditoria armazenam o tipo de PII em vez de Nenhum por padrão. Os delegados de auditoria personalizados que esperam que o PII seja nulo requerem atualizações.
  • Os dados do aplicativo assinado retornam as entradas extras dos documentos protegidos por DKE durante a publicação.
  • Os arquivos do Office usam criptografia CBC por padrão. Para reverter isso, defina FlightingFeature::UseCbcForOfficeFileEncryption como false.

Versão 1.13.187

Data de lançamento: 15 de agosto de 2023

Correções de erros

  • O SDK de MIP agora oculta os símbolos de OpenSSL estaticamente vinculado no Linux.
  • Correção de um bug em que arquivos compostos que não eram do Office usavam AES128-ECB se o sinalizador de algoritmo herdado estivesse definido. Esses arquivos devem usar AES256-CBC e ignorar o sinalizador de algoritmos legados.
  • Aumento da prioridade de envio de eventos de auditoria para o nível mais alto, garantindo que os eventos de auditoria sejam enviados ao endpoint de auditoria com mais frequência.

Versão 1.13.182

Data de lançamento: 27 de julho de 2023

Correções de erros

  • Corrigido um problema ao remover a proteção dos arquivos MSG quando os anexos estão protegidos com tecnologia que não seja RMS. Um aviso é gerado em vez de uma exceção.

Versão 1.13.176

Data de lançamento: 10 de junho de 2023

Correções de erros

  • Correção de um problema em que CommitAsync() não retornava em condições de espaço em disco baixo.
  • Correção de um problema em que a criação de arquivos FileHandler para xlsb falhava quando o arquivo era baixado do SharePoint.

Atualizações de plataforma e dependência

  • Adicionado suporte para Ubuntu 22.04.
  • Adicionado suporte para Debian 11.
  • Adicionado suporte para RedHat Enterprise Linux 9.
  • Suporte para Ubuntu 18.04 removido.
  • Removido o suporte para o Debian 9.

Versão 1.13.161

Data de lançamento: 28 de março de 2023

Correções de erros

  • Corrigido um problema de assinatura no pacote NuGet do .NET.
  • Foi corrigido um problema em ProtectionProfile em que a configuração de publicação offline estava ausente.

Versão 1.13.158

Data de lançamento: 17 de março de 2023

SDK de arquivos

  • Adição de um sinalizador de recurso que permite que o SDK de MIP publique arquivos e emails do Office no modo de encadeamento de blocos de criptografia.
    • Defina com o recurso de pré-lançamento UseCBCForOfficeFileEncryption até MipConfiguration.FeatureSettingsOverride().
  • Correção de problemas com o consumo de arquivos e emails do Office protegidos pelo modo CBC (encadeamento de blocos de criptografia). O SDK MIP agora pode consumir conteúdo protegido do modo CBC gerado pelo Office.

SDK de proteção

  • Adicionado suporte de visualização para publicação offline no SDK de proteção.
    • Habilite a proteção offline definindo ProtectionProfileSettings.OfflinePublishingtrue em C++ e .NET.

Alterações críticas

  • PublishingSettings para a republicação exige uma licença de publicação serializada ou um ProtectionHandler no construtor em vez de poder definir um ou os dois depois da construção.
  • Removido SetPublishingLicenseForRepublish e SetProtectionHandlerForRepublish.
  • ProtectionDescriptorBuilder usa SetLabelInfo em vez de SetLabelId
  • Insert método em mip::StorageDelegate e IStorageDelegate é substituído por InsertOrReplace.

Atualização crítica

O SDK de MIP 1.13 apresenta o suporte para consumir arquivos e emails protegidos com AES256-CBC gerados pelos aplicativos habilitados Word, Excel, PowerPoint, Outlook, Exchange Online, SharePoint Online e SDK de MIP que optarem pela publicação CBC. Se o aplicativo usar o SDK de Arquivo para consumir qualquer um desses formatos, é importante atualizar o aplicativo para o SDK de MIP 1.13. No segundo semestre de 2023, Microsoft 365 Apps, Exchange Online e SharePoint Online começam a proteger com AES256-CBC por padrão. Os aplicativos que não atualizam falham ao descriptografar corretamente arquivos e emails.

O SDK MIP 1.13 continua a publicar documentos e emails do Office usando AES128 no modo ECB (livro de códigos eletrônico). O MIP SDK 1.14 habilita a publicação AES256-CBC por padrão. Se você quiser testar a publicação do CBC com antecedência, habilite a UseCBCForOfficeFileEncryption flag de recurso por meio de MipConfiguration.FeatureSettingsOverride().

Os aplicativos que não forem atualizados para o SDK da MIP 1.13 podem começar a encontrar uma exceção com os seguintes detalhes: Something bad happened: AESCryptoWriter: Failed to transform final block.

Versão 1.12.101

Data de lançamento: 18 de novembro de 2022

SDK de arquivos

  • Corrigido um problema em que a inclusão de caracteres especiais no nome do rótulo podia fazer com que uma mensagem não pudesse ser aberta no Microsoft Outlook.
  • Corrigido um bug quando a proteção era removida para rótulos inativos.
  • Correção de um bug em que alterar as permissões do rótulo com a coautoria habilitada gerava documentos protegidos que não podiam ser abertos.
  • Atualizado libgsf para 1.14.50 e LibXML2 para 2.9.14.
  • Atualizados os Extreme Memory Profiles (XMP) para usar a versão 2.4.7

SDK de política

  • Correção de um bug com exceção de metadados inválidos para ComputeActions.

SDK de proteção

  • Adição de acessadores para recuperar as URLs da intranet e da extranet de TenantInformation.
  • Exposição de uma API C para adquirir as licenças de delegação.
  • Correção de um bug para metadados de rótulo pai inconsistentes quando os rótulos filho são removidos.
  • Corrigido um bug de cache de autenticação para CreateFromLicenseType.
  • Correção de um problema em que o mecanismo sendo limpo durante uma chamada GetTemplatesAsync() causava uma falha.
  • Adição de GetLicenseRightsData para obter user/objectId/puid e direitos da licença de publicação.
  • Corrigido um bug em que tags de descritor não podiam ser adicionadas a licenças se não existissem descritores.
  • Corrigida uma falha do .NET no Linux.
  • Correção de um problema de espaço em disco; um erro agora é relatado quando o MIP fica sem espaço em disco ao proteger o conteúdo.
  • Dependência do OpenSSL atualizada para 1.1.1-r.1.

Atualizações de plataforma e dependência

  • Corrigido um bug em que as nuvens não eram tratadas de forma consistente.
  • Adição de suporte para a visualização do recurso de publicação.
  • Corrigido um bug em que os wrappers não tinham nuvem de telemetria para cenários de nuvem soberana.
  • Remoção de PII da telemetria de auditoria de builds de depuração.

Alterações críticas

  • Se ambos usersWithDefaultRights e additionalUsersAndRights estiverem vazios, CreateFromLicenseType lança um BadInputError.
  • Adicionados novos métodos GetLicenseRightsData e GetLicenseRightsDataAsync na classe ProtectionEngine.

Versão 1.12.61

Data de lançamento: 9 de junho de 2022

SDK de arquivos

  • O SDK de arquivos agora oferece suporte à delimitação de dados por meio de FileEngineSettings.DataBoundary.
  • Corrigido um bug em GetCodePage no MsgInspector.
  • Correção de bug em que BodyType sempre retornava TXT.MsgInspector
  • Corrigido um bug no wrapper Java onde usar UserRoles lançava java.util.Collections$UnmodifiableCollection não podia ser convertido para java.util.List exceção.
  • Corrigido um bug ao descriptografar arquivos de texto >2 GB com GetDecryptedTemporaryStreamAsync().

SDK de política

  • O SDK de Política agora oferece suporte à fronteira de dados por meio de PolicyEngineSettings.DataBoundary.
  • Corrigido um bug em que, em determinadas condições, as alterações de política resultavam em uma falha.
  • Correção de um problema em que os rótulos Encrypt Only com proteção DKE não eram filtrados quando deveriam ser.

SDK de proteção

  • Versão prévia: adicionado suporte para proteção offline.
    • Habilite a proteção offline definindo ProtectionProfile.OfflinePublishing como true ao criar um ProtectionProfile.
    • Os modelos de cache exigem a configuração ProtectionEngineSettings.SetTemplateRefreshArgs(std::chrono::hours) (C++) ou ProtectionEngineSettings.TemplateRefreshArgs (.NET) para habilitar o cache do modelo de proteção.
  • O SDK de proteção agora dá suporte ao limite de dados por meio de ProtectionEngineSettings.DataBoundary

Alterações críticas

  • FileHandler.SetLabel() A API não dá mais suporte a arquivos rpmsg como entrada.
  • Passando um arquivo MSG de texto puro para o MsgInspector resulta em um NotSupportedError.
  • MsgInspector não tenta mais descriptografar anexos que fazem parte do arquivo message.rpmsg .
  • MsgInspector retornará um arquivo MSG totalmente funcional se o arquivo message.rpmsg tiver anexos MSG. A FileHandler.RemoveProtection API pode descriptografar esses arquivos MSG.
  • TelemetryDelegatee AuditDelegate o método WriteEvent agora requer um segundo parâmetro, EventContext. A EventContext classe expõe informações sobre a nuvem de destino e o limite de dados para o evento.

Atualizações de plataforma e dependência

  • Adicionado suporte em todos os três SDKs para definir o limite de dados da União Europeia.
    • Quando DataBoundary é definido como UE, todos os eventos de telemetria e auditoria fluem diretamente para a região da UE.
    • A configuração DataBoundary para qualquer outra região resulta na emissão de dados para o ponto de entrada de serviço mais próximo.
  • Atualizado libxml2 para 2.9.13.
  • Corrigida uma falha específica do Android.
  • Correção de um problema em que o SDK não estava respeitando totalmente o nível de log

Versão 1.11.96

Data de lançamento: 20 de julho de 2022

SDK de arquivos

  • Correção de um bug em tipos de arquivos grandes MemoryStream para GetDecryptedTemporaryStream
  • Correção de um bug que causava perda de dados durante a criptografia de PDF devido a uma falha por excedente de pilha
    • Com OptimizePdfMemory, se /Info for ObjStm que contém um objeto indireto interno, ele retornará PDFPARSER_ERROR_FORMAT em vez de excedente de pilha.
  • Corrigido um bug em que as bibliotecas MIP de suporte não eram carregadas em Java
  • Corrigimos um bug em que arquivos MSG com anexos de arquivo MSG protegidos podiam ser corrompidos quando a extensão rpmsg tinha um terminador nulo à direita.
  • Correção de uma falha em arquivos MSG com anexos de link
  • Corrigido um bug em que a sequência de aplicação de rótulos não era respeitada corretamente ao usar o aplicativo Cliente Unificado da Proteção de Informações do Azure (AIP) para Windows.
  • Corrigido um bug em que RemoveProtection lança a exceção LabelDisabledError informando que o rótulo inativo foi especificado
  • Corrigido um bug em que DeleteLabel lançava uma exceção de metadados inválidos enquanto o arquivo de entrada estava protegido por templateID.

SDK de política

  • Corrigido um problema em que uma alteração de política causava uma falha devido à incompatibilidade entre os mapas nativo e gerenciado durante a chamada OnPolicyChanged

Alterações de plataforma e dependência

  • Correção de um problema em que os dados de telemetria e auditoria podem não ser enviados ao usar o C# ou Java interface
  • Corrigido um bug em que nuvens com a mesma URL base não eram tratadas de forma consistente
  • Atualização de versão do Adobe XMP para 6.0.0 e correção de segurança enviada por push para vulnerabilidade expat na função storeAtts() 2.1.0
  • Exposição de sinalizador EnableAuditAndTelemetryForSovereignClouds para .NET
  • Correção de uma falha causada pela integridade do fluxo de controle executando as verificações de segurança vtable
    • Desativou essas verificações porque o Android não oferece suporte a verificações vtable entre bibliotecas
  • Correção de um bug no delegado de criptografia do Windows para uso após a vulnerabilidade gratuita. Aplica-se somente a aplicativos definidos EnableFipsValidatedCryptography no Windows
    • O vetor hashObject estava sendo limpo antes do identificador e causou um uso após a liberação quando o identificador foi limpo no destruidor de BcryptData

Versão 1.11.64

Data de lançamento: 12 de janeiro de 2022

SDK de arquivos

  • Corrigido um bug em arquivos MSG encapsulados em pfile usando o formato de conteúdo incorreto.
  • Corrigido um bug em que a Inspector classe causava uma falha nos rpmsg arquivos.
  • Corrigido um bug em que o SDK não estava compactando corretamente arquivos com mais de 4 GB, resultando em possível corrupção.

SDK de proteção

  • Correção de um problema relacionado à busca de registros DNS (Sistema de Nomes de Domínio) para O AD RMS no iOS.

Atualizações de plataforma e dependência

  • Atualizei o log4j em aplicativos de amostra Java.
  • ABI arm64 renomeada no Android para arm64-v8a

Versão 1.11.53

Data de lançamento: 17 de novembro de 2021

SDK de arquivos

  • Correção de bug em que IsModified() em mip::FileHandler retorna false em vez de true para um arquivo .MSG de texto não criptografado com anexo protegido.
  • Corrigido um erro relacionado a problemas de formatação XML nos metadados que, em determinados casos, quebravam rótulos sem proteção.

SDK de política

  • Melhorias introduzidas para evitar deadlock na Sincronização de Políticas.

Alterações críticas

  • Anteriormente, quando um rótulo era configurado para "Não encaminhar" ou "Somente criptografar" e uma ação de proteção de arquivo, o SDK da MIP não exibia o rótulo na lista de rótulos para o tipo de conteúdo de arquivo.

    • O SDK é atualizado para corrigir esse problema. O rótulo não é filtrado em nenhum dos casos quando configurado para aplicar a ambos os tipos de conteúdo.
    • Essa alteração não afeta os rótulos em que a ação de proteção era "Apenas criptografar" ou "Não encaminhar".
    • Por fim, ele não afeta os rótulos destinados a arquivos em que a ação foi predefinida ou proteção definida pelo usuário.
  • Exceções existentes atualizadas para melhor tratamento de cenários específicos. O item a seguir apareceu anteriormente como NetworkError::Category::FailureResponseCode

    • NetworkError::Category::ServiceUnavailable
      • Nova categoria de exceção (NetworkError).
      • Retorna quando o serviço dependente não está disponível.
      • O serviço retorna 503
    • NetworkError::Category::Throttled
      • Exceção: NetworkError
      • Retorna quando são feitas muitas solicitações ao serviço dependente.
      • O serviço retorna o erro 429

Atualizações de plataforma e dependência

  • Dependências do SDK atualizadas para as versões mais recentes
  • Todos os binários do SDK da MIP são atualizados para usar a versão 2.9.12 da biblioteca estática libxml2 e da biblioteca dinâmica libgsf para Android e Windows.
  • Introdução do suporte a proxy para Linux. Exemplo de como definir o proxy abaixo.
export HTTP_PROXY="http://10.10.10.10:8080"

Versão 1.10.115

Data de lançamento 25 de fevereiro de 2022

  • Corrigido um bug em arquivos MSG encapsulados em pfile usando o formato de conteúdo incorreto.
  • Corrigido um bug em que a Inspector classe causava uma falha nos rpmsg arquivos.
  • Corrigido um bug em que o SDK não estava compactando corretamente arquivos com mais de 4 GB, resultando em possível corrupção.
  • Correção de um bug na detecção de arquivos MSG protegidos. Os arquivos podem estar protegidos, mas o SDK os trata como texto sem formatação.

Versão 1.10.98

Data de lançamento 29 de setembro de 2021

Correções de erros

  • Corrigido um bug no iOS em que o bitcode não estava habilitado

Versão 1.10.97

Data de lançamento: 17 de setembro de 2021

Correções de erros

  • Corrigido um bug em que os anexos em arquivos MSG eram corrompidos ao aplicar um rótulo de proteção ao arquivo MSG.

Versão 1.10.93

Data de lançamento: 23 de agosto de 2021

Alterações gerais

  • Adição da classe MipConfiguration.
    • Essa classe controla as definições de configuração definidas anteriormente diretamente no MipContext.
    • Delegados, local de registro etc. são definidos como parte desse objeto.
    • Examine os Conceitos de MipContext para obter detalhes.
  • O construtor MipContext::Create() é alterado para aceitar somente o novo objeto MipConfiguration.
  • Todas as configurações do mecanismo são padronizadas para a localidade en-US se a propriedade .Locale estiver definida como null.
  • Corrigido um problema em que o SDK não estava aplicando integralmente as configurações do nível de log.

SDK de arquivos

  • Adicionado suporte para leitura e gravação de rótulos em arquivos MSG.
    • O padrão para rotular esses arquivos é o mesmo de qualquer outro tipo de arquivo.
    • A configuração personalizada enable_msg_file_type deve ser definida para habilitar o tratamento de arquivos MSG.
    • Os anexos são protegidos, mas não rotulados.
    • Revise Definir enable_msg_file_type e usar o File SDK para proteger o arquivo .msg para obter detalhes sobre a configuração personalizada.
  • FileHandler::IsLabeledOrProtected() agora suporta arquivos MSG.
  • O SDK de Arquivo agora fornece suporte à descriptografia de anexos protegidos em arquivos MSG desprotegidos.
    • Essa alteração se aplica somente a arquivos e não a contêineres, como arquivos MSG ou ZIP.
  • Adicionado novo método estático mip::FileHandler::GetFileStatus()
    • Essa função retorna um novo mip::FileStatus objeto que indica se o arquivo está rotulado, protegido ou contém objetos protegidos.
    • FileStatus expõe três propriedades: IsProtected, IsLabelede ContainsProtectedObjects.
    • ContainsProtectedObjects é útil para arquivos MSG com anexos protegidos.
  • Ao chamar FileHandler::RemoveProtection() um arquivo MSG de texto simples com anexos protegidos, a proteção é removida dos anexos.
  • Corrigido um bug em que IProtectionHandler era destruído ao chamar IFileHandler.SetProtection() em um loop. Não há mais a destruição de IProtectionHandler após o uso.

SDK de política

  • A variável ${Event.DateTime} de marcação de conteúdo agora é padronizada para a hora local em vez de UTC.
    • Essa variável pode ser definida para o padrão anterior usando o recurso de versão de pré-lançamento EventDateTimeTokenUseUtc.
  • Corrigido o bug em que IsActive não retornava os mesmos valores dentro de um PolicyHandler como era ao recuperar rótulos de um PolicyEngine.

SDK de proteção

  • Adicionados novos tipos de erro mais específicos que aparecem tanto no SDK de Proteção quanto no SDK de Arquivo. Consulte a seção Alterações significativas.

Alterações críticas

  • Introduzidas novas configurações personalizadas para controlar as configurações de auditoria padrão.
    • Adicionada nova propriedade em audit Delegate para definir as configurações de auditoria.
    • LabelGroupData A classe não tem IsAuditEnabled() mais método.
    • Em vez disso, use GetEnableAuditSetting() para obter as configurações de EnableAudit na política após o carregamento da política. As configurações de auditoria padrão são Undefined em oposição às true nas versões mais antigas.
  • Permitir passar o fuso horário do documento para ComputeActions para permitir que as ações sejam calculadas como se o documento existisse em um fuso horário diferente do computador que aplica o rótulo.
    • Útil para quando os rótulos são aplicados em nome de um usuário por meio de um serviço, em que a hora local do servidor não é necessariamente a mesma que a do usuário.
    • Em vez de retornar o ${Event.DateTime} no formato UTC, agora usamos a hora local como padrão sem exibir o fuso horário.
  • Exceções existentes atualizadas para melhor tratamento de cenários específicos.
    • NoPermissionsError::Category::NotPremiumLicenseUser
      • Anteriormente aparecia como NoPermissionsError::Category::AccessDenied
      • Causado por um usuário não licenciado tentando revogar conteúdo protegido.
    • NoPermissionsError::Category::NotOwner
      • Anteriormente aparecia como NoPermissionsError::Category::AccessDenied
      • Causado por um usuário tentando revogar um documento que não é seu.
    • ServiceDisabledError::Extent::Tenant
      • Anteriormente aparecia como ServiceDisabledError::Extent::User
      • Retorna quando o serviço Azure Rights Management do destino está desabilitado.
    • NoPermissionsError::Category::AccessDenied
      • Anteriormente aparecia como NetworkError::Category::FailureResponseCode
      • Retorna quando o usuário não tem direitos para publicar devido a controles de licenciamento ou integração.
    • BadInputError::ErrorCode::DoubleKey
      • Anteriormente aparecia como NetworkError::Category::FailureResponseCode
      • Retornado quando os parâmetros de criptografia de chave dupla (DKE) estão incorretos.
    • CustomerKeyUnavailableError
      • Nova exceção.
      • Retorna quando o locatário está configurado para BYOK (Bring Your Own Key) e a chave não pode ser acessada.
      • O serviço retorna HTTP424.
    • NetworkError::Category::FunctionNotImplemented
      • Nova exceção.
      • Retornado quando o serviço retornou HTTP501 (Não Implementado).
    • O item a seguir apareceu anteriormente como NetworkError::Category::FailureResponseCode
      • TemplateArchivedError: o aplicativo tentou aplicar uma ID de modelo que foi arquivada.
      • LicenseNotRegisteredError: a licença de publicação de documentos não está registrada para revogação.
      • NoPermissionsError::Category::UserNotFound: o usuário fornecido não existe no locatário de destino.
      • NoPermissionsError::Category::InvalidEmail: Um endereço de e-mail inválido foi fornecido.
      • NoPermissionsError::Category::AccessDenied: a identidade fornecida não é um entidade reconhecida pelo RMS ou não é um delegante válido.
      • BadInputError::ErrorCode::LicenseNotTrusted: a licença de publicação fornecida não é de um editor confiável. (Não na API C)
      • BadInputError::ErrorCode::ParameterParsing: Retornado por vários problemas de análise de XML, JSON ou de outros tipos (não disponível na API C)

Atualizações de plataforma e dependência

  • Adicionado suporte para Debian 10.
  • Adicionado suporte para Ubuntu 20.04.

Versão 1.9.90

Data de lançamento: 7 de julho de 2021

Alterações gerais

  • Corrigido um bug no SDK de Arquivo onde não era possível descriptografar documentos herdados no Windows de 32 bits.
  • Habilite o bitcode em compilações do iOS.
  • Ubuntu 16.04 atualizado para usar OpenSSL 1.1.1k.
  • Correção de um problema ao descriptografar arquivos MSG que as ferramentas de Descoberta Eletrônica de terceiros manipulavam anteriormente.

Versão 1.9.78

Data de lançamento: 29 de abril de 2021

Alterações gerais

  • Adicionado um novo parâmetro que permite que os desenvolvedores forneçam IDs de cenário personalizadas para correlacionar erros.
    • Se um erro do lado do serviço exigir um caso de suporte, essa ID de cenário poderá ajudar na solução de problemas.
    • SDK de Arquivos: Ao criar um FileHandler, defina o applicationScenarioID por meio de FileExecutionState
    • SDK de proteção: várias APIs agora suportam a passagem da ID de cenário.
      • mip::ProtectionCommonSettings(mApplicationScenarioId)
      • mip::GetTemplatesSettings::CreateGetTemplatesSettings()->SetApplicationScenarioId()
      • mip::ProtectionHandler::PublishingSettings()->SetApplicationScenarioId()
      • mip::ProtectionHandler::ConsumptionSettings()->SetApplicationScenarioId()
      • mip::PolicyEngine::SetSessionId()
  • Adição das verificações de consentimento e enumeração Workload.
    • Adicionado HasWorkloadConsent() e GetWorkloadConsent() para FileEngine e PolicyEngine.
  • Adicionadas APIs síncronas ao wrapper .NET do SDK de Políticas: AddEngine(), ListEngines(), DeleteEngine(), UnloadEngine().
  • Adicionado suporte para redirecionamento de solicitações de proteção por meio ProtectionProfile::Settings::AddRedirectionUri()
  • Adicionado um contexto para logger para uso com LoggerDelegate para gravar dados de contexto personalizados nos logs.
    • Essa API pode ser útil para correlacionar eventos de erro em serviços a uma única operação ou eventos.
    • As seguintes APIs oferecem suporte ao fornecimento do contexto do agente:
      • LoggerDelegate::WriteToLogWithContext
      • TaskDispatcherDelegate::DispatchTask ou ExecuteTaskOnIndependentThread
      • 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()

Atualizações de plataforma e dependência

  • Adicionado suporte para CentOS 8
  • Adicionado suporte para estruturas iOS
  • OpenSSL atualizado para a versão 1.1.1k
  • SQLite atualizado para 3.34.1

Alterações críticas

  • Comportamento de auditoria padrão alterado para locatários onde AIP Analytics está habilitado. Além de configurar os componentes do serviço do recurso AIP Analytics, você também deve definir a propriedade EnableAudit como true nas políticas de rótulos de confidencialidade.
  • Função GetApplicationScenarioId() adicionada ao FileExecutionState.
  • Remoção da enumeração ContentFormat.
  • Adição de erros específicos com categorias para um conjunto de erros previamente exposto em NetworkError por meio das cadeias de caracteres/códigos de erro.
    • NoPermissionsError::Category::UserNotFound
    • NoPermissionsError::Category::AccessDenied
    • NoPermissionsError::Category::AccessExpired
    • NoPermissionsError::Category::UserNotFound
  • O serviço de geração Microsoft.RightsManagement.Exceptions.UnknownTenantException agora aparece como ServiceDisabledError em vez de Network Error

Correções de erros

  • Corrigido um vazamento de memória ao chamar mip::FileHandler::IsLabeledOrProtected().
  • Correção de um bug em que uma falha em FileHandler::InspectAsync() chamava o observador incorreto.
  • Corrigido um bug em que o SDK tentava aplicar o formato de rótulo de coautoria a formatos do Office que não dão suporte à coautoria (DOC, PPT, XLS).
  • Correção de uma falha no wrapper de .NET relacionada ao descarte de FileEngine. O objeto PolicyEngine nativo permaneceu presente por algum período e tentaria uma atualização de política, resultando em uma falha.
  • Corrigido um bug em que o SDK ignorava os rótulos aplicados por versões mais antigas da AIP devido à propriedade SiteID ausente.

Versão 1.8.97

Data de lançamento: 24 de fevereiro de 2021

  • Correção de um bug em que os rótulos filho não eram filtrados corretamente e incluíam todos os tipos de rótulos, mesmo que não solicitados.
  • Corrigido um bug onde os rótulos não eram mantidos em RemoveProtection() se os metadados do rótulo estivessem incompletos.

Versão 1.8.94

Data de lançamento: 8 de fevereiro de 2021

  • Correção do bug no pacote NuGet em que as configurações de depuração para projetos C++ implantavam os binários de lançamento. A versão 1.8.86 pode resultar em uma falha com aplicativos C++ nativos. Atualize para 1.8.94 ou posterior.
  • Corrigido um bug em que o mecanismo de política era necessário para remover a proteção.
    • Se o SDK não puder carregar o mecanismo de política e os metadados de rótulo estiverem presentes, o SDK descartará o mecanismo de política se a proteção for removida.
  • Corrigido um bug em que um labelInfo.xml vazio era gerado se o arquivo fosse alterado para outro rótulo protegido.

Versão 1.8.86

Data de lançamento: 13 de janeiro de 2021

Alterações gerais

  • Adicionado suporte para Mac em ARM.
  • Assinados todos os arquivos dylib para Mac.
  • Todas as nuvens são totalmente compatíveis com todos os três SDKs (Software Development Kits).
  • Renomear TelemetryConfiguration para DiagnosticConfiguration.
  • Atualização de MipContext para aceitar DiagnosticConfiguration em vez de TelemetryConfiguration.
  • Exposto o novo AuditDelegate.
  • Várias configurações personalizadas tiveram seus nomes alterados e foram removidas na versão 1.9. Essas configurações personalizadas continuam funcionando em paralelo com seus nomes atualizados na versão 1.8.
Novo nome Nome antigo
is_debug_audit is_debug_telemetry
is_audit_disabled is_built_in_audit_disabled

SDK de arquivos

  • Adicionado suporte para rótulos definidos pelo usuário com criptografia de chave dupla.
  • Adicionada uma API MsgInspector.BodyType para expor o tipo de codificação de corpo para arquivos MSG.
  • Adicionadas APIs para dar suporte à criptografia de chave dupla com permissões definidas pelo usuário.
  • Adição de sinalizador para mip::FileHandler que permite que o chamador desabilite o envio de evento de descoberta de auditoria. Isso corrige um cenário em que o uso da ClassifyAsync() API resultaria em eventos de descoberta duplicados.
  • Correção de bugs em que:
    • Falha na configuração da proteção no arquivo XPS.
    • Os usuários não podem abrir um arquivo após o upload/download do SharePoint Online e a remoção de permissões personalizadas.
    • RemoveProtection() função aceitaria uma entrada message.rpmsg. Agora aceita apenas arquivos MSG.
    • Uma falha que ocorreu ao tentar rastrear ou revogar arquivos desprotegidos.

SDK de política

  • Removido ActionId das propriedades de metadados padrão para garantir a consistência entre documentos rotulados do Microsoft Office e do SharePoint Online.
  • Adicionado suporte para rótulos específicos do Azure Purview.
  • Adição da capacidade de substituir a telemetria e a auditoria por meio de delegados para cada um.
    • O delegado de auditoria fornece a capacidade de enviar eventos de auditoria de AIP para um destino diferente do AIP Analytics ou além do AIP Analytics.
  • Adição de sinalizador para mip::PolicyHandler que permite que o chamador descobrir o envio de evento de descoberta de auditoria. Isso corrige um cenário em que o uso da ClassifyAsync() API resultaria em eventos de descoberta duplicados.
  • Corrigido um bug em que o banco de dados de política criptografado não podia ser aberto em determinados cenários.
  • Exposição de novo AuditDelegate que permite que os desenvolvedores substituam o pipeline de auditoria padrão do SDK de MIP e enviem eventos para sua própria infraestrutura.
  • mip::ClassifierUniqueIdsAndContentFormats e GetContentFormat() agora retorne std::string em vez de mip::ContentFormat. Essa alteração é replicada em wrappers .NET e Java.
  • ContentFormat.Default agora é ContentFormat.File.

SDK de proteção

  • Adição de uma propriedade ProtectionEngineSettings.SetAllowCloudServiceOnly que proíbe conexões com clusters do Active Directory Rights Management Services quando true. Somente ambientes de nuvem são usados.
  • Adicionado suporte para aquisição de licenças de delegação.
    • As licenças de delegação permitem que os serviços busquem uma licença para conteúdo em nome de um usuário.
    • Isso permite que o serviço exiba dados de direitos e descriptografe em nome do usuário sem chamadas extras para o serviço.

Wrapper de Java (Visualização Pública)

  • Adição de suporte para Rastrear e Revogar ao wrapper de Java.
  • Adicionado suporte de fluxo ao Java Wrapper

C API

  • Removido MIP_FLIGHTING_FEATURE_KEEP_PDF_LINEARIZATION flag da API C.

Versão 1.7.147

SDK de arquivos

  • Correção menor de erro para o formato de arquivo .PBIX.

Versão 1.7.145

Data de lançamento: 13 de novembro de 2020

Alterações gerais

  • Pacote NuGet atualizado para copiar dependências somente na atualização, em vez de sempre.
  • A configuração de depuração no .NET usa a versão de lançamento das bibliotecas nativas. Descobrimos que os clientes que implantam soluções .NET no modo de depuração em servidores remotos eram obrigados a instalar o runtime de depuração VC++, o que não é trivial. Se houver a necessidade de depurar em bibliotecas nativas, copie as DLLs do SDK Redistribuível para a pasta do projeto (https://aka.ms/mipsdkbins)
  • Corrigido um bug que estava gerando avisos para projetos do .NET Core.

Versão 1.7.133

Data de lançamento: 23 de setembro de 2020

Mudanças gerais no SDK

  • Visualização pública disponível para Java no Windows e Ubuntu 18.04.
  • Agora há suporte para o .NET Core no Windows.
  • Suporte de visualização pública para .NET Core no Ubuntu 18.04.
  • Registro local aprimorado para armazenamento de chaves quando o tipo de cache de armazenamento é definido como OnDiskEncrypted.
  • Habilitado o controle de funcionalidades no wrapper de .NET
  • Reversão do comportamento de telemetria do SDK para a versão anterior à 1.6. Um conjunto mínimo de eventos de uso agora é enviado quando se opta apenas pela telemetria mínima.

SDK de arquivos

  • Correção da conversão de texto UTF-16/UTF-8 em MSGInspector.
  • Defina um limite de tamanho máximo de arquivo padrão para arquivos protegidos pelo SDK de Arquivos como 6 GB.
    • Alteração feita devido à descriptografia de arquivos grandes que exigem pelo menos o tamanho do arquivo na memória disponível.
    • Pode ser substituído por uma configuração personalizada max_file_size_for_protection.
  • Adicionado suporte para PDFs linearizados.
  • Corrigido um bug em que LastModifiedDate não era atualizado no evento Change.
  • Corrigido um vazamento de memória na criação de PDF protegido.
  • O SDK de arquivos dá suporte à revogação de arquivos rastreados.
  • FileEngine::Settings::SetLabelFilter está obsoleto, use ConfigureFunctionality em vez disso.

SDK de política

  • O SDK da política agora dá suporte a ações de rotulagem Criptografar Somente.
  • Corrigido um bug em que mip::Identity não era carregado corretamente de mecanismos em cache.
  • Correção de um bug em que as comparações de GUID de classificação diferenciavam maiúsculas de minúsculas na API de classificação.
  • Eventos de auditoria enriquecidos adicionando novos campos.

SDK de proteção

  • Corrigido um bug em que mip::Identity não era carregado corretamente de mecanismos em cache.
  • Adicionado registro implícito para licenças de publicação recém-criadas.
  • Adicionado suporte para algoritmos criptográficos usados para dar suporte ao DKE em arquivos do Office.
  • Tornaram-se opcionais os parâmetros documentId e owner.

APIs de C

  • Adição de identidade ausente e APIs de DKE.
  • Remoção de AuthDelegate do perfil para o mecanismo em todos os SDKs.
  • Exemplo de SDK de política de publicação para C
  • MIP_CC_CreateProtectionEngineSettingsWithIdentity está obsoleto, use MIP_CC_CreateProtectionEngineSettingsWithIdentityAndAuthCallback em vez disso.
  • MIP_CC_CreateProtectionEngineSettingsWithEngineId está obsoleto, use MIP_CC_CreateProtectionEngineSettingsWithEngineIdAndAuthCallback em vez disso.
  • MIP_CC_CreateProtectionProfileSettings assinatura alterada.
  • MIP_CC_CreatePolicyEngineSettingsWithIdentity está obsoleto, use MIP_CC_CreatePolicyEngineSettingsWithIdentityAndAuthCallback.
  • MIP_CC_CreatePolicyEngineSettingsWithEngineId está obsoleto, use MIP_CC_CreatePolicyEngineSettingsWithEngineIdAndAuthCallback.
  • MIP_CC_PolicyEngineSettings_SetLabelFilter está obsoleto, use MIP_CC_PolicyEngineSettings_ConfigureFunctionality.
  • MIP_CC_CreatePolicyProfileSettings assinatura alterada.

Alterações críticas

Common

  • TelemetryConfiguration::isTelemetryOptedOut foi renomeado para isMinimalTelemetryEnabled.

C API

  • Atualização de mip_cc_document_state com um novo mip_cc_metadata_version_format contentMetadataVersionFormat de valor

Versão 1.6.103

Data de lançamento: 16 de abril de 2020

Mudanças gerais no SDK

  • TLS 1.2 aplicado para todas as comunicações HTTP não ADRMS.
  • Implementação HTTP do iOS/macOS migrada de NSURLConnection para NSURLSession.
  • Migração do componente de telemetria do iOS do Aria SDK para o 1DS SDK.
  • O componente de telemetria agora usa o HttpDelegate da MIP no iOS, macOS e Linux. (Anteriormente, somente Win32).
  • Segurança de tipo aprimorada para API C.
  • Remoção de AuthDelegate do perfil para o mecanismo nas APIs de C++, C# e Java.
  • Remoção de AuthDelegate do construtor de Profile::Settings para Engine::Settings.
  • Categoria adicionada a NoPolicyError para fornecer mais informações sobre por que a sincronização de política falhou.
  • Método PolicyEngine::GetTenantId adicionado.
  • Adicionado suporte explícito para todas as nuvens.
    • Novo Engine::Settings::SetCloud método para definir a nuvem de destino (GCC High, 21-Vianet, etc.).
    • A chamada de método existente Engine::Settings::SetCloudEndpointBaseUrl não é mais necessária para nuvens reconhecidas.
  • Habilitação de bitcode para binários do iOS.

SDK de arquivos

  • Adição de IFileHandler::InspectAsync aos wrappers de C# e Java
  • Novo suporte por meio de FileProfile::AcquirePolicyAuthToken para disparar a aquisição de token de política a fim de permitir que um aplicativo aqueça seu cache de token.
  • MsgInspector::GetAttachments retorna vector<shared_ptr<MsgAttachmentData>> em vez de vector<unique_ptr<MsgAttachmentData>>
  • Agora, a configuração TelemetryConfiguration::isOptedOut desabilita totalmente a telemetria. Antes, era enviado um conjunto mínimo de telemetria.

SDK de política

  • Novo suporte para acionar a aquisição de token e permitir que um aplicativo preaqueça seu cache de token por meio de PolicyProfile::AcquireAuthToken.
  • Os rótulos Hold Your Own Key (HYOK) são filtrados por padrão.
  • Os metadados associados a rótulos excluídos agora são removidos.
  • Se ocorrer uma incompatibilidade entre a política de rótulo armazenada em cache e a política de confidencialidade, o cache da política será limpo.
  • Novo suporte para metadados versionados:
    • Um formato de arquivo pode alterar a localização e o formato de seus metadados de rótulos. Nesse caso, um aplicativo deve fornecer à MIP todos os metadados e a MIP determina quais metadados são "verdadeiros".
    • ContentLabel::GetExtendedProperties agora retorna vector<MetadataEntry> em vez de vector<pair<string, string>>.
    • MetadataAction::GetMetadataToAdd agora retorna vector<MetadataEntry> em vez de vector<pair<string, string>>.
    • ExecutionState::GetContentMetadata agora deve retornar vector<MetadataEntry> em vez de vector<pair<string, string>>.
    • ExecutionState::GetContentMetadataVersion deve retornar a versão mais alta dos metadados que o aplicativo reconhece para o formato de arquivo atual (geralmente 0).
    • PolicyEngine::GetWxpMetadataVersion retorna a versão de metadados para documentos do Office conforme configurado pelo administrador do inquilino (0 = padrão, 1 = formato habilitado para coautoria).
    • Alterações equivalentes na API C:
      • MIP_CC_ContentLabel_GetExtendedProperties
      • MIP_CC_MetadataAction_GetMetadataToAdd
      • mip_cc_metadata_callback
      • mip_cc_document_state
      • MIP_CC_PolicyEngine_GetWxpMetadataVersion
  • Agora, a configuração TelemetryConfiguration::isOptedOut desabilita totalmente a telemetria. Antes, era enviado um conjunto mínimo de telemetria.

SDK de proteção

  • Novo suporte ao registro e à revogação do rastreamento de documentos.
  • Novo suporte para gerar uma pré-licença ao publicar.
  • Certificado TLS público da Microsoft exposto e utilizado pelo serviço de proteção.
    • GetMsftCert e GetMsftCertPEM
    • Se um aplicativo substituir a HttpDelegate interface, ele deverá confiar nos certificados de servidor emitidos por essa autoridade de certificação.
    • Espera-se que esse requisito seja removido no final de 2020.

Versão 1.5.124

Data de lançamento: 2 de março de 2020

Mudanças gerais no SDK

  • API Java (somente Windows)
  • Cancelamento de tarefas assíncronas de MIP
    • Todas as chamadas assíncronas retornam o objeto mip::AsyncControl com um método Cancel()
  • Carregar com atraso os binários dependentes
  • Opcionalmente, mascare as propriedades específicas de telemetria/auditoria
    • Configurável por meio de mip::TelemetryConfiguration::maskedProperties
  • Exceções aprimoradas:
    • Todos os erros incluem as IDs de correlação acionáveis na cadeia de caracteres de descrição
    • O erro de rede tem os campos 'Categoria', 'BaseUrl', 'RequestId' e 'StatusCode'
  • Detalhes aprimorados sobre o resultado e erro da API C

SDK de arquivos

  • Verificação sem rede se o arquivo está rotulado ou protegido
    • mip::FileHandler::IsLabeledOrProtected()
    • Risco menor de falsos positivos (por exemplo, se o arquivo contiver metadados de rótulo zumbi)
  • Filtrar rótulos associados a tipos específicos de proteção
    • Configurável por meio de mip::FileEngine::Settings::SetLabelFilter()
  • Expor dados de política ao SDK de Arquivo
    • mip::FileEngine::GetPolicyDataXml()

SDK de política

  • Marcações de conteúdo dinâmico para as operações de marca-d'água, cabeçalho e rodapé:
    • Campos como ${Item.Label}, ${Item.Name}, ${User.Name}, ${Event.DateTime} são preenchidos automaticamente pela MIP
    • Os aplicativos podem construir mip::Identity com um campo "name" amigável usado pela marcação dinâmica de conteúdo
    • Configurável por meio de mip::PolicyEngine::Settings::SetVariableTextMarkingType()
  • Verificação sem rede se o conteúdo está rotulado
    • mip::PolicyHandler::IsLabeled()
    • Risco menor de falsos positivos (por exemplo, se o conteúdo contiver metadados de rótulo zumbi)
  • TTL do cache da política de rótulo
    • Padrão: 30 dias
    • Configurável por meio de mip::P olicyProfile::SetCustomSettings()
  • Alteração significativa
    • Atualização de PolicyEngine.Settings.LabelFilter na lista de enumerações para o campo de bits anulável.

SDK de proteção

  • Pre-license
    • A existência de uma pré-licença junto com o conteúdo criptografado, juntamente com um certificado de usuário recuperado anteriormente, permite a descriptografia offline do conteúdo
    • Os aplicativos podem criar mip::ProtectionHandler::ConsumptionSettings com uma pré-licença
    • mip::ProtectionEngine::LoadUserCert|Async() busca o certificado do usuário, que é armazenado de acordo com a política de cache do mip::ProtectionProfile.
  • Verificação de recursos específicos do servidor
    • Verifica se o locatário do usuário dá suporte ao recurso "somente criptografia" (disponível apenas no Azure RMS)
    • mip::ProtectionEngine::IsFeatureSupported()
  • Detalhes mais avançados ao buscar modelos RMS
  • Alterações da falha
    • mip::ProtectionEngine::GetTemplates() vector<shared_ptr<string>> valor retornado substituído por vector<shared_ptr<mip::TemplateDescriptor>> (C++)
    • mip::ProtectionEngine::Observer::OnGetTemplatesSuccess() parâmetro de callback shared_ptr<vector<string>> substituído por vector<shared_ptr<mip::TemplateDescriptor>> (C++)
    • Substituição do valor de retorno IProtectionEngine.GetTemplates|Async() List<string> por List<TemplateDescriptor>. (C#)
    • MIP_CC_ProtectionEngine_GetTemplates() mip_cc_guid* parâmetro substituído por mip_cc_template_descriptor* (API C)

C API

  • Alterações significativas: a maioria das funções atualizadas para incluir o parâmetro mip_cc_error*, pode ser NULL

Atualizações de erro/exceção

  • Resumo do tratamento de erros:
    • AccessDeniedError: o usuário não recebeu direitos para acessar o conteúdo
      • NoAuthTokenError: o aplicativo não forneceu o token de autenticação
      • NoPermissionsError: o usuário não recebeu direitos para um conteúdo específico, mas o referenciador/proprietário está disponível
      • ServiceDisabledError: o serviço está desabilitado para usuário/dispositivo/plataforma/locatário
    • AdhocProtectionRequiredError: a proteção ad hoc deve ser definida antes de definir um rótulo
    • BadInputError: entrada inválida do usuário/aplicativo
      • InsufficientBufferError: entrada de buffer inválida do usuário/aplicativo
      • LabelDisabledError: a ID do rótulo é reconhecida, mas desabilitada para uso
      • LabelNotFoundError: ID de rótulo não reconhecido
      • TemplateNotFoundError: ID de modelo não reconhecida
    • ConsentDeniedError: uma operação que exigia o consentimento do usuário/aplicativo não recebeu consentimento
    • DeprecatedApiError: esta API está obsoleta
    • FileIOError: Falha ao ler/gravar arquivo
    • InternalError: falha interna inesperada
    • NetworkError
      • ProxyAuthenticationError: a autenticação de proxy é necessária
      • Category=BadResponse: O servidor retornou uma resposta HTTP ilegível (a nova tentativa pode ser bem-sucedida)
      • Category=Cancelled: Falha ao estabelecer a conexão HTTP porque a operação foi cancelada pelo usuário/aplicativo (a nova tentativa provavelmente foi bem-sucedida)
      • Category=FailureResponseCode: o servidor retornou uma resposta de falha genérica (a nova tentativa pode ser bem-sucedida)
      • Category=NoConnection: Falha ao estabelecer a conexão HTTP (a nova tentativa pode ser bem-sucedida)
      • Category=Offline: Falha ao estabelecer a conexão HTTP porque o aplicativo está no modo offline (a nova tentativa não será bem-sucedida)
      • Category=Proxy: falha ao estabelecer a conexão HTTP devido a um problema de proxy (a repetição provavelmente não terá êxito)
      • Category=SSL: falha ao estabelecer a conexão HTTP devido a um problema de SSL (a repetição provavelmente não terá êxito)
      • Category=Throttled: o servidor retornou a resposta "throttled" (retirada ou nova tentativa provavelmente foi bem-sucedida)
      • Category=Timeout: Falha ao estabelecer a conexão HTTP após o tempo limite (a nova tentativa provavelmente foi bem-sucedida)
      • Category=UnexpectedResponse: o servidor retornou dados inesperados (a nova tentativa pode ser bem-sucedida)
    • NoPolicyError: o locatário ou usuário não está configurado para os rótulos
    • NotSupportedError: Operação sem suporte no estado atual
    • OperationCancelledError: a operação foi cancelada
    • PrivilegedRequiredError: não é possível modificar o rótulo, a menos que o método de atribuição = privilegiado
  • Changes
    • Removido PolicySyncError não utilizado. Substituído por NetworkError
    • Removido TransientNetworkError não utilizado. Substituídas por categorias de erro de rede

Versão 1.4.0

Data de lançamento: 6 de novembro de 2019

Esta versão apresenta suporte para o SDK de Proteção no pacote .NET (Microsoft.InformationProtection.File).

Alterações no SDK

  • Melhorias de desempenho e correções de bugs
  • Renomeação da enumeração StorageType para CacheStorageType
  • Android utiliza libc++ em vez de gnustl
  • APIs anteriormente descontinuadas removidas
    • File/Policy/Profile::Settings deverá sofrer inicialização com um MipContext
    • O caminho File/Policy/Profile::Settings, as informações do aplicativo, o delegate do logger, a telemetria e os getters/setters do nível de log foram removidos. Essas propriedades são gerenciadas por MipContext
  • Melhor suporte a bibliotecas estáticas em plataformas Apple
    • Bibliotecas estáticas monolíticas
      • libmip_file_sdk_static.a
      • libmip_upe_sdk_static.a
      • libmip_protection_sdk_static.a
      • libmip_upe_and_protection_sdk_static.a
    • Extração de dependências de terceiros em bibliotecas separadas
      • libsqlite3.a
      • libssl.a
  • Remoção de mip_telemetry.dll (merged into mip_core.dll)

SDK de arquivos

  • RPMSG
    • Encryption
    • Adição de suporte para a descriptografia de string8
  • Comportamento de extensão PFILE configurável (padrão, {extensão}.PFILE ou P{extensão})
    • ProtectionSettings::SetPFileExtensionBehavior

SDK de política

  • API C completa
  • Configurar a filtragem de rótulos associados à proteção
    • PolicyEngine::Settigns::SetLabelFilter()

SDK de proteção

  • APIs anteriormente descontinuadas removidas
    • Remoção de ProtectionEngine::CreateProtectionHandlerFromDescriptor[Async] (usar ProtectionEngine::CreateProtectionHandlerForPublishing[Async])
    • Remoção de ProtectionEngine::CreateProtectionHandlerFromPublishingLicense[Async] (usar ProtectionEngine::CreateProtectionHandlerForConsumption[Async])
  • API C# completa
  • API C completa
    • Alterações de normalização da API C da versão prévia da API C v1.3:
      • Renomeação de mip_cc_storage_type para mip_cc_cache_storage_type
      • Renomeação de MIP_CC_AddProtectionProfileEngine para MIP_CC_ProtectionProfile_AddEngine
      • Renomeação de MIP_CC_CreateProtectionEngineSettingsForExistingEngine para MIP_CC_CreateProtectionEngineSettingsWithEng
      • Renomeação de MIP_CC_CreateProtectionEngineSettingsForNewEngine para MIP_CC_CreateProtectionEngineSettingsWithIdentity
      • Renomeação de MIP_CC_SetProtectionProfileSettingsHttpDelegate para MIP_CC_ProtectionProfileSettings_SetHttpDelegate
      • Renomeação de MIP_CC_CreateProtectionHandlerForConsumption para MIP_CC_ProtectionEngine_CreateProtectionHandlerForConsumption
      • Renomeação de MIP_CC_CreateProtectionHandlerForPublishing para MIP_CC_ProtectionEngine_CreateProtectionHandlerForPublishing
      • Renomeação de MIP_CC_GetProtectionEngineId para MIP_CC_ProtectionEngine_GetEngineId
      • Renomeação de MIP_CC_GetProtectionEngineTemplates para MIP_CC_ProtectionEngine_GetTemplates
      • Renomeação de MIP_CC_GetProtectionEngineTemplatesSize para MIP_CC_ProtectionEngine_GetTemplatesSize
      • Renomeação de MIP_CC_SetTelemetryConfigurationHttpDelegate para MIP_CC_TelemetryConfiguration_SetHttpDelegate
      • Renomeação de MIP_CC_SetTelemetryConfigurationHostName para MIP_CC_TelemetryConfiguration_SetHostName
      • Renomeação de MIP_CC_SetTelemetryConfigurationIsLocalCachingEnabled para MIP_CC_TelemetryConfiguration_SetIsLocalCachingEnabled
      • Renomeação de MIP_CC_SetTelemetryConfigurationIsNetworkDetectionEnabled para MIP_CC_TelemetryConfiguration_SetIsNetworkDetectionEnabled
      • Renomeação de MIP_CC_SetTelemetryConfigurationIsTelemetryOptedOut para MIP_CC_TelemetryConfiguration_SetIsTelemetryOptedOut
      • Renomeação de MIP_CC_SetTelemetryConfigurationLibraryName para MIP_CC_TelemetryConfiguration_SetLibraryName
      • Remoção de MIP_CC_ProtectionEngine_GetRightsForLabelIdSize e atualização de MIP_CC_ProtectionEngine_GetRightsForLabelId para preencher mip_cc_string_list em vez de um buffer de cadeia de caracteres separado por vírgulas
      • Remoção de MIP_CC_ProtectionHandler_GetRightsSize e atualização de MIP_CC_ProtectionHandler_GetRights para preencher mip_cc_string_list em vez de um buffer de cadeia de caracteres separado por vírgulas
      • Adição de MIP_CC_ProtectionEngine_GetEngineIdSize e atualização de MIP_CC_ProtectionEngine_GetEngineId para preencher uma cadeia de caracteres em de mip_cc_guid
      • MIP_CC_CreateProtectionDescriptorFromUserRights agora usa o parâmetro 'mip_cc_dictionary-' em vez de 'mip_cc_dictionary'
      • MIP_CC_ProtectionEngineSettings_SetCustomSettings agora usa o parâmetro 'mip_cc_dictionary-' em vez de 'mip_cc_dictionary'
      • MIP_CC_ProtectionProfileSettings_SetCustomSettings agora usa o parâmetro 'mip_cc_dictionary-' em vez de 'mip_cc_dictionary'
      • Agora MIP_CC_TelemetryConfiguration_SetCustomSettings agora usa o parâmetro 'mip_cc_dictionary-' em vez de 'mip_cc_dictionary'
      • MIP_CC_CreateMipContext usa os parâmetros 'isOfflineOnly' e 'loggerDelegateOverride'

Versão 1.3.0

Data de lançamento: 22 de agosto de 2019

Novos recursos

  • mip::MipContext é o novo objeto de nível mais alto.
  • A descriptografia de arquivos MSG protegidos agora é suportada.
  • Há suporte para inspeção de arquivos message.rpmsg por meio mip::FileInspector e mip::FileHandler::InspectAsync().
  • O cache em disco agora pode ser criptografado opcionalmente.
  • O SDK de proteção agora oferece suporte a clientes de nuvem chineses.
  • Suporte a ARM64 no Android.
  • Suporte a ARM64e no iOS.
  • O cache de licença de usuário final (EUL) agora pode ser desabilitado.
  • Desabilite a criptografia .pfile por meio de mip::FileEngine::EnablePFile.
  • Desempenho aprimorado para operações de proteção, reduzindo o número de chamadas HTTP
  • Remoção dos detalhes da identidade delegada de mip::Identity e adição de DelegatedUserEmail a mip::FileEngine::Settings, mip::ProtectionSettings, mip::PolicyEngine::Settings e mip::ProtectionHandlerPublishingSettings e ConsumptionSettings.
  • As funções que anteriormente retornavam LabelId agora retornam um mip::Label objeto.

Changes

  • Nas versões anteriores, exigimos que você chamasse mip::ReleaseAllResources. A versão 1.3 substitui isso por mip::MipContext::~MipContext ou mip::MipContext::Shutdown.
  • Removido ActionSource de mip::LabelingOptions e mip::ExecutionState::GetNewLabelActionSource
  • Substituído mip::ProtectionEngine::CreateProtectionHandlerFromDescriptor por mip::ProtectionEngine::CreateProtectionHandlerForPublishing.
  • Substituído mip::ProtectionEngine::CreateProtectionHandlerFromPublishingLicense por mip::ProtectionEngine::CreateProtectionHandlerForConsumption.
  • Renomeado de mip::PublishingLicenseContext para mip::PublishingLicenseInfo e atualizado para conter campos avançados em vez de bytes serializados brutos.
  • mip::PublishingLicenseInfo contém os dados relevantes para a MIP após a análise de uma licença de publicação (PL).
  • Geração de mip::TemplateNotFoundError e mip::LabelNotFoundError quando o aplicativo passou um ID de modelo ou ID de rótulo para MIP que não foi reconhecido.
  • Adicionado suporte para acesso condicional baseado em rótulo por meio do parâmetro de declarações de AcquireToken() e mip::AuthDelegate::OAuth2Challenge(). Essa funcionalidade ainda não foi exposta por meio do portal do centro de conformidade.

Versão 1.2.0

Data de lançamento: 15 de abril de 2019

Novos recursos

  • O componente de telemetria agora usa a mesma pilha HTTP que o restante de MIP, mesmo que o aplicativo cliente a tenha substituído por HttpDelegate.
  • Os aplicativos cliente podem controlar o comportamento de thread de tarefas assíncronas substituindo TaskDispatcherDelegate em Perfis.
  • Criptografia RPMSG agora em versão prévia.
  • Alinhe o comportamento de tratamento de exceções do SDK de arquivo/política com o SDK de proteção:
    • ProxyAuthError será gerado por todos os SDKs se um proxy estiver configurado para exigir a autenticação.
    • NoAuthTokenError será gerado por todos os SDKs se um token de autenticação vazio for fornecido pela implementação do aplicativo de mip::AuthDelegate::AcquireOAuth2Token.
  • O cache HTTP aprimorado para o SDK de Política reduz # de chamadas HTTP necessárias pela metade.
  • Aprimoramento de logs/auditoria/telemetria para a detecção e depuração de falhas.
  • Suporte para rótulos externos/externos a fim de facilitar a migração para os rótulos da AIP.
  • Habilitação do suporte para que aplicativos de terceiros possam baixar os tipos de confidencialidade de SCC.
  • Mais configurações de telemetria são expostas e configuráveis (comportamento de cache e encadeamento, etc.).

Alterações no SDK

  • mip_common.dll dividido em mip_core.dll e mip_telemetry.dll.
  • Renomeação de mip::ContentState para mip::DataState a fim de descrever como um aplicativo interage com os dados no nível alto.
  • A exceção mip::AdhocProtectionRequiredError é gerada por FileHandler::SetLabel para notificar um aplicativo de que ele deve primeiro aplicar proteção ad hoc antes de aplicar um rótulo.
  • A exceção mip::OperationCancelledError é lançada quando uma operação é cancelada (por exemplo, devido ao desligamento ou cancelamento de HTTP).
  • Novas APIs:
    • 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 retorna std::vector<uint8_t> em vez de std::string
    • mip::HttpRequest::GetId
    • mip::PolicyEngine::GetLastPolicyFetchTime
    • mip::PolicyEngine::GetPolicyId
    • mip::PolicyEngine::HasClassificationRules
    • mip::PolicyEngine::Settings::SetCloudEndpointBaseUrl
    • mip::ProtectionDescriptor::GetContentId
    • (interface) mip::TaskDispatcherDelegate

Novos requisitos

  • Chame mip::ReleaseAllResources antes do encerramento do processo (depois de remover as referências a todos os Profiles, Engines e Handlers)
  • (interface) mip::ExecutionState::GetClassificationResults o tipo de retorno e o parâmetro "classificationIds" foram alterados
  • (interface) Os aplicativos podem implementar mip::FileExecutionState::GetAuditMetadata para especificar informações detalhadas a serem exibidas no painel de auditoria de um administrador de locatário (por exemplo, remetente, destinatários, última modificação etc.)
  • (interface) mip::FileExecutionState::GetClassificationResults teve o tipo de retorno alterado e agora exige um parâmetro FileHandler
  • (interface) Os aplicativos devem implementar mip::FileExecutionState::GetDataState para especificar como um aplicativo está interagindo com contentIdentifier
  • (interface) a interface mip::HttpDelegate requer os métodos 'CancelOperation' e 'CancelAllOperations'
  • (interface) mip::HttpDelegate interface 'Send' e 'SendAsync' retornam mip::HttpOperation em vez de mip::HttpResponse
  • (interface) mip::HttpResponse::GetBody retorna std::vector<uint8_t> em vez de std::string
  • (interface) mip::HttpResponse requer implementação do método 'GetId'
  • mip::ContentLabel::GetCreationTime retorna std::chrono::time_point em vez de std::string
  • mip::FileEngine::CreateFileHandlerAsync não aceita mais o parâmetro 'contentIdentifier'
  • mip::PolicyHandler::NotifyCommitedActions renomeado para mip::PolicyHandler::NotifyCommittedActions

Versão 1.1.0

Data de lançamento: 15 de janeiro de 2019

Esta versão apresenta suporte para as seguintes plataformas:

  • .NET
  • SDK do iOS (SDK de política)
  • SDK do Android (SDK de política e SDK de proteção)

Novos recursos

  • Suporte ao ADRMS
  • As operações do SDK de proteção são realmente assíncronas (no Win32), permitindo operações simultâneas de criptografia/descriptografia sem bloqueio
    • Os callbacks do aplicativo (AuthDelegate, HTTPDelegate, etc.) agora podem ser invocados em qualquer thread em segundo plano
  • As propriedades de rótulo personalizadas definidas pelos administradores de TI agora podem ser lidas por meio de mip::Label::GetCustomSettings
  • A licença de publicação serializada agora pode ser recuperada diretamente de um arquivo sem operações HTTP por meio de mip::FileHandler::GetSerializedPublishingLicense
  • MIP notifica os aplicativos se a criação de um mip::FileEngine/mip::PolicyEngine exige uma operação HTTP por meio de mip::FileProfile::Observer::OnAddPolicyEngineStarting/mip::PolicyProfile::Observer::OnAddEngineStarting
  • A detecção se o conteúdo protegido possui uma data de expiração ou não é simplificada com o método de conveniência mip::ProtectionDescriptor::DoesContentExpire.
  • Classification:
    • Os aplicativos podem obter tipos de sensibilidade (expressões regex para números de cartão de crédito, números de passaporte etc.) do serviço SCC
      • Habilitar o recurso definindo o sinalizador mip::FileEngine::Settings/mip::PolicyEngine::Settings
      • Ler tipos usando mip::FileEngine::ListSensitivityTypes/mip::PolicyEngine::ListSensitivityTypes
    • Os aplicativos podem fornecer ao MIP resultados de classificação de utilitários externos de verificação de documentos para aplicar rótulos recomendados/obrigatórios com base no conteúdo do documento
      • Passar os resultados para o MIP por meio de mip::FileExecutionState::GetClassificationResults/mip::ExecutionState::GetClassificationResults
      • mip::P olicyEngine::ComputeActions pode retornar mip::ApplyLabelAction e mip::RecommendLabelAction quando os resultados da classificação correspondem a uma regra de política que indica rótulos necessários/recomendados

Novos requisitos

  • Imposição de preenchimento de mip::ApplicationInfo dos campos ID/nome/versão quando se cria mip::FileProfile, mip::PolicyProfile e mip::ProtectionProfile
  • Os aplicativos devem implementar a nova interface mip::FileExecutionState ao criar mip::FileHandlers

Novas exceções

  • mip::NoAuthTokenError é lançado quando o AuthDelegate do aplicativo retorna um token vazio (por conta de cancelamento)
    • Aplica-se à criação de:
      • mip::FileEngine
      • mip::FileHandler
      • mip::PolicyEngine
      • mip::ProtectionHandler
  • Geração de mip::NoPolicyError se o locatário não estiver configurado para rótulos
    • Aplica-se à criação de:
      • mip::FileEngine
      • mip::PolicyEngine
  • Erro mip::ServiceDisabledError gerado quando o serviço RMS estiver desabilitado para um usuário/dispositivo/plataforma/inquilino específico
    • Aplica-se à criação de:
      • mip::FileHandler
      • mip::ProtectionHandler
  • mip::NoPermissionsError lançado se um usuário não tiver direitos para descriptografar um documento ou se o conteúdo tiver expirado
    • Aplica-se à criação de:
      • mip::FileHandler
      • mip::ProtectionHandler

Próximas Etapas