Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этом кратком руководстве показано, как использовать больше пакетов SDK для файлов MIP. Используя одну из меток конфиденциальности, перечисленных в предыдущем кратком руководстве, вы используете обработчик файлов для задания и получения метки в файле. Класс обработчика файлов предоставляет различные операции для настройки и получения меток или защиты для поддерживаемых типов файлов.
Предпосылки
Если вы еще не сделали этого, перед продолжением обязательно выполните следующие предварительные требования:
- Завершите выполнение Краткое руководство: Перечисление меток конфиденциальности (C#) сперва, чтобы создать начальное решение Visual Studio для перечисления меток конфиденциальности организации. Это краткое руководство "Установить и получить метку конфиденциальности" основывается на предыдущем.
- При необходимости: изучите понятия обработчиков файлов в MIP SDK.
Добавление логики для установки и получения метки конфиденциальности
Добавьте логику для задания и получения метки конфиденциальности в файле с помощью объекта обработчика файлов.
В обозревателе решений откройте файл .cs в проекте, который содержит реализацию метода Main()". По умолчанию используется то же имя, что и проект, содержащий его, указанный во время создания проекта.
Ближе к концу
Main()тела, послеvar fileEngine =и перед//Application Shutdownпримечанием вставьте следующий код://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();В конце
Main()найдите блок завершения приложения, созданный в первом кратком руководстве, и раскомментируйте строку обработчика:// Application Shutdown handler = null; fileEngine = null; fileProfile = null; mipContext = null;Замените значения заполнителей в исходном коде следующими значениями:
Замещающее поле Ценность <путь к входному файлу> Полный путь к тестовому входному файлу, например: c:\\Test\\Test.docx<label-id> Идентификатор метки конфиденциальности, скопированный из выходных данных консоли в предыдущем быстром начале, например: f42a3342-8706-4288-bd31-ebb85995028z.<путь к выходным файлам> Полный путь к выходному файлу, который будет помечен копией входного файла, например: c:\\Test\\Test_labeled.docx
Создание и тестирование приложения
Создайте и протестируйте клиентское приложение.
Используйте CTRL-SHIFT-B (Построить решение) для создания клиентского приложения. Если у вас нет ошибок сборки, используйте F5 (начать отладку) для запуска приложения.
Если проект успешно выполняется и запускается, приложение может запросить аутентификацию через ADAL каждый раз, когда пакет SDK вызывает ваш
AcquireToken()метод. Если кэшированные учетные данные уже существуют, вам не будет предложено войти в систему и просмотреть список меток, а затем сведения о примененной метке и измененном файле.
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.
Вы можете проверить приложение метки, открыв выходной файл и визуально проверяя параметры защиты информации документа.
Примечание.
Если вы подписываете меткой документ Office, но не выполнили вход с помощью учетной записи из арендатора Microsoft Entra, где был получен токен доступа (и метки конфиденциальности настроены), вам может потребоваться войти в систему, прежде чем открыть документ с метками.