Пишем Наш Credential Provider На C# Для Авторизации В Windows.

Поставщик учетных данных, используемый для передачи учетных данных пользователя в стек безопасности Windows. По умолчанию система включает поставщиков паролей, PIN-кодов, смарт-карт и средств входа в Windows Hello. Однако что делать, если они нам не подходят? Поставщики учетных данных основаны на технологии COM и запускаются в процессе пользовательского интерфейса winlogon. Создание такого провайдера на C# уже описано в статье.

Стив Сайфус , однако его реализация не корректно обрабатывала разблокировку рабочей станции, и возникло желание переписать код в фреймворке Net Core, с которым мне чаще всего приходится работать.

Чтобы начать разработку, вам необходимо настроить COM-взаимодействие, которое позволит вам вызывать код .

NET из COM-компонентов.

Для взаимодействия необходимо правильно настроить интерфейсы; для этого вы можете использовать определения MSDN или используйте упрощенный вариант с использованием файла IDL, который определяет необходимые интерфейсы из Windows SDK. Все, что вам нужно сделать, это преобразовать его в библиотеку типов, а затем преобразовать в сборку .

NET. Для компиляции библиотеки типов используется утилита Midl.exe, но перед ее использованием необходимо отредактировать файл credentialprovider.idl. Как оказалось, если использовать этот файл без изменения, то некоторые методы в интерфейсах недоступны, чтобы это исправить нужно переместить объявление CLSID в начало файла.

   

// C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\credentialprovider.idl [ uuid(d545db01-e522-4a63-af83-d8ddf954004f), // LIBID_CredentialProviders ] library CredentialProviders {

Теги: #Windows Development #Windows #C++ #.

NET #winapi #поставщик учетных данных

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.