Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este Início Rápido mostra como usar mais SDKs de Proteção MIP. Usando um dos modelos de proteção listados no Início Rápido anterior, você usa um manipulador de proteção para criptografar texto ad hoc. A classe de manipulador Proteção expõe várias operações para aplicar/remover a proteção.
Pré-requisitos
Caso ainda não tenha feito isso, certifique-se de concluir os seguintes pré-requisitos antes de continuar:
- Complete o Início Rápido: Listar modelos de proteção (C#) primeiro, que constrói uma solução inicial no Visual Studio, para listar os modelos de proteção disponíveis para o usuário autenticado. Este Início Rápido "Criptografar/Descriptografar texto" baseia-se no anterior.
- Opcional: revise os conceitos de manipuladores de proteção no MIP SDK.
Adicionar lógica para definir e obter um modelo de proteção
Adicione lógica para criptografar o texto ad hoc usando o objeto do mecanismo de proteção.
Usando o Gerenciador de Soluções, abra o arquivo .cs em seu projeto que contém a implementação do método Main()'. Ele usa como padrão o mesmo nome do projeto que o contém, que você especificou durante a criação do projeto.
Perto do final do
Main()corpo, de onde você parou no Quickstart anterior, insira o seguinte código://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); 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();No final do bloco de
Main()desligamento do aplicativo criado no primeiro quickstart, adicione as linhas do manipulador:// Application Shutdown publishingHandler = null; consumptionHandler = null; protectionEngine = null; protectionProfile = null; mipContext = null;Substitua os valores de placeholders no código-fonte usando os seguintes valores:
Placeholder Valor <exemplo de texto> O texto de exemplo que você gostaria de criptografar, por exemplo: My secure text.<template-id> Uma ID de modelo, copiada da saída do console no Início Rápido anterior, por exemplo: bb7ed207-046a-4caf-9826-647cff56b990.
Criar e testar o aplicativo
Crie e teste seu aplicativo cliente.
Use CTRL-SHIFT-B (Build Solution) para criar seu aplicativo cliente. Se você não tiver erros de build, use F5 (Iniciar depuração) para executar seu aplicativo.
Se o projeto for compilado e executado com êxito, o aplicativo poderá solicitar a autenticação via MSAL sempre que o SDK chamar seu
AcquireToken()método. Se as credenciais armazenadas em cache já existirem, você não será solicitado a entrar e ver a lista de rótulos, seguido pelas informações sobre o rótulo aplicado e o arquivo modificado.
Original content: My secure text
Encrypted content: c?_hp???Q??+<?
Decrypted content: My secure text
Press a key to quit.