我有一个定制的基于 USB 的指纹识别设备。 如何将设备上的指纹与 Windows 机器的用户相关联(使用 CredentialProvider)。首先,我希望在指纹扫描时自动登录,而不提示输入用户名/密码。
我意识到应该有一些注册过程来将指纹绑定(bind)到 Windows 用户;但我找不到这方面的任何技术资源。
提前致谢。
最佳答案
您需要创建一个支持 ICredentialProvider 和 ICredentialProviderCredential 接口(interface)的 COM 组件,登录可以在登录提示期间加载和枚举这些接口(interface)。这将使您能够创建可在“欢迎”屏幕中看到的 UI。
查看 http://pgina.org/ - C++ 部分是关于如何实现这一目标的绝佳示例。
加载组件后,您必须为您的特定事件顺序建议“凭证提供程序技术引用”。
根据文档,您需要实现方法 ICredentialProviderCredential::GetSerialization,该方法需要返回要从 LSA 使用的打包凭据。现在您有两个选择:
创建一个自定义存储,将您的指纹数据映射到您数据库中的用户名、域和密码组合。您序列化数据以进行 NTLM 身份验证。
另外创建您自己的 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/