Microsoft Information Protection versión del Kit de desarrollo de software (SDK) de Microsoft Information Protection (MIP) y la directiva de soporte técnico

Mantenimiento

Cada versión de disponibilidad general (GA) es compatible durante un año una vez que se publica la siguiente versión de GA. Es posible que la documentación no incluya información sobre versiones no admitidas. Las correcciones y las nuevas funciones solo se aplican a la última versión de GA.

Las versiones preliminares no deben implementarse en producción. En su lugar, use la versión de vista previa más reciente para probar nuevas funcionalidades o correcciones que vienen en la siguiente versión de GA. Solo se admite la versión de vista previa más reciente.

Historial de versiones

Use la siguiente información para ver las novedades o cambios de una versión compatible. La versión más reciente aparece en primer lugar.

Nota

Para obtener soporte técnico, visite el foro Desborde de Microsoft Information Protection o abra un caso de soporte técnico con soporte técnico de Microsoft.

Descargas para versiones anteriores

NuGet paquetes para las versiones principales permanecen activos en NuGet. Solo se mantiene la versión más reciente de cada versión principal en el Centro de descarga de Microsoft. Las versiones anteriores a la 1.4 no están disponibles.

Versión Vínculo Estado Fin del soporte técnico
1.11 https://aka.ms/mipsdkbins Versión actual TBD
1.10 https://aka.ms/mipsdkbins110 Compatible TBD
1.9 https://aka.ms/mipsdkbins19 Compatible 23 de agosto de 2022
1.8 https://aka.ms/mipsdkbins18 Compatible 29 de abril de 2022
1.7 https://aka.ms/mipsdkbins17 Compatible 14 de enero de 2022
1.6 https://aka.ms/mipsdkbins16 Fuera del soporte técnico 23 de septiembre de 2021
1.5 https://aka.ms/mipsdkbins15 Fuera del soporte técnico 16 de abril de 2021
1.4 https://aka.ms/mipsdkbins14 Fuera del soporte técnico 2 de marzo de 2021

Versión 1.11.53

Fecha de lanzamiento 17 de noviembre de 2021

SDK de archivo

  • Se ha corregido un error por el que IsModified() en mip::FileHandler devuelve false en lugar de verdadero para un texto sin formato. Archivo MSG con datos adjuntos protegidos.
  • Se ha corregido un error al solucionar problemas de formato XML en metadatos que rompía etiquetas sin protección en determinados casos.

SDK de directivas

  • Se han introducido mejoras para evitar el interbloqueo en la sincronización de directivas.

Cambios de ruptura

  • Anteriormente, cuando se configuraba una etiqueta para "No reenviar" o "Cifrar solo" y una acción de protección de archivos, el SDK de MIP no mostraría la etiqueta en la lista de etiquetas para el tipo de contenido de archivo.

    • El SDK se ha actualizado para corregir este problema. La etiqueta no se filtrará en ninguno de los dos casos cuando se configure para que se aplique a ambos tipos de contenido.
    • Este cambio no afecta a las etiquetas en las que la acción de protección era "Cifrar solo" o "No reenviar".
    • Por último, no afecta a las etiquetas destinadas a archivos en los que la acción estaba predefinida o la protección definida por el usuario.
  • Se han actualizado las excepciones existentes para un mejor tratamiento de escenarios específicos. Lo siguiente anteriormente se presentó como NetworkError::Category::FailureResponseCode

    • NetworkError::Category::ServiceUnavailable
      • Nueva categoría de excepción ( NetworkError excepción).
      • Se devuelve cuando el servicio dependiente no está disponible.
      • Servicio devuelve 503
    • NetworkError::Category::Throttled
      • Excepción: NetworkError
      • Se devuelve cuando se han realizado demasiadas solicitudes al servicio dependiente.
      • El servicio devuelve 429

Actualizaciones de plataforma y dependencia

  • Dependencias del SDK actualizadas a las versiones más recientes
  • Todos los binarios del SDK de MIP se han actualizado para usar la versión 2.9.12 de biblioteca estática libxml2 y biblioteca dinámica libgsf para Android y Windows.
  • Se ha introducido el soporte de proxy para Linux. Ejemplo de cómo establecer proxy a continuación.
export HTTP_PROXY="http://10.10.10.10:8080"

Versión 1.10.98

Fecha de lanzamiento 29 de septiembre de 2021

Correcciones de errores

  • Se ha corregido un error en iOS en el que el código de bits no estaba habilitado

Versión 1.10.97

Fecha de lanzamiento: 17 de septiembre de 2021

Correcciones de errores

  • Se ha corregido un error por el que los datos adjuntos de los archivos MSG estaban dañados al aplicar una etiqueta de protección al archivo MSG.

Versión 1.10.93

Fecha de lanzamiento: 23 de agosto de 2021

Cambios generales

  • Clase MipConfiguration agregada.
    • Esta clase controla la configuración establecida previamente directamente en MipContext.
    • Los delegados, la ubicación de registro, etc. se establecen como parte de este objeto.
    • Revise Conceptos de MipContext para obtener más información.
  • MipContext::Create() constructor se ha cambiado para aceptar solo el nuevo MipConfiguration objeto.
  • Toda la configuración del motor se establecerá de forma predeterminada en la configuración regional de EE. UU. en caso de que la .Locale propiedad esté establecida en null .
  • Se ha corregido un problema por el que el SDK no respetaba por completo la configuración de nivel de registro.

SDK de archivo

  • Se ha agregado compatibilidad para leer y escribir etiquetas en archivos MSG.
    • El patrón para etiquetar estos archivos es el mismo que cualquier otro tipo de archivo.
    • La enable_msg_file_type configuración personalizada debe establecerse para habilitar el control de archivos MSG.
    • Los datos adjuntos se protegerán pero no se etiquetarán.
    • Revise Establecer enable_msg_file_type y use el SDK de archivo para proteger el archivo .msg para obtener más información sobre la configuración personalizada.
  • FileHandler::IsLabeledOrProtected() ahora es compatible con archivos MSG.
  • El SDK de archivos ahora admite el descifrado de datos adjuntos protegidos en archivos MSG sin protección.
    • Esto solo se aplica a los archivos y no a los contenedores como archivos MSG o ZIP.
  • Se ha agregado un nuevo método estático mip::FileHandler::GetFileStatus()
    • Esta función devuelve un nuevo objeto que indica si el archivo está mip::FileStatus etiquetado, protegido o contiene objetos protegidos.
    • FileStatus expone tres propiedades: IsProtected , IsLabeled y ContainsProtectedObjects .
    • ContainsProtectedObjects es útil para archivos MSG que tienen datos adjuntos protegidos.
  • Al llamar a un archivo MSG de texto sin formato con datos adjuntos protegidos, la protección FileHandler::RemoveProtection() se quitará de los datos adjuntos.
  • Se ha corregido un error por IProtectionHandler el que se destruía al llamar IFileHandler.SetProtection() en bucle. IProtectionHandler la instancia ya no se destruirá después de su uso.

SDK de directivas

  • La variable de marcado ${Event.DateTime} de contenido ahora es la hora local en lugar de UTC.
    • Esto se puede volver al valor predeterminado anterior mediante la característica de vuelo EventDateTimeTokenUseUtc .
  • Se ha corregido un error por el que no se devolvía los mismos valores dentro de un archivo como cuando se recuperaban IsActivePolicyHandler etiquetas de un PolicyEngine archivo .

SDK de protección

  • Se han agregado nuevos tipos de error más específicos que aparecerán en protección y SDK de archivo. Vea la sección Cambios de ruptura.

Cambios de ruptura

  • Se introdujo una nueva configuración personalizada para regular la configuración de auditoría predeterminada.
    • Se ha agregado una nueva propiedad en el delegado de auditoría para establecer la configuración de auditoría.
    • LabelGroupData clase ya no tiene IsAuditEnabled() método.
    • Puede usarlo en su GetEnableAuditSetting() lugar para obtener la configuración de la directiva una vez cargada la EnableAudit directiva. La configuración de auditoría predeterminada se Undefined opondrá a true las versiones anteriores.
  • Permita pasar la zona horaria del documento a ComputeActions para permitir que las acciones se calcule como si el documento existiera en una zona horaria diferente de la máquina que aplica la etiqueta.
    • Útil para cuando las etiquetas se aplican en nombre de un usuario a través de un servicio, donde la hora local del servidor no es necesariamente la misma que la del usuario.
    • En lugar de devolver el formato UTC, ahora se vuelve a la hora local de forma ${Event.DateTime} predeterminada sin mostrar la zona horaria.
  • Se han actualizado las excepciones existentes para un mejor tratamiento de escenarios específicos.
    • NoPermissionsError::Category::NotPremiumLicenseUser
      • Anteriormente se ha presentado como NoPermissionsError::Category::AccessDenied
      • Causado por un usuario sin licencia que intenta revocar el contenido protegido.
    • NoPermissionsError::Category::NotOwner
      • Anteriormente se ha presentado como NoPermissionsError::Category::AccessDenied
      • Causado por un usuario que intenta revocar un documento que no es de su propiedad.
    • ServiceDisabledError::Extent::Tenant
      • Anteriormente se ha presentado como ServiceDisabledError::Extent::User
      • Se devuelve cuando el servicio Azure Rights Management destino está deshabilitado.
    • NoPermissionsError::Category::AccessDenied
      • Anteriormente se ha presentado como NetworkError::Category::FailureResponseCode
      • Se devuelve cuando el usuario no tiene derechos para publicar debido a los controles de licencia o incorporación.
    • BadInputError::ErrorCode::DoubleKey
      • Anteriormente se ha presentado como NetworkError::Category::FailureResponseCode
      • Se devuelve cuando los parámetros de cifrado de clave doble (DKE) son incorrectos.
    • CustomerKeyUnavailableError
      • Nueva excepción.
      • Se devuelve cuando el espacio empresarial está configurado para bring-your-own-key (BYOK) y no se puede alcanzar la clave.
      • El servicio devuelve HTTP424.
    • NetworkError::Category::FunctionNotImplemented
      • Nueva excepción.
      • Se devuelve cuando el servicio devolvió HTTP501 (no implementado).
    • Lo siguiente anteriormente se presentó como NetworkError::Category::FailureResponseCode
      • TemplateArchivedError: La aplicación ha intentado aplicar un id. de plantilla que se ha archivado.
      • LicenseNotRegisteredError: la licencia de publicación de documentos no está registrada para la revocación.
      • NoPermissionsError::Category::UserNotFound: el usuario proporcionado no existe en el espacio empresarial de destino.
      • NoPermissionsError::Category::InvalidEmail: se proporcionó una dirección de correo electrónico no válida.
      • NoPermissionsError::Category::AccessDenied: La identidad proporcionada no es una entidad de seguridad reconocida por RMS o no es un delegado válido.
      • BadInputError::ErrorCode::LicenseNotTrusted: la licencia de publicación proporcionada no es de un editor de confianza. (No en la API C)
      • BadInputError::ErrorCode::ParameterParsing: Devuelto por varios problemas xml, JSON u otros problemas de análisis (no en la API C)

Actualizaciones de plataforma y dependencia

  • Se ha agregado compatibilidad con Debian 10.
  • Se ha agregado compatibilidad con Ubuntu 20.04.

Versión 1.9.90

Fecha de lanzamiento: 7 de julio de 2021

Cambios generales

  • Se ha corregido un error en el SDK de archivo en el que los documentos heredados no se podían descifrar en archivos de 32 Windows.
  • Habilitar código de bits en compilaciones de iOS.
  • Se actualizó Ubuntu 16.04 para usar OpenSSL 1.1.1k.
  • Se ha corregido un problema al descifrar archivos MSG que habían sido previamente manipulados por herramientas de exhibición de documentos electrónicos de terceros.

Versión 1.9.78

Fecha de lanzamiento: 29 de abril de 2021

Cambios generales

  • Se ha agregado un nuevo parámetro que permite a los desarrolladores proporcionar id. de escenario personalizado para correlacionar errores.
    • En caso de que se requiera un caso de soporte técnico para diagnosticar un error del lado del servicio, este id. de escenario puede ser útil para solucionar problemas.
    • SDK de archivo:Al crear un conjunto de la aplicaciónScenarioID a través de FileExecutionState
    • SDK de protección:ahora, varias API admiten la aprobación del id. de escenario.
      • mip::ProtectionCommonSettings(mApplicationScenarioId)
      • mip::GetTemplatesSettings::CreateGetTemplatesSettings()->SetApplicationScenarioId()
      • mip::ProtectionHandler::PublishingSettings()->SetApplicationScenarioId()
      • mip::ProtectionHandler::ConsumptionSettings()->SetApplicationScenarioId()
      • mip::PolicyEngine::SetSessionId()
  • Se agregaron Workload comprobaciones de consentimiento y enumeración.
    • Agregado y HasWorkloadConsent()GetWorkloadConsent() a y FileEnginePolicyEngine .
  • Se han agregado API sincrónicas al contenedor .NET del SDK de directiva: AddEngine()ListEngines() , , , DeleteEngine()UnloadEngine() .
  • Se ha agregado compatibilidad para redirigir solicitudes de protección a través de ProtectionProfile::Settings::AddRedirectionUri()
  • Se ha agregado un contexto de registrador que se puede usar para escribir LoggerDelegate datos contextuales personalizados en los registros.
    • Esta API puede ser útil para correlacionar los eventos de error de los servicios con una sola operación o eventos.
    • Las siguientes API admiten proporcionar el contexto del registrador:
      • LoggerDelegate::WriteToLogWithContext
      • TaskDispatcherDelegate::DispatchTask o 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()

Actualizaciones de plataforma y dependencia

  • Se ha agregado compatibilidad con CentOS 8
  • Se ha agregado compatibilidad con marcos de iOS
  • OpenSSL actualizado a la versión 1.1.1k
  • Sqlite actualizado a 3.34.1

Cambios de ruptura

  • Se ha cambiado el comportamiento de auditoría predeterminado para los inquilinos en los que AIP Analytics está habilitado. Ahora es obligatorio que, además de configurar los componentes del lado del servicio de la característica AIP Analytics, también establezca la propiedad EnableAudit en true en directivas de etiquetas de confidencialidad.
    • Set-LabelPolicy -Identity Global -AdvancedSettings @{EnableAudit="True"}
    • Consulte este artículo de Docs para obtener más información sobre cómo configurar la configuración de directiva avanzada.
  • Función agregada GetApplicationScenarioId() a FileExecutionState .
  • Enumeración ContentFormat eliminada.
  • Se agregaron errores específicos con categorías para un conjunto de errores expuestos anteriormente mediante NetworkError cadenas o códigos de error.
    • NoPermissionsError::Category::UserNotFound
    • NoPermissionsError::Category::AccessDenied
    • NoPermissionsError::Category::AccessExpired
    • NoPermissionsError::Category::UserNotFound
  • Microsoft.RightsManagement.Exceptions.UnknownTenantException El servicio lanzado ahora aparecerá como ServiceDisabledError en lugar de Network Error

Correcciones de errores

  • Se ha corregido una pérdida de memoria al mip::FileHandler::IsLabeledOrProtected() llamar.
  • Se ha corregido un error en el que se llamaba FileHandler::InspectAsync() "observador incorrecto".
  • Se ha corregido un error por el que el SDK intentó aplicar formato de etiqueta de coautoría a Office formatos que no son compatibles con la coautoría (DOC, PPT, XLS).
  • Se ha corregido un bloqueo en el contenedor .NET relacionado con la FileEngine eliminación. El PolicyEngine objeto nativo permaneció presente durante un período e intentaría una actualización de directiva, lo que provocaba un bloqueo.
  • Se ha corregido un error por el que el SDK omitiría las etiquetas aplicadas por las versiones anteriores de AIP debido a que faltaba la propiedad IdDe Sitio.

Versión 1.8.97

Fecha de lanzamiento: 24 de febrero de 2021

  • Se ha corregido un error por el que las etiquetas secundarias no se filtraban correctamente e incluían todos los tipos de etiquetas, incluso si no se solicitaban.
  • Se ha corregido un error por el que las etiquetas no se conservaba si RemoveProtection() los metadatos de etiqueta estaban incompletos.

Versión 1.8.94

Fecha de lanzamiento: 8 de febrero de 2021

  • Se ha corregido un error NuGet paquete donde la configuración de depuración para proyectos de C++ implementaba archivos binarios de la versión. La versión 1.8.86 puede provocar un bloqueo con las aplicaciones nativas de C++. Asegúrese de actualizar a 1.8.94 o posterior.
  • Se ha corregido un error en el que el motor de directivas era necesario para quitar la protección.
    • Si el motor de directivas no se puede cargar y los metadatos de etiqueta están presentes, se descartará si se quita la protección.
  • Se ha corregido un error por el que labelInfo.xml se generaba vacío si el archivo se cambiaba a otra etiqueta protegida.

Versión 1.8.86

Fecha de lanzamiento: 13 de enero de 2021

Cambios generales

  • Se ha agregado compatibilidad con Mac en ARM.
  • Ha firmado todos los archivos dylib para Mac.
  • Todas las nubes son totalmente compatibles en los tres SDK.
  • Cambiar el TelemetryConfiguration nombre a DiagnosticConfiguration .
  • Se MipContext actualizó para aceptar DiagnosticConfiguration en lugar de TelemetryConfiguration .
  • Se ha expuesto nuevo AuditDelegate .
  • Varias configuraciones personalizadas han cambiado su nombre y se quitarán en la versión 1.9. Estos seguirán funcionando en paralelo con sus nombres de actualizaciones en la versión 1.8.
Nuevo nombre Nombre antiguo
is_debug_audit is_debug_telemetry
is_audit_disabled is_built_in_audit_disabled

SDK de archivo

  • Se ha agregado compatibilidad con etiquetas definidas por el usuario con cifrado de doble clave.
  • Se ha agregado una API para MsgInspector.BodyType exponer el tipo de codificación de cuerpo de los archivos MSG.
  • Api agregadas para admitir el cifrado de clave doble con User-Defined permisos.
  • Se ha agregado la marca para que el autor de mip::FileHandler la llamada deshabilite el envío de eventos de descudo de auditoría. Esto corrige un escenario en el que el uso de la ClassifyAsync() API daría como resultado eventos de detección duplicados.
  • Se han corregido errores en los que:
    • Se produce un error al configurar la protección en un archivo XPS.
    • No se puede abrir un archivo después de cargar o descargar desde SharePoint Online ni quitar permisos personalizados.
    • RemoveProtection() función aceptaría una entrada message.rpmsg. Ahora solo acepta archivos MSG.
    • Un bloqueo que se produjo al intentar realizar un seguimiento o revocar archivos desprotegidos.

SDK de directivas

  • Se ha quitado de las propiedades de metadatos predeterminadas para garantizar la ActionId coherencia entre Microsoft Office y SharePoint documentos etiquetados en línea.
  • Se ha agregado compatibilidad con etiquetas específicas de Azure Purview.
  • Se ha agregado la capacidad de invalidar la telemetría y la auditoría a través de delegados para cada uno.
    • El delegado de auditoría ofrece la capacidad de enviar eventos de auditoría AIP a un destino distinto de AIP Analytics, o además de AIP Analytics.
  • Se ha agregado la marca para que el autor de la llamada descubra el envío de mip::PolicyHandler eventos de descudo de auditoría. Esto corrige un escenario en el que el uso de la ClassifyAsync() API daría como resultado eventos de detección duplicados.
  • Se ha corregido un error por el que la base de datos de directivas cifradas no se podía abrir en determinados escenarios.
  • Nuevo expuesto que permite a los desarrolladores invalidar la canalización de auditoría predeterminada del SDK de AuditDelegate MIP y enviar eventos a su propia infraestructura.
  • mip::ClassifierUniqueIdsAndContentFormats y GetContentFormat() ahora devuelve en lugar de std::stringmip::ContentFormat . Este cambio se replica en .NET y Java contenedores.
  • ContentFormat.Default es ahora ContentFormat.File .

SDK de protección

  • Se ha agregado una ProtectionEngineSettings.SetAllowCloudServiceOnly propiedad que prohibirá las conexiones a Active Directory Rights Management Services clústeres cuando sea verdadero. Solo se usarán entornos en la nube.
  • Se ha agregado compatibilidad para adquirir licencias de delegación.
    • Las licencias de delegación permiten a los servicios capturar una licencia de contenido en nombre de un usuario.
    • Esto permite al servicio ver los datos de derechos y descifrar en nombre del usuario sin llamadas adicionales al servicio.

Java wrapper (vista previa pública)

  • Se ha agregado compatibilidad con Control y Revocación para Java Wrapper.
  • Se ha agregado compatibilidad de transmisión a Java Wrapper

C API

  • Se MIP_FLIGHTING_FEATURE_KEEP_PDF_LINEARIZATION de la API de C.

Versión 1.7.147

SDK de archivo

  • Corrección de errores menores para el formato de archivo PBIX.

Versión 1.7.145

Fecha de lanzamiento: 13 de noviembre de 2020

Cambios generales

  • Se NuGet paquete para copiar dependencias solo al actualizar en lugar de siempre.
  • La configuración de depuración en .NET usará la versión de la versión de las bibliotecas nativas. Encontramos que los clientes que implementaban soluciones .NET en modo de depuración en servidores remotos eran necesarios para instalar el tiempo de ejecución de depuración de VC++, lo que no es baladí. Si es necesario depurar en bibliotecas nativas, copie los archivos DLL del SDK redistribuible en la carpeta del proyecto ( https://ala.ms/mipsdkbins )
  • Se ha corregido un error que generaba advertencias para proyectos de .NET Core.

Versión 1.7.133

Fecha de lanzamiento:23 de septiembre de 2020

Cambios generales del SDK

  • Vista previa pública disponible para Java en Windows y Ubuntu 18.04.
  • .NET Core ahora es compatible con Windows.
  • Compatibilidad con la vista previa pública de .NET Core en Ubuntu 18.04.
  • Registro local mejorado para keystore cuando el tipo de caché de almacenamiento está establecido en OnDiskEncrypted.
  • Control de características habilitado en el Contenedor de .NET
  • Se ha revertido el comportamiento de telemetría del SDK a la versión anterior a la 1.6. Ahora se envía un conjunto mínimo de eventos de uso cuando se opta solo por telemetría mínima.

SDK de archivo

  • Se ha corregido la conversión de cuerpo UTF-16/UTF-8 en MSGInspector .
  • Establezca un límite de tamaño de archivo máximo predeterminado para los archivos protegidos por el SDK de archivo en 6 GB.
    • Cambio realizado debido al descifrado de archivos grandes que requieren al menos el tamaño de archivo en la memoria disponible.
    • Se puede invalidar mediante la configuración max_file_size_for_protection personalizada.
  • Se ha agregado compatibilidad con archivos PDF linealizados.
  • Se ha corregido un error por el que LastModifiedDate no se actualizaba en el evento Change.
  • Se ha corregido una pérdida de memoria en la creación de PDF protegida.
  • Sdk de archivo admite la revocación de archivos de seguimiento.
  • FileEngine::Settings::SetLabelFilter está en desuso, úsese ConfigureFunctionality en su lugar.

SDK de directivas

  • El SDK de directiva ahora admite acciones de etiquetado Cifrar solo.
  • Se ha corregido un error por el que no se cargaba mip::Identity correctamente desde motores almacenados en caché.
  • Se ha corregido un error en el que las comparaciones guid de clasificación distinguen entre mayúsculas y minúsculas en la API de clasificación.
  • Eventos de auditoría enriquecidos agregando nuevos campos.

SDK de protección

  • Se ha corregido un error por el que no se cargaba mip::Identity correctamente desde motores almacenados en caché.
  • Se ha agregado un registro implícito para las licencias de publicación recién creadas.
  • Se ha agregado compatibilidad con algoritmos criptográficos usados para admitir DKE en Office archivos.
  • Hecho documentId y owner parámetros opcionales.

API de C

  • Se ha agregado la identidad que faltaba y las API de DKE.
  • Se AuthDelegate ha movido de perfil a motor en todos los SDK.
  • Ejemplo de SDK de directiva de publicación para C
  • MIP_CC_CreateProtectionEngineSettingsWithIdentity ha quedado en desuso, úsese MIP_CC_CreateProtectionEngineSettingsWithIdentityAndAuthCallback en su lugar.
  • MIP_CC_CreateProtectionEngineSettingsWithEngineId ha quedado en desuso, úsese MIP_CC_CreateProtectionEngineSettingsWithEngineIdAndAuthCallback en su lugar.
  • MIP_CC_CreateProtectionProfileSettings firma ha cambiado.
  • MIP_CC_CreatePolicyEngineSettingsWithIdentity ha quedado en desuso, use MIP_CC_CreatePolicyEngineSettingsWithIdentityAndAuthCallback .
  • MIP_CC_CreatePolicyEngineSettingsWithEngineId ha quedado en desuso, use MIP_CC_CreatePolicyEngineSettingsWithEngineIdAndAuthCallback .
  • MIP_CC_PolicyEngineSettings_SetLabelFilter ha quedado en desuso, use MIP_CC_PolicyEngineSettings_ConfigureFunctionality .
  • MIP_CC_CreatePolicyProfileSettings firma ha cambiado.

Cambios de ruptura

Común

  • TelemetryConfiguration::isTelemetryOptedOut se cambió el nombre a isMinimalTelemetryEnabled .

C API

  • mip_cc_document_state se ha actualizado con un nuevo contenido de mip_cc_metadata_version_format valorMetadataVersionFormat

Versión 1.6.103

Fecha de lanzamiento:16 de abril de 2020

Cambios generales del SDK

  • TLS 1.2 se aplica para todas las comunicaciones HTTP que no son ADRMS.
  • Implementación HTTP de iOS/macOS migrada de NSURLConnection a NSURLSession.
  • Componente de telemetría de iOS migrado del SDK de Aria al SDK de 1DS.
  • El componente telemetría ahora usa HttpDelegate de MIP en iOS, macOS y Linux. (Anteriormente solo win32).
  • Se ha mejorado la seguridad del tipo para la API C.
  • Se ha movido AuthDelegate de perfil a motor en C++, C# y Java API.
  • AuthDelegate se ha movido del constructor de Profile::Settings a Engine::Settings .
  • Se ha agregado Category a NoPolicyError para proporcionar más información sobre por qué no se pudo sincronizar la directiva.
  • Método PolicyEngine::GetTenantId agregado.
  • Se ha agregado compatibilidad explícita para todas las nubes.
    • Nuevo Engine::Settings::SetCloud método para establecer la nube de destino (GCC Alta, 21-Vianet, etc.).
    • La Engine::Settings::SetCloudEndpointBaseUrl llamada de método existente ya no es necesaria para las nubes reconocidas.
  • Código de bits habilitado para archivos binarios de iOS.

SDK de archivo

  • Agregado a IFileHandler::InspectAsync C# y Java wrappers
  • Nuevo soporte técnico a través de la activación de la adquisición de tokens de directiva para permitir que una FileProfile::AcquirePolicyAuthToken aplicación caliente su caché de tokens.
  • MsgInspector::GetAttachments devuelve vector<shared_ptr<MsgAttachmentData>> en lugar de vector<unique_ptr<MsgAttachmentData>>
  • TelemetryConfiguration::isOptedOut ahora, la configuración deshabilita completamente la telemetría. Anteriormente se enviaba un conjunto de telemetría mínima.

SDK de directivas

  • Nuevo soporte para desencadenar la adquisición de tokens para permitir que una aplicación caliente su caché de tokens a través PolicyProfile::AcquireAuthToken de .
  • Las etiquetas HYOK se filtran de forma predeterminada.
  • Los metadatos asociados con etiquetas eliminadas ahora se quitarán.
  • Si alguna vez hay una falta de coincidencia entre la directiva de etiqueta en caché y la directiva de confidencialidad, la caché de directivas ahora se borrará.
  • Nuevo soporte para metadatos versionados:
    • Un formato de archivo puede revear la ubicación o el formato de sus metadatos de etiqueta. En ese caso, una aplicación debe proporcionar a MIP todos los metadatos y MIP determinará qué metadatos son "verdaderos".
    • ContentLabel::GetExtendedProperties ahora devuelve vector<MetadataEntry> en lugar de vector<pair<string, string>> .
    • MetadataAction::GetMetadataToAdd ahora devuelve vector<MetadataEntry> en lugar de vector<pair<string, string>> .
    • ExecutionState::GetContentMetadata ahora debería devolver en vector<MetadataEntry> lugar de vector<pair<string, string>> .
    • ExecutionState::GetContentMetadataVersion debe devolver la versión más alta de metadatos que la aplicación reconoce para el formato de archivo actual (normalmente 0).
    • PolicyEngine::GetWxpMetadataVersiondevuelve la versión de metadatos Office los documentos configurados por el administrador de inquilinos (0 = predeterminado, 1 = formato habilitado para coautoría).
    • Cambios equivalentes en la API C:
      • MIP_CC_ContentLabel_GetExtendedProperties
      • MIP_CC_MetadataAction_GetMetadataToAdd
      • mip_cc_metadata_callback
      • mip_cc_document_state
      • MIP_CC_PolicyEngine_GetWxpMetadataVersion
  • TelemetryConfiguration::isOptedOut ahora, la configuración deshabilita completamente la telemetría. Anteriormente se enviaba un conjunto de telemetría mínima.

SDK de protección

  • Nuevo soporte para registro y revocación para el seguimiento de documentos.
  • Nuevo soporte para generar una licencia previa al publicar.
  • Certificado PÚBLICO de Microsoft TLS que usa el servicio de protección.
    • GetMsftCert y GetMsftCertPEM
    • Si una aplicación reemplaza la interfaz, debe confiar en los certificados de servidor HttpDelegate emitidos por esta ca.
    • Se espera que este requisito se elimine a finales de 2020.

Versión 1.5.124

Fecha de lanzamiento:2 de marzo de 2020

Cambios generales del SDK

  • Java API (solo Windows)
  • Cancelación de tareas mip asincrónicas
    • Todas las llamadas asincrónicas devuelven el objeto mip::AsyncControl con un método Cancel()
  • Binarios dependientes de carga retrasada
  • Si lo desea, puede enmascarar propiedades de telemetría o auditoría específicas
    • Configurable a través de mip::TelemetryConfiguration::maskedProperties
  • Excepciones mejoradas:
    • Todos los errores incluyen identificadores de correlación que se pueden actuar en la cadena de descripción
    • El error de red tiene los campos "Category", "BaseUrl", "RequestId" y "StatusCode"
  • Detalles de error y resultado de la API de C mejorados

SDK de archivo

  • Comprobar si el archivo está etiquetado o protegido
    • mip::FileHandler::IsLabeledOrProtected()
    • Riesgo menor de falsos positivos (por ejemplo, si el archivo contiene metadatos de etiquetas de zombies)
  • Filtrar etiquetas asociadas a tipos específicos de protección
    • Configurable a través de mip::FileEngine::Configuración::SetLabelFilter()
  • Exponer datos de directiva al SDK de archivo
    • mip::FileEngine::GetPolicyDataXml()

SDK de directivas

  • Marcado de contenido dinámico para acciones de marca de agua/encabezado/pie de página:
    • Mip rellenará automáticamente campos como ${Item.Label}, ${Item.Name}, ${User.Name}, ${Event.DateTime}
    • mip::Identity se puede crear con el campo "nombre" fácil de usar que usa el marcado de contenido dinámico
    • Configurable a través de mip::P olicyEngine::Configuración::SetVariableTextMarkingType()
  • Comprobar si el contenido está etiquetado sin red
    • mip::P olicyHandler::IsLabeled()
    • Riesgo menor de falsos positivos (por ejemplo, si el contenido contiene metadatos de etiquetas de zombies)
  • TTL de caché de directivas de etiquetas
    • Predeterminado: 30 días
    • Configurable a través de mip::P olicyProfile::SetCustomSettings()
  • Cambio de ruptura
    • PolicyEngine actualizado. Configuración. LabelFilter de la lista de enumeraciones al campo de bits con valores null.

SDK de protección

  • Licencia previa
    • La existencia de una licencia previa junto con el contenido cifrado, junto con un certificado de usuario recuperado previamente, permite el descifrado sin conexión del contenido
    • mip::P rotectionHandler::ConsumptionSettings se puede construir con una licencia previa
    • mip::P rotectionEngine::LoadUserCert| Async() captura el certificado de usuario que se almacena según la directiva de almacenamiento en caché de mip::P rotectionProfile
  • Comprobación de características específicas del servidor
    • Comprueba si el inquilino del usuario admite la característica "cifrar solo" (solo disponible en Azure RMS)
    • mip::P rotectionEngine::IsFeatureSupported()
  • Detalles más enriquecidos al capturar plantillas RMS
  • Cambios de ruptura
    • mip::ProtectionEngine::GetTemplates()vector<shared_ptr<string>> valor devuelto reemplazado vector<shared_ptr<mip::TemplateDescriptor>> por (C++)
    • mip::ProtectionEngine::Observer::OnGetTemplatesSuccess() Parámetro de shared_ptr<vector<string>> devolución de llamada reemplazado vector<shared_ptr<mip::TemplateDescriptor>> por (C++)
    • IProtectionEngine.GetTemplates| Valor devuelto Async() List<string> reemplazado por List<TemplateDescriptor> . (C#)
    • MIP_CC_ProtectionEngine_GetTemplates() mip_cc_guid* param reemplazado por mip_cc_template_descriptor* (API C)

C API

  • Cambios de ruptura:la mayoría de las funciones actualizadas para incluir mip_cc_error* pueden ser NULL

Actualizaciones de errores o excepciones

  • Resumen del control de errores:
    • AccessDeniedError: no se ha concedido al usuario derechos de acceso al contenido
      • NoAuthTokenError: la aplicación no proporciona token de autenticación
      • NoPermissionsError: no se han concedido derechos al usuario a contenido específico, pero el referrer/propietario está disponible
      • ServiceDisabledError: El servicio está deshabilitado para el usuario/dispositivo/plataforma/inquilino
    • AdhocProtectionRequiredError: Se debe establecer la protección ad hoc antes de establecer una etiqueta
    • BadInputError: Entrada no válida de usuario/aplicación
      • InsufficientBufferError: Entrada de búfer no válida de usuario/aplicación
      • LabelDisabledError: Id. de etiqueta se reconoce pero se deshabilita para su uso
      • LabelNotFoundError: Id. de etiqueta no reconocida
      • TemplateNotFoundError: Id. de plantilla no reconocida
    • ConsentDeniedError: una operación que requería el consentimiento del usuario o la aplicación no se le concedió el consentimiento
    • DeprecatedApiError: esta API ha quedado en desuso
    • FileIOError: No se pudo leer y escribir el archivo
    • InternalError: Error interno inesperado
    • NetworkError
      • ProxyAuthenticationError: se requiere autenticación de proxy
      • Category=BadResponse: Server returned unreadable HTTP response (retry might succeed)
      • Category=Cancelled: No se pudo establecer la conexión HTTP porque el usuario o la aplicación canceló la operación (reintentar probablemente se realizará correctamente)
      • Category=FailureResponseCode: El servidor ha devuelto una respuesta de error genérica (es posible que el reintento se vuelva a realizar correctamente)
      • Category=NoConnection: Error al establecer la conexión HTTP (reintentar puede ser correcta)
      • Category=Offline: No se pudo establecer la conexión HTTP porque la aplicación está en modo sin conexión (reintentar no se realiza correctamente)
      • Category=Proxy: No se pudo establecer la conexión HTTP debido a un problema de proxy (reintentar probablemente no se realiza correctamente)
      • Category=SSL: No se pudo establecer la conexión HTTP debido a un problema SSL (reintentar probablemente no se realiza correctamente)
      • Category=Throttled: Server returned "throttled" response (backoff/retry will probably succeed)
      • Category=Timeout: Error al establecer la conexión HTTP después del tiempo de espera (reintentar probablemente se realizará correctamente)
      • Category=UnexpectedResponse: Server returned unexpected data (retry might succeed)
    • NoPolicyError: inquilino o usuario no está configurado para etiquetas
    • NotSupportedError: operación no compatible en el estado actual
    • OperationCancelledError: se canceló la operación
    • PrivilegedRequiredError: No se puede modificar la etiqueta a menos que el método de asignación = priviledged
  • Cambios
    • Se ha quitado PolicySyncError sin usar. Reemplazado por NetworkError
    • Se ha quitado el error Desuso Desuso DesusoNetworkError. Reemplazado por categorías NetworkError

Versión 1.4.0

Fecha de lanzamiento:6 de noviembre de 2019

Esta versión presenta compatibilidad con el SDK de protección en el paquete .NET (Microsoft.InformationProtection.File).

Cambios en el SDK

  • Mejoras de rendimiento y correcciones de errores
  • Enumeración StorageType con nombre cambiado a CacheStorageType
  • Vínculos de Android a libc++ en lugar de a gnustl
  • Apis en desuso eliminadas anteriormente
    • File/Policy/Profile::Configuración debe inicializarse con un MipContext
    • File/Policy/Profile::Configuración path, application info, logger delegate, telemetry, and log level getters/setters have been removed. MipContext administra estas propiedades
  • Mejor compatibilidad con bibliotecas estáticas en plataformas de 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
    • Dependencias de terceros extraídas en bibliotecas independientes
      • libsqlite3.a
      • libssl.a
  • Eliminado mip_telemetry.dll (combinado en mip_core.dll)

SDK de archivo

  • RPMSG
    • Cifrado
    • Se ha agregado compatibilidad con el descifrado de cadenas8
  • Comportamiento de extensión PFILE configurable (predeterminado, {extension}. PFILE o P{extension})
    • ProtectionSettings::SetPFileExtensionBehavior

SDK de directivas

  • Api C completa
  • Configurar el filtrado de etiquetas asociadas a la protección
    • PolicyEngine::Settigns::SetLabelFilter()

SDK de protección

  • Apis en desuso eliminadas anteriormente
    • Removed ProtectionEngine::CreateProtectionHandlerFromDescriptor[Async] (use ProtectionEngine::CreateProtectionHandlerForPublishing[Async])
    • Removed ProtectionEngine::CreateProtectionHandlerFromPublishingLicense[Async] (use ProtectionEngine::CreateProtectionHandlerForConsumption[Async])
  • Completar C# API
  • Api C completa
    • La normalización de la API C cambia desde la vista previa de la API V1.3 C:
      • Cambiado de mip_cc_storage_type a mip_cc_cache_storage_type
      • Cambiado el MIP_CC_AddProtectionProfileEngine a MIP_CC_ProtectionProfile_AddEngine
      • Se ha cambiado MIP_CC_CreateProtectionEngineSettingsForExistingEngine a MIP_CC_CreateProtectionEngineSettingsWithEng
      • Se ha cambiado MIP_CC_CreateProtectionEngineSettingsForNewEngine a MIP_CC_CreateProtectionEngineSettingsWithIdentity
      • Cambiado de MIP_CC_SetProtectionProfileSettingsHttpDelegate a MIP_CC_ProtectionProfileSettings_SetHttpDelegate
      • Cambiado de MIP_CC_CreateProtectionHandlerForConsumption a MIP_CC_ProtectionEngine_CreateProtectionHandlerForConsumption
      • Cambiado de MIP_CC_CreateProtectionHandlerForPublishing a MIP_CC_ProtectionEngine_CreateProtectionHandlerForPublishing
      • Cambiado de MIP_CC_GetProtectionEngineId a MIP_CC_ProtectionEngine_GetEngineId
      • Cambiado el MIP_CC_GetProtectionEngineTemplates a MIP_CC_ProtectionEngine_GetTemplates
      • Cambiado de MIP_CC_GetProtectionEngineTemplatesSize a MIP_CC_ProtectionEngine_GetTemplatesSize
      • Se ha cambiado MIP_CC_SetTelemetryConfigurationHttpDelegate a MIP_CC_TelemetryConfiguration_SetHttpDelegate
      • Cambiado de MIP_CC_SetTelemetryConfigurationHostName a MIP_CC_TelemetryConfiguration_SetHostName
      • Cambiado el MIP_CC_SetTelemetryConfigurationIsLocalCachingEnabled a MIP_CC_TelemetryConfiguration_SetIsLocalCachingEnabled
      • Se ha cambiado MIP_CC_SetTelemetryConfigurationIsNetworkDetectionEnabled a MIP_CC_TelemetryConfiguration_SetIsNetworkDetectionEnabled
      • Cambiado el MIP_CC_SetTelemetryConfigurationIsTelemetryOptedOut a MIP_CC_TelemetryConfiguration_SetIsTelemetryOptedOut
      • Cambiado de MIP_CC_SetTelemetryConfigurationLibraryName a MIP_CC_TelemetryConfiguration_SetLibraryName
      • Se MIP_CC_ProtectionEngine_GetRightsForLabelIdSize y se MIP_CC_ProtectionEngine_GetRightsForLabelId para rellenar un mip_cc_string_list en lugar de un búfer de cadena separados por comas
      • Se MIP_CC_ProtectionHandler_GetRightsSize y se MIP_CC_ProtectionHandler_GetRights para rellenar un mip_cc_string_list en lugar de un búfer de cadena separados por comas
      • Se agregaron MIP_CC_ProtectionEngine_GetEngineIdSize y se MIP_CC_ProtectionEngine_GetEngineId para rellenar un búfer de cadena en lugar de un mip_cc_guid
      • MIP_CC_CreateProtectionDescriptorFromUserRights ahora toma "mip_cc_dictionary-" en lugar de "mip_cc_dictionary"
      • MIP_CC_ProtectionEngineSettings_SetCustomSettings ahora toma "mip_cc_dictionary-" en lugar de "mip_cc_dictionary"
      • MIP_CC_ProtectionProfileSettings_SetCustomSettings ahora toma "mip_cc_dictionary-" en lugar de "mip_cc_dictionary"
      • MIP_CC_TelemetryConfiguration_SetCustomSettings ahora toma "mip_cc_dictionary-" en lugar de "mip_cc_dictionary"
      • MIP_CC_CreateMipContext toma los params 'isOfflineOnly' y 'loggerDelegateOverride'

Versión 1.3.0

Fecha de lanzamiento:22 de agosto de 2019

Nuevas características

  • mip::MipContext es el nuevo objeto de nivel más alto.
  • Ahora se admite el descifrado de archivos MSG protegidos.
  • La inspección de archivos message.rpmsg se admite a través mip::FileInspector de y mip::FileHandler::InspectAsync() .
  • Es posible que ahora la caché en disco se cifra opcionalmente.
  • El SDK de protección ahora es compatible con los clientes en la nube chinos.
  • Compatibilidad con Arm64 en Android.
  • Compatibilidad con Arm64e en iOS.
  • La caché de licencia de usuario final (EUL) ahora se puede deshabilitar.
  • Es posible que el cifrado de .pfile se deshabilite a través de mip::FileEngine::EnablePFile
  • Rendimiento mejorado para las operaciones de protección reduciendo el número de llamadas HTTP
  • Se quitaron los detalles de identidad delegada de y, en su lugar, se agregaron a mip::IdentityDelegatedUserEmail , y y mip::FileEngine::Settingsmip::ProtectionSettingsmip::PolicyEngine::Settingsmip::ProtectionHandler 's y PublishingSettingsConsumptionSettings .
  • Las funciones que anteriormente devolvieron LabelId ahora devuelven un mip::Label objeto.

Cambios

  • En versiones anteriores, era necesario que llamara mip::ReleaseAllResources . La versión 1.3 reemplaza esto por mip::MipContext::~MipContext o mip::MipContext::Shutdown .
  • Eliminado ActionSource de mip::LabelingOptions y mip::ExecutionState::GetNewLabelActionSource
  • Reemplazado mip::ProtectionEngine::CreateProtectionHandlerFromDescriptor por mip::ProtectionEngine::CreateProtectionHandlerForPublishing .
  • Reemplazado mip::ProtectionEngine::CreateProtectionHandlerFromPublishingLicense por mip::ProtectionEngine::CreateProtectionHandlerForConsumption .
  • Se ha cambiado el nombre y se actualiza para mip::PublishingLicenseContextmip::PublishingLicenseInfo que contenga campos enriquecidos en lugar de bytes serializados sin procesar.
  • mip::PublishingLicenseInfo contiene los datos relevantes para MIP después de analizar una licencia de publicación (PL).
  • mip::TemplateNotFoundError y se produce cuando la aplicación pasa mip un id. de plantilla o id. de etiqueta mip::LabelNotFoundError que no se reconoce.
  • Se ha agregado compatibilidad con el acceso condicional basado en etiquetas mediante el parámetro de notificaciones AcquireToken() de y mip::AuthDelegate::OAuth2Challenge() . Esta funcionalidad aún no se ha expuesto a través del portal del Centro de seguridad y cumplimiento.

Versión 1.2.0

Fecha de lanzamiento:15 de abril de 2019

Nuevas características

  • El componente de telemetría ahora usa la misma pila HTTP que el resto de MIP, incluso si la aplicación cliente lo ha invalidado con HttpDelegate.
  • Las aplicaciones cliente pueden controlar el comportamiento de enhebrado de las tareas asincrónicas reemplazando TaskDispatcherDelegate en Perfiles.
  • El cifrado RPMSG ahora está en versión preliminar.
  • Alinear el comportamiento de control de excepciones del SDK de archivo/directiva con el SDK de protección:
    • ProxyAuthError generado por todos los SDK si un proxy está configurado para requerir autenticación.
    • NoAuthTokenError lanzado por todos los SDK si la implementación de mip::AuthDelegate::AcquireOAuth2Token proporciona un token de autenticación vacío.
  • El almacenamiento en caché HTTP mejorado para el SDK de directivas reduce el número de llamadas HTTP necesarias a la mitad.
  • Registros/auditoría/telemetría más enriquecidos para mejorar la detección y depuración de errores.
  • Compatibilidad con etiquetas externas o externas para facilitar la migración a etiquetas AIP.
  • Se ha habilitado la compatibilidad con aplicaciones de terceros para descargar tipos de confidencialidad desde SCC.
  • Se exponen y se pueden configurar más opciones de telemetría (comportamiento de almacenamiento en caché/enhebrado, etc.).

Cambios del SDK

  • mip_common.dll dividir en mip_core.dll y mip_telemetry.dll.
  • Mip::ContentState cambiado a mip::D ataState para describir cómo interactúa una aplicación con los datos en un nivel alto.
  • mip::AdhocProtectionRequiredError excepción se produce por FileHandler::SetLabel para notificar a una aplicación que primero debe aplicar protección ad hoc antes de aplicar una etiqueta.
  • mip::OperationCancelledError excepción se produce cuando se ha cancelado una operación (por ejemplo, debido a cierre o cancelación HTTP).
  • Nuevas API:
    • mip::ClassificationResult::GetSensitiveInformationDetections
    • mip::FileEngine::GetLastPolicyFetchTime
    • mip::FileEngine::GetDefaultSensitivityLabel
    • mip::FileEngine::GetPolicyId
    • mip::FileEngine::HasClassificationRules
    • mip::FileEngine::Configuración::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 devuelve std::vector < uint8_t en lugar de > std::string
    • mip::HttpRequest::GetId
    • mip::P olicyEngine::GetLastPolicyFetchTime
    • mip::P olicyEngine::GetPolicyId
    • mip::P olicyEngine::HasClassificationRules
    • mip::P olicyEngine::Configuración::SetCloudEndpointBaseUrl
    • mip::P rotectionDescriptor::GetContentId
    • (interfaz) mip::TaskDispatcherDelegate

Nuevos requisitos

  • mip::ReleaseAllResources debe llamarse antes de la finalización del proceso (después de borrar referencias a todos los perfiles, motores y controladores)
  • mip (interfaz) mip::ExecutionState::GetClassificationResults return type and "classificationIds" parameter has changed
  • (interfaz) mip::FileExecutionState::GetAuditMetadata se puede implementar mediante aplicaciones para especificar información detallada que se mostrará en el panel de auditoría de un administrador de inquilinos (por ejemplo, remitente, destinatarios, última modificación, etc.).
  • (interface) mip::FileExecutionState::GetClassificationResults return type has changed, and it now requires a FileHandler parameter
  • (interfaz) mip::FileExecutionState::GetDataState debe implementarse por las aplicaciones para especificar cómo interactúa una aplicación con contentIdentifier
  • (interface) mip::HttpDelegate interface requires 'CancelOperation' and 'CancelAllOperations' methods
  • (interface) mip::HttpDelegate interface 'Send' and 'SendAsync' return mip::HttpOperation instead of mip::HttpResponse
  • (interfaz) mip::HttpResponse::GetBody devuelve std::vector < uint8_t en lugar de > std::string
  • (interface) mip::HttpResponse interface requires 'GetId' method implementation
  • mip::ContentLabel::GetCreationTime devuelve std::chrono::time_point en lugar de std::string
  • mip::FileEngine::CreateFileHandlerAsync ya no acepta el parámetro "contentIdentifier".
  • mip::P olicyHandler::NotifyCommitedActions cambiado a mip::P olicyHandler::NotifyCommittedActions

Versión 1.1.0

Fecha de lanzamiento:15 de enero de 2019

Esta versión presenta compatibilidad con las siguientes plataformas:

  • .NET
  • SDK de iOS (SDK de directiva)
  • SDK de Android (SDK de directiva y SDK de protección)

Nuevas características

  • Compatibilidad con ADRMS
  • Las operaciones del SDK de protección son realmente asincrónicas (en Win32), lo que permite operaciones simultáneas de cifrado y descifrado sin bloqueo
    • Devoluciones de llamada de aplicación (AuthDelegate, HTTPDelegate, etc.) ahora puede invocarse en -any- hilo de fondo
  • Las propiedades de etiqueta personalizadas establecidas por los administradores de TI ahora se pueden leer a través de mip::Label::GetCustomSettings
  • La licencia de publicación serializada ahora se puede recuperar directamente desde un archivo sin ninguna operación HTTP a través de mip::FileHandler::GetSerializedPublishingLicense
  • Se notifica a las aplicaciones si se requiere una operación HTTP para completar la creación de un mip::FileEngine/mip::P olicyEngine a través de mip::FileProfile::Observer::OnAddPolicyEngineStarting/mip::P olicyProfile::Observer::OnAddEngineStarting
  • Detección de si el contenido protegido tiene una fecha de expiración o no se ha simplificado con el método de comodidad mip::P rotectionDescriptor::D oesContentExpire
  • Clasificación:
    • Tipos de confidencialidad (expresiones regex para CC#, passport #s, etc.) se pueden adquirir desde el servicio SCC
      • Habilitar característica estableciendo mip::FileEngine::Configuración/mip::P olicyEngine::Configuración flag
      • Tipos de lectura a través de mip::FileEngine::ListSensitivityTypes/mip::P olicyEngine::ListSensitivityTypes
    • Los resultados de clasificación de las utilidades de escáner de documentos externos se pueden alimentar a MIP para impulsar etiquetas recomendadas o necesarias en función del contenido del documento.
      • Pasar resultados a MIP a través de mip::FileExecutionState::GetClassificationResults/mip::ExecutionState::GetClassificationResults
      • mip::ApplyLabelAction y mip::RecommendLabelAction se pueden devolver mediante mip::P olicyEngine::ComputeActions cuando los resultados de clasificación coinciden con una regla de directiva que indica las etiquetas requeridas o recomendadas

Nuevos requisitos

  • Población forzada de campos id./nombre/versión mip::ApplicationInfo al crear mip::FileProfile, mip::P olicyProfile y mip::P rotectionProfile
  • Las aplicaciones deben implementar la nueva interfaz mip::FileExecutionState al crear mip::FileHandlers

Nuevas excepciones

  • mip::NoAuthTokenError se produce si AuthDelegate de la aplicación devuelve un token vacío (debido a la cancelación)
    • Se aplica a la creación de:
      • mip::FileEngine
      • mip::FileHandler
      • mip::P olicyEngine
      • mip::P rotectionHandler
  • mip::NoPolicyError se produce si el inquilino no está configurado para etiquetas
    • Se aplica a la creación de:
      • mip::FileEngine
      • mip::P olicyEngine
  • mip::ServiceDisabledError que se produce si el servicio RMS está deshabilitado para un usuario/dispositivo/plataforma/inquilino específico
    • Se aplica a la creación de:
      • mip::FileHandler
      • mip::P rotectionHandler
  • mip::NoPermissionsError se produce si un usuario no tiene derechos para descifrar un documento o si el contenido ha expirado
    • Se aplica a la creación de:
      • mip::FileHandler
      • mip::P rotectionHandler

Pasos siguientes

  • Vea Preguntas frecuentes y problemas del SDK de MIP para obtener información sobre plataformas compatibles y mucho más.
  • Consulte Configuración y configuración del SDK de MIP para obtener información sobre cómo empezar a usar el SDK de MIP.