Guida introduttiva: Impostare e ottenere un'etichetta di riservatezza (C#)

Questa guida introduttiva illustra come usare più SDK di file MIP. Usando una delle etichette di riservatezza elencate nella guida introduttiva precedente, si usa un gestore file per impostare/ottenere l'etichetta in un file. La classe gestore file espone varie operazioni per l'impostazione/recupero di etichette o la protezione per i tipi di file supportati.

Prerequisiti

Se non è già stato fatto, assicurarsi di completare i prerequisiti seguenti prima di continuare:

Aggiungere la logica per impostare e ottenere un'etichetta di riservatezza

Aggiungere la logica per impostare e ottenere un'etichetta di riservatezza in un file usando l'oggetto Motore file.

  1. Usando Esplora soluzioni, aprire il file con estensione cs nel progetto che contiene l'implementazione del metodo Main()'. Per impostazione predefinita, il nome del progetto che lo contiene è stato specificato durante la creazione del progetto.

  2. Verso la fine del Main() corpo, dopo var fileEngine = e sopra il //Application Shutdown commento, inserire il codice seguente:

      //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. Alla fine di trovare il blocco di arresto dell'applicazione Main() creato nella prima guida introduttiva e rimuovere il commento dalla riga del gestore:

    // Application Shutdown
    handler = null;
    fileEngine = null;
    fileProfile = null;
    mipContext = null;
    
  4. Sostituire i valori segnaposto nel codice sorgente usando i valori seguenti:

    Segnaposto Valore
    <input-file-path> Percorso completo di un file di input di test, ad esempio : c:\\Test\\Test.docx.
    <label-id> ID etichetta di riservatezza, copiato dall'output della console nell'argomento di avvio rapido precedente, ad esempio: f42a3342-8706-4288-bd31-ebb85995028z.
    <output-file-path> Percorso completo del file di output, che sarà una copia etichettata del file di input, ad esempio : c:\\Test\\Test_labeled.docx.

Compilare e testare l'applicazione

Compilare e testare l'applicazione client.

  1. Usare CTRL-MAIUSC-B (Compila soluzione) per compilare l'applicazione client. Se non sono presenti errori di compilazione, usare F5 (Avvia debug) per eseguire l'applicazione.

  2. Se il progetto viene compilato ed eseguito correttamente, l'applicazione potrebbe richiedere l'autenticazione tramite ADAL ogni volta che l'SDK chiama il AcquireToken() metodo. Se le credenziali memorizzate nella cache esistono già, non verrà richiesto di accedere e visualizzare l'elenco delle etichette, seguite dalle informazioni sull'etichetta applicata e sul file modificato.

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.

È possibile verificare l'applicazione dell'etichetta aprendo il file di output e controllando visivamente le impostazioni di protezione delle informazioni del documento.

Nota

Se si assegna un'etichetta a un documento di Office, ma non si è connessi usando un account dal tenant di Microsoft Entra in cui è stato ottenuto il token di accesso (e vengono configurate le etichette di riservatezza), potrebbe essere richiesto di accedere prima di poter aprire il documento etichettato.