Поставщик учетных данных в Windows для биометрической аутентификации

У меня есть пользовательское устройство распознавания отпечатков пальцев на основе USB. Как я могу связать отпечаток пальца на устройстве с пользователем компьютера Windows (с помощью CredentialProvider). Прежде всего, я хочу, чтобы при сканировании отпечатков пальцев автоматический вход в систему происходил без запроса имени пользователя / пароля.

Что я понимаю, что должен быть некоторый процесс регистрации, чтобы привязать отпечаток пальца к пользователю Windows; но я не могу найти какой-либо технический ресурс в этом направлении.

Заранее спасибо.

1 ответ

Вам потребуется создать COM-компонент, поддерживающий интерфейсы ICredentialProvider и ICredentialProviderCredential, которые при входе в систему можно загружать и перечислять при входе в систему. Это позволит вам создать пользовательский интерфейс, который можно увидеть на экране "приветствия".

Проверьте http://pgina.org/ - Часть C++ является фантастическим примером того, как вы можете достичь этого.

После загрузки компонента вам нужно будет проконсультироваться с "Техническим справочником поставщика учетных данных" для вашего конкретного порядка событий.

Согласно документу, вам нужно будет реализовать метод ICredentialProviderCredential::GetSerialization, который должен будет возвращать упакованные учетные данные, которые будут использоваться из LSA. Теперь у вас есть два варианта:

  1. Создайте пользовательский магазин, который сопоставит ваши данные отпечатков пальцев с именами пользователей, доменами и паролями в вашей базе данных. Вы сериализуете данные для аутентификации NTLM.

  2. Дополнительно создайте свою собственную SSP/AP, которая будет аутентифицировать пользователя с помощью вашего пользовательского механизма ( https://msdn.microsoft.com/en-us/library/windows/desktop/aa375200(v=vs.85).aspx).

Другие вопросы по тегам