c++ - Windows 中用于生物特征身份验证的凭据提供程序

标签 c++ windows biometrics winlogon credential-providers

我有一个定制的基于 USB 的指纹识别设备。 如何将设备上的指纹与 Windows 机器的用户相关联(使用 CredentialProvider)。首先,我希望在指纹扫描时自动登录,而不提示输入用户名/密码。

我意识到应该有一些注册过程来将指纹绑定(bind)到 Windows 用户;但我找不到这方面的任何技术资源。

提前致谢。

最佳答案

您需要创建一个支持 ICredentialProvider 和 ICredentialProviderCredential 接口(interface)的 COM 组件,登录可以在登录提示期间加载和枚举这些接口(interface)。这将使您能够创建可在“欢迎”屏幕中看到的 UI。

查看 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) 对用户进行身份验证。

关于c++ - Windows 中用于生物特征身份验证的凭据提供程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43631222/

相关文章:

C++ 程序寻找质数和计时本身

c++ - 在 Mac OSX el capitan 上使用 Qt 5.7 在 OpenGL 2.1 中创建带纹理的矩形

python - 识别处理器核心或worker id并行python

c++ - 确定程序是在Powershell还是CMD上运行

amazon-web-services - 使用 AWS Rekognition 检测 active

java - 如何在 Android 设备上制作 KeyDown 和 KeyUp?

c++ - 类数据成员不可访问

c++ - 遍历 C++ 映射时的奇怪行为

c# - add-windowsfeature 无法识别

android - 用指纹保护值(value)