Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este inicio rápido se muestra cómo usar más de los SDK de MIP Protection. Mediante una de las plantillas de protección que aparecen en el inicio rápido anterior, se usa un controlador de protección para cifrar texto ad hoc. La clase de controlador de protección expone varias operaciones para aplicar y quitar la protección.
Prerrequisitos
Si aún no lo ha hecho, asegúrese de completar los siguientes requisitos previos antes de continuar:
- Complete primero Inicio rápido: Enumeración de plantillas de protección (C#), que crea una solución básica de Visual Studio para mostrar las plantillas de protección disponibles para el usuario autenticado. Este inicio rápido "Cifrar y descifrar texto" se basa en el anterior.
- Por opción: revisa los conceptos de los controladores de protección en el SDK de MIP.
Añade lógica para establecer y obtener una plantilla de protección
Agregue lógica para cifrar texto ad hoc mediante el objeto del motor de protección.
En Explorador de soluciones, abra el archivo .cs en el proyecto que contiene la implementación del
Main()método . El valor predeterminado es el mismo nombre que el proyecto que lo contiene, que especificó durante la creación del proyecto.Hacia el final del
Main()cuerpo, donde dejó en el inicio rápido anterior, inserte el código siguiente://Set text to encrypt and template ID string inputText = "<Sample-text>"; string templateId = "<template-id>"; //Create a template based publishing descriptor ProtectionDescriptor protectionDescriptor = new ProtectionDescriptor(templateId); //Create publishing settings using protection descriptor PublishingSettings publishingSettings = new PublishingSettings(protectionDescriptor); //Generate Protection Handler for publishing var publishingHandler = Task.Run(async() => await protectionEngine.CreateProtectionHandlerForPublishingAsync(publishingSettings)).Result; //Encrypt text using Publishing handler long bufferSize = publishingHandler.GetProtectedContentLength(inputText.Length, true); byte[] inputTextBuffer = Encoding.ASCII.GetBytes(inputText); byte[] encryptedTextBuffer = new byte[bufferSize]; publishingHandler.EncryptBuffer(0, inputTextBuffer, encryptedTextBuffer, true); Console.WriteLine("Original text: {0}", inputText); Console.WriteLine("Encrypted text: {0}", Encoding.UTF8.GetString(encryptedTextBuffer)); //Create a Protection handler for consumption using the same publishing license var serializedPublishingLicense = publishingHandler.GetSerializedPublishingLicense(); PublishingLicenseInfo plInfo = PublishingLicenseInfo.GetPublishingLicenseInfo(serializedPublishingLicense, mipContext); ConsumptionSettings consumptionSettings = new ConsumptionSettings(plInfo); var consumptionHandler = protectionEngine.CreateProtectionHandlerForConsumption(consumptionSettings); //Use the handler to decrypt the encrypted text long buffersize = encryptedTextBuffer.Length; byte[] decryptedBuffer = new byte[bufferSize]; var bytesDecrypted = consumptionHandler.DecryptBuffer(0, encryptedTextBuffer, decryptedBuffer, true); byte[] OutputBuffer = new byte[bytesDecrypted]; for (int i = 0; i < bytesDecrypted; i++){ OutputBuffer[i] = decryptedBuffer[i]; } Console.WriteLine("Decrypted content: {0}", Encoding.UTF8.GetString(OutputBuffer)); Console.WriteLine("Press a key to quit."); Console.ReadKey();Hacia el final de
Main(), busque el bloque de cierre de la aplicación que creó la primera guía de inicio rápido y agregue las líneas del controlador:// Application Shutdown publishingHandler = null; consumptionHandler = null; protectionEngine = null; protectionProfile = null; mipContext = null;Reemplace los valores de marcador de posición en el código fuente mediante los valores siguientes:
Marcador de posición Importancia <texto de muestra> El texto de ejemplo que desea cifrar, por ejemplo: My secure text.<identificador de plantilla> Identificador de plantilla copiado de la salida de la consola en el inicio rápido anterior, por ejemplo: bb7ed207-046a-4caf-9826-647cff56b990.
Crear y probar la aplicación
Compile y pruebe la aplicación cliente.
Utilice Ctrl+Mayús+B (Compilar solución) para compilar su aplicación cliente. Si no tiene errores de compilación, use F5 (Iniciar depuración) para ejecutar la aplicación.
Si el proyecto se compila y se ejecuta correctamente, es posible que la aplicación solicite autenticación a través de MSAL cada vez que el SDK llame al
AcquireToken()método . Si ya existen credenciales almacenadas en caché, MSAL no le pide que inicie sesión y la aplicación muestre la lista de etiquetas, seguida de la información sobre la etiqueta aplicada y el archivo modificado.
Original content: My secure text
Encrypted content: c?_hp???Q??+<?
Decrypted content: My secure text
Press a key to quit.
Pasos siguientes
- Explore el ejemplo del SDK de protección de MIP .NET en GitHub.