Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этом кратком руководстве показано, как реализовать шаблон инициализации клиента, используемый оболочкой пакета SDK MIP для .NET во время выполнения.
Замечание
Действия, описанные в этом кратком руководстве, необходимы для любого клиентского приложения, использующего пакет SDK защиты MIP .NET. Это краткое руководство должно выполняться последовательно после инициализации приложений и реализации классов делегатов проверки подлинности и согласия.
Предпосылки
Если вы еще не сделали этого, обязательно выполните следующие действия.
- Выполните действия, описанные в настройке и конфигурации пакета SDK Microsoft Information Protection (MIP). В этом руководстве для быстрого старта по настройке профиля защиты и модуля опираются на правильную настройку пакета SDK.
- Необязательно:
- Просмотрите объекты профиля и движка. Объекты профиля и движка — это универсальные понятия, необходимые клиентам, использующим SDK для MIP-файлов, политик и защиты.
- Ознакомьтесь с концепциями проверки подлинности , чтобы узнать, как проверка подлинности и согласие реализованы пакетом SDK и клиентским приложением.
Создание решения и проекта Visual Studio
Сначала мы создадим и настроим начальное решение и проект Visual Studio, на основе которого будут создаваться другие быстрые учебные пособия.
Откройте Visual Studio 2017, выберите меню "Файл ", "Создать", "Проект". В диалоговом окне "Новый проект ":
В области слева в разделе "Установлен", Visual C# выберите "Рабочий стол Windows".
В центральной области выберите консольное приложение (.NET Framework)
В нижней области обновите имя проекта, расположение и соответствующее имя содержащего решения .
По завершении нажмите кнопку "ОК " в правом нижнем углу.
Добавьте пакет Nuget для пакета SDK для файлов MIP в проект:
- В обозревателе решений щелкните правой кнопкой мыши узел проекта (непосредственно в верхнем узле или узле решения) и выберите пункт "Управление пакетами NuGet..."
- Когда откроется вкладка Диспетчер пакетов NuGet в области вкладок группы редакторов:
- Выберите Обзор.
- В поле поиска введите "Microsoft.InformationProtection".
- Выберите пакет Microsoft.InformationProtection.File.
- Нажмите кнопку "Установить", а затем нажмите кнопку "ОК" при отображении диалогового окна подтверждения изменений предварительного просмотра .
Повторите описанные выше действия для добавления пакета ПАКЕТА SDK для защиты MIP, но вместо этого добавьте в приложение элемент Microsoft.IdentityModel.Clients.ActiveDirectory.
Реализация делегата проверки подлинности и делегата согласия
Если аутентификация и делегат согласия еще не реализованы, выполните инструкции, перечисленные в инициализации приложения SDK для файлов.
Инициализировать управляемую оболочку MIP SDK
В обозревателе решений откройте файл .cs в проекте, который содержит реализацию
Main()
метода. По умолчанию используется то же имя, что и проект, содержащий его, указанный во время создания проекта.Удалите созданную реализацию
main()
.Управляемая оболочка включает статический класс,
Microsoft.InformationProtection.MIP
, используемый для инициализации, созданияMipContext
, загрузки профилей и освобождения ресурсов. Чтобы инициализировать обертку для операций SDK для работы с файлами, вызовите функциюMIP.Initialize()
и передайтеMipComponent.Protection
для загрузки библиотек, необходимых для операций защиты.В
Main()
Program.cs добавьте следующий код, заменив <идентификатор> приложения идентификатором созданной ранее регистрации приложений Microsoft Entra.
using System;
using System.Threading.Tasks;
using Microsoft.InformationProtection;
using Microsoft.InformationProtection.Exceptions;
using Microsoft.InformationProtection.Protection;
namespace mip_sdk_dotnet_quickstart
{
class Program
{
private const string clientId = "<application-id>";
private const string appName = "<friendly-name>";
static void Main(string[] args)
{
//Initialize Wrapper for Protection SDK operations
MIP.Initialize(MipComponent.Protection);
}
}
}
Построить профиль защиты и движок
Как упоминалось, для клиентов пакета SDK с использованием API MIP требуются объекты профиля и движка. Выполните часть программирования этого краткого руководства, добавив код для загрузки собственных библиотек DLL, а затем создайте экземпляры объектов профиля и движка.
using System;
using System.Threading.Tasks;
using Microsoft.InformationProtection;
using Microsoft.InformationProtection.Exceptions;
using Microsoft.InformationProtection.Protection;
namespace mip_sdk_dotnet_quickstart
{
class Program
{
private const string clientId = "<application-id>";
private const string appName = "<friendly-name>";
static void Main(string[] args)
{
// Initialize Wrapper for Protection SDK operations.
MIP.Initialize(MipComponent.Protection);
// Create ApplicationInfo, setting the clientID from Azure AD App Registration as the ApplicationId.
ApplicationInfo appInfo = new ApplicationInfo()
{
ApplicationId = clientId,
ApplicationName = appName,
ApplicationVersion = "1.0.0"
};
// Instantiate the AuthDelegateImpl object, passing in AppInfo.
AuthDelegateImplementation authDelegate = new AuthDelegateImplementation(appInfo);
// Create MipConfiguration Object
MipConfiguration mipConfiguration = new MipConfiguration(appInfo, "mip_data", LogLevel.Trace, false);
// Create MipContext using Configuration
mipContext = MIP.CreateMipContext(mipConfiguration);
// Initialize and instantiate the ProtectionProfile.
// Create the ProtectionProfileSettings object.
// Initialize protection profile settings to create/use local state.
var profileSettings = new ProtectionProfileSettings(mipContext,
CacheStorageType.OnDiskEncrypted,
new ConsentDelegateImplementation());
// Load the Profile async and wait for the result.
var protectionProfile = Task.Run(async () => await MIP.LoadProtectionProfileAsync(profileSettings)).Result;
// Create a ProtectionEngineSettings object, then use that to add an engine to the profile.
var engineSettings = new ProtectionEngineSettings("[email protected]", authDelegate, "", "en-US");
engineSettings.Identity = new Identity("[email protected]");
var protectionEngine = Task.Run(async () => await protectionProfile.AddEngineAsync(engineSettings)).Result;
// Application Shutdown
// handler = null; // This will be used in later quick starts.
protectionEngine = null;
protectionProfile = null;
mipContext = null;
}
}
}
Замените значения заполнителей в исходном коде, вставляемом вами, с помощью следующих значений:
Замещающее поле Ценность Пример <идентификатор приложения> Идентификатор приложения Microsoft Entra, назначенный приложению, зарегистрированным в разделе "Настройка и конфигурация пакета SDK MIP" (2 экземпляра). 0edbblll-8773-44de-b87c-b8c6276d41eb <понятное имя> Пользовательское понятное имя для вашего приложения. Инициализация приложения Теперь выполните окончательную сборку приложения и устраните все ошибки. Код должен успешно выполнить сборку.
Дальнейшие шаги
Теперь, когда код инициализации завершен, вы готовы к следующему краткому старту, где начнете работать с SDK защиты MIP.