Preguntas más frecuentes sobre el SDK de Microsoft Information Protection (MIP)

En este artículo se responden preguntas comunes sobre el SDK de Microsoft Information Protection (MIP). Para ver problemas conocidos y mensajes de error, consulte Solución de problemas del SDK de MIP.

General

¿Cuántas etiquetas admite el SDK de MIP?

EL SDK de MIP admite hasta 500 etiquetas de confidencialidad cifradas. Las etiquetas que no usan cifrado no están sujetas a este límite. Los inquilinos con un gran número de etiquetas de confidencialidad pueden experimentar algún impacto en el rendimiento. Para obtener más información, consulte Limitaciones de etiquetas de confidencialidad.

¿Admite el SDK de MIP volver a etiquetar archivos de tipo .pfile con etiquetas de clasificación?

No, esto es por diseño porque los archivos pfile son tipos de archivo protegidos. Descifra con el etiquetador de archivos Microsoft Purview Information Protection antes de la clasificación.

¿Por qué los archivos protegidos descargados de Microsoft Teams no se pueden descifrar?

Se trata de un problema conocido en versiones no admitidas del SDK de MIP. Actualice a la versión más reciente del SDK de MIP.

¿Cómo puedo comprobar qué etiquetas se aplican cuando se aplican varias etiquetas de distintos inquilinos a un archivo?

Consulte el método GetLabel en el contexto del usuario para cada inquilino.

Cambios en el almacenamiento de metadatos

¿Se ven afectados otros formatos, como PDF?

Microsoft anunció un cambio en la ubicación de almacenamiento de metadatos de etiquetas para archivos de Office (Word, Excel y PowerPoint) para admitir nuevas características en Office 365, SharePoint Online y otros servicios. Ningún otro formato de archivo se ve afectado, solo los archivos de Office, específicamente Word, Excel y archivos PowerPoint.

¿Hay una versión específica del SDK de MIP necesaria?

El SDK de MIP versión 1.7 y posteriores son totalmente compatibles.

¿Hay una versión específica del cliente de Office necesaria para usar esta ubicación de almacenamiento?

Todos los clientes Aplicaciones Microsoft 365 publicados después de septiembre de 2021 admiten esta nueva ubicación de metadatos. La nueva ubicación de almacenamiento no se usa hasta que el administrador de inquilinos habilita la característica de coautoría protegida.

¿Se mantienen actualizados los metadatos existentes almacenados como una propiedad personalizada en *custom.xml*?

N.º La primera vez que guarde el documento después de habilitar la nueva ubicación de almacenamiento, los metadatos de etiqueta se mueven a la nueva ubicación. Los metadatos escritos mediante LabelingOptions.ExtendedProperties permanecen en custom.xml.

¿Es posible leer los metadatos de etiqueta sin el SDK de MIP?

Sí, pero debe implementar su propio código para analizar el archivo y extraer la información.

Actualmente, es fácil "leer" la etiqueta extrayendo las cadenas del par clave-valor del archivo. ¿Todavía se pueden leer metadatos de esta manera?

Sí, los metadatos siguen estando disponibles en el archivo XML de Office que se va a leer. La aplicación debe leer la configuración de coautoría del archivo de directiva para saber que el nuevo conjunto de características está habilitado. Esta configuración define dónde leer y escribir los datos de etiqueta (custom.xml frente alabelinfo.xml). Consulte MS-OFFCRYPTO: LabelInfo frente a propiedades personalizadas del documento para más detalles de implementación.

¿Cómo puedo determinar si la coautoría está habilitada en la directiva de etiqueta?

El motor de directivas devuelve el estado de la configuración de coautoría a partir del valor de la clave enableLabelCoauth. Una aplicación puede leer los bytes sin procesar del motor de políticas para determinar el estado de coautoría.

¿Cómo se migran las etiquetas a la nueva ubicación?

El SDK de MIP usa la siguiente lógica para determinar qué sección lee y usa para leer o escribir datos de etiquetas.

Action Característica no habilitada Característica habilitada
Lectura Etiqueta en custom.xml (desprotegido) o Doc SummaryInfo (protegido). Si existe una etiqueta en labelinfo.xml, es la etiqueta efectiva.
Si no hay ninguna etiqueta en labelinfo.xml, la etiqueta de custom.xml o Doc SummaryInfo es la etiqueta efectiva.
Escribir El SDK de MIP escribe todas las etiquetas nuevas en custom.xml (sin protección) o Doc SummaryInfo (protegido). El SDK de MIP escribe todas las etiquetas nuevas en labelinfo.xml.

Análisis de archivos

¿Puedo escribir en el mismo archivo que estoy leyendo actualmente con el SDK de archivos?

El SDK de MIP no admite la lectura simultánea y escritura del mismo archivo. Los archivos etiquetados dan como resultado una copia del archivo de entrada con las acciones de etiqueta aplicadas. La aplicación debe reemplazar el original por el archivo etiquetado.

Manejo de cadenas en el SDK

¿Cómo controla el SDK las cadenas y qué tipo de cadena debo usar en mi código?

El SDK está diseñado para usarse en múltiples plataformas y usa UTF-8 (formato de transformación Unicode de 8 bits) para el control de cadenas. Las instrucciones específicas dependen de la plataforma que use:

Platform Orientación
Windows nativo Para los clientes del SDK de C++, utilice el tipo std::string de la biblioteca estándar de C++ para pasar cadenas a las funciones de la API y recibirlas de ellas. El SDK de MIP administra internamente la conversión a UTF-8 o desde este. Cuando una API devuelve un std::string, debe asumir la codificación UTF-8 y gestionarla adecuadamente si convierte la cadena. En algunos casos, una API devuelve una cadena como parte de un uint8_t vector (como una licencia de publicación (PL)), pero debe tratarla como un blob opaco.

Para más información y ejemplos, consulte:
  • Función WideCharToMultiByte para obtener ayuda con la conversión de cadenas de caracteres anchas en varios bytes, como UTF-8.
  • Los siguientes archivos de ejemplo incluidos en Descarga del SDK:
    • Funciones de utilidad de cadena de ejemplo en file\samples\common\string_utils.cpp, para la conversión de cadenas UTF-8 anchas.
    • Implementación de wmain(int argc, wchar_t *argv[]) en file\samples\file\main.cpp, que usa las funciones de conversión de cadenas anteriores.
.NET Para los clientes del SDK de .NET, todas las cadenas usan la codificación UTF-16 predeterminada y no se necesita ninguna conversión especial. El SDK de MIP gestiona internamente la conversión a/de UTF-16.
Otras plataformas Todas las demás plataformas compatibles con el SDK de MIP tienen compatibilidad nativa con UTF-8.

Marcado de contenido

¿Admite el SDK de MIP el marcado de contenido?

El SDK de MIP no admite la aplicación directa de marcado de contenido, incluidos encabezados, pies de página o marcas de agua, en ningún archivo. Cuando el SDK de archivos escribe metadatos de la etiqueta en un archivo, escribe la propiedad de metadatos contentBits para indicar que el SDK de archivos aplicó protección (si está configurada). No escribe las propiedades que indican que la aplicación ha aplicado un encabezado, un pie de página o una marca de agua. Cuando una aplicación abre el archivo, la aplicación debe evaluar la configuración de marcado de contenido y escribirla en el archivo al guardar.

SDK de Protección y Política en Android

¿Qué biblioteca compartida debo usar para integrar el SDK de MIP en mi aplicación Android?

Los archivos binarios de Android del SDK de MIP incluyen libmip_core.so, libmip_protection_sdk.so, libmip_upe_sdk.soy libmip_unified.so. libmip_unified.so es la biblioteca recomendada e incluye las bibliotecas compartidas de núcleo, protección y directiva.

Compliance

¿Es compatible con Microsoft Information Protection SDK Federal Information Processing Standard (FIPS) 140-2?

Consulte Validación de FIPS 140-2.

Limitación

¿Hay límites de limitación basados en servicios al usar el SDK de MIP?

Rights Management Service, usado por el SDK de protección o por operaciones de protección en el SDK de archivos, tiene un límite de 7500 solicitudes por 10 segundos para toda una organización. Si la aplicación A genera 4000 solicitudes por 10 segundos y la aplicación B de la misma organización genera 4000 solicitudes por 10 segundos, ambas aplicaciones podrían empezar a recibir HTTP 429 Too Many Requests respuestas. Los desarrolladores deben implementar un período de retroceso cuando reciban estas excepciones. Las versiones futuras del SDK de MIP implementan este período de retroceso internamente.