Partilhar via


Guia de início rápido: definir e obter um rótulo de sensibilidade (C#)

Este Guia de início rápido mostra como usar mais dos SDKs de arquivo MIP. Usando um dos rótulos de sensibilidade listados no Guia de início rápido anterior, você usa um manipulador de arquivos para definir/obter o rótulo em um arquivo. A classe File handler expõe várias operações para definir/obter rótulos ou proteção para tipos de arquivo suportados.

Pré-requisitos

Se ainda não o fez, certifique-se de que preenche os seguintes pré-requisitos antes de continuar:

Adicionar lógica para definir e obter um rótulo de sensibilidade

Adicione lógica para definir e obter um rótulo de sensibilidade em um arquivo, usando o objeto File engine.

  1. Usando o Gerenciador de Soluções, abra o arquivo de .cs em seu projeto que contém a implementação do método Main()'. O padrão é o mesmo nome do projeto que o contém, que você especificou durante a criação do projeto.

  2. No final do Main() corpo, após var fileEngine = e acima do //Application Shutdown comentário, insira o seguinte código:

      //Set paths and label ID
      string inputFilePath = "<input-file-path>";
      string actualFilePath = inputFilePath;
      string labelId = "<label-id>";
      string outputFilePath = "<output-file-path>";
      string actualOutputFilePath = outputFilePath;
    
      //Create a file handler for that file
      //Note: the 2nd inputFilePath is used to provide a human-readable content identifier for admin auditing.
      var handler = Task.Run(async () => await fileEngine.CreateFileHandlerAsync(inputFilePath, actualFilePath, true)).Result;
    
      //Set Labeling Options
      LabelingOptions labelingOptions = new LabelingOptions()
      {
           AssignmentMethod = AssignmentMethod.Standard
      };
    
      // Set a label on input file
      handler.SetLabel(fileEngine.GetLabelById(labelId), labelingOptions, new ProtectionSettings());
    
      // Commit changes, save as outputFilePath
      var result = Task.Run(async () => await handler.CommitAsync(outputFilePath)).Result;
    
      // Create a new handler to read the labeled file metadata
      var handlerModified = Task.Run(async () => await fileEngine.CreateFileHandlerAsync(outputFilePath, actualOutputFilePath, true)).Result;
    
      // Get the label from output file
      var contentLabel = handlerModified.Label;
      Console.WriteLine(string.Format("Getting the label committed to file: {0}", outputFilePath));
      Console.WriteLine(string.Format("File Label: {0} \r\nIsProtected: {1}", contentLabel.Label.Name, contentLabel.IsProtectionAppliedFromLabel.ToString()));
      Console.WriteLine("Press a key to continue.");
      Console.ReadKey();
    
  3. No final de localizar o bloco de desligamento do aplicativo criado no primeiro início rápido e descomente a linha do Main() manipulador:

    // Application Shutdown
    handler = null;
    fileEngine = null;
    fileProfile = null;
    mipContext = null;
    
  4. Substitua os valores de espaço reservado no código-fonte usando os seguintes valores:

    Marcador de Posição Valor
    <caminho do arquivo de entrada> O caminho completo para um arquivo de entrada de teste, por exemplo: c:\\Test\\Test.docx.
    <ID do rótulo> Um ID de rótulo de sensibilidade, copiado da saída do console no Guia de início rápido anterior, por exemplo: f42a3342-8706-4288-bd31-ebb85995028z.
    <caminho do arquivo de saída> O caminho completo para o arquivo de saída, que será uma cópia rotulada do arquivo de entrada, por exemplo: c:\\Test\\Test_labeled.docx.

Crie e teste o aplicativo

Crie e teste seu aplicativo cliente.

  1. Use CTRL-SHIFT-B (Build Solution) para criar seu aplicativo cliente. Se você não tiver erros de compilação, use F5 (Iniciar depuração) para executar seu aplicativo.

  2. Se o seu projeto for compilado e executado com êxito, o aplicativo poderá solicitar autenticação via ADAL cada vez que o SDK chamar seu AcquireToken() método. Se as credenciais em cache já existirem, você não será solicitado a entrar e ver a lista de rótulos, seguida pelas informações sobre o rótulo aplicado e o arquivo modificado.

Personal : 73c47c6a-eb00-4a6a-8e19-efaada66dee6
Public : 73254501-3d5b-4426-979a-657881dfcb1e
General : da480625-e536-430a-9a9e-028d16a29c59
Confidential : 569af77e-61ea-4deb-b7e6-79dc73653959
      Recipients Only (C) : d98c4267-727b-430e-a2d9-4181ca5265b0
      All Employees (C) : 2096f6a2-d2f7-48be-b329-b73aaa526e5d
      Anyone (not protected) (C) : 63a945ec-1131-420d-80da-2fedd15d3bc0
Highly Confidential : 905845d6-b548-439c-9ce5-73b2e06be157
      Recipients Only : 05ee72d9-1a75-441f-94e2-dca5cacfe012
      All Employees : 922b06ef-044b-44a3-a8aa-df12509d1bfe
      Anyone (not protected) : c83fc820-961d-40d4-ba12-c63f72a970a3
Press a key to continue.

 Applying Label ID 074e457c-5848-4542-9a6f-34a182080e7z to c:\Test\Test.docx
 Committing changes

 Label committed to file: c:\Test\Test_labeled.docx
 Press any key to continue.

 Getting the label committed to file: c:\Test\Test_labeled.docx
 File Label: Confidential
 IsProtected: false   
 Press any key to continue.

Você pode verificar a aplicação do rótulo, abrindo o arquivo de saída e inspecionando visualmente as configurações de proteção de informações do documento.

Nota

Se você estiver rotulando um documento do Office, mas não estiver conectado usando uma conta do locatário do Microsoft Entra onde o token de acesso foi obtido (e os rótulos de confidencialidade estiverem configurados), você poderá ser solicitado a entrar antes de abrir o documento rotulado.