Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Ce guide de démarrage rapide vous montre comment utiliser davantage de kits SDK de fichiers MIP. À l’aide de l’une des étiquettes de confidentialité que vous avez répertoriées dans le guide de démarrage rapide précédent, vous utilisez un gestionnaire de fichiers pour définir/obtenir l’étiquette sur un fichier. La classe de gestionnaire de fichiers expose différentes opérations pour définir/obtenir des étiquettes ou une protection pour les types de fichiers pris en charge.
Prerequisites
Si ce n’est déjà fait, veillez à remplir les conditions préalables suivantes avant de continuer :
- Terminez d'abord le Démarrage rapide : répertoriez les étiquettes de sensibilité (C#), qui crée une solution de démarrage Visual Studio, pour lister les étiquettes de sensibilité d'une organisation. Ce guide de démarrage rapide « Définir et obtenir une étiquette de confidentialité » s’appuie sur le précédent.
- Si vous le souhaitez , passez en revue les gestionnaires de fichiers dans les concepts du Kit de développement logiciel (SDK) MIP .
Ajouter une logique pour définir et obtenir une étiquette de sensibilité
Ajoutez une logique pour définir et obtenir une étiquette de confidentialité sur un fichier, à l’aide de l’objet moteur de fichiers.
À l’aide de l’Explorateur de solutions, ouvrez le fichier .cs dans votre projet qui contient l’implémentation de la méthode Main(). Il a par défaut le même nom que le projet qui le contient, que vous avez spécifié lors de la création du projet.
Vers la fin du
Main()corps, aprèsvar fileEngine =et au-dessus du//Application Shutdowncommentaire, insérez le code suivant ://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();À la fin de
Main(), trouvez le bloc d'arrêt de l'application créé dans le premier démarrage rapide et décommentez la ligne du gestionnaire :// Application Shutdown handler = null; fileEngine = null; fileProfile = null; mipContext = null;Remplacez les valeurs de remplacement dans le code source en utilisant les valeurs suivantes :
Espace réservé Valeur <chemin du fichier d'entrée> Chemin complet d’un fichier d’entrée de test, par exemple : c:\\Test\\Test.docx.<label-id> ID d'étiquette de sensibilité, copié depuis la sortie de la console dans le Quickstart précédent, par exemple : f42a3342-8706-4288-bd31-ebb85995028z.<output-file-path> Chemin complet du fichier de sortie, qui sera une copie étiquetée du fichier d’entrée, par exemple : c:\\Test\\Test_labeled.docx.
Concevoir et tester l’application
Générez et testez votre application cliente.
Utilisez ctrl-SHIFT-B (générer la solution) pour générer votre application cliente. Si vous n’avez aucune erreur de build, utilisez F5 (Démarrer le débogage) pour exécuter votre application.
Si votre projet génère et s’exécute correctement, l’application peut demander l’authentification via ADAL chaque fois que le SDK appelle votre
AcquireToken()méthode. Si des informations d’identification mises en cache existent déjà, vous ne serez pas invité à vous connecter et à afficher la liste des étiquettes, suivie des informations sur l’étiquette appliquée et le fichier modifié.
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.
Vous pouvez vérifier l’application de l’étiquette en ouvrant le fichier de sortie et en inspectant visuellement les paramètres de protection des informations du document.
Note
Si vous étiquetez un document Office, mais que vous n’êtes pas connecté(e) à l’aide d’un compte provenant du locataire Microsoft Entra où le jeton d’accès a été obtenu (et que les étiquettes de sensibilité sont configurées), vous pouvez être invité(e) à vous reconnecter avant de pouvoir ouvrir le document étiqueté.