是否可以使用Custom Credential Provider进行Windows登录而无需本地用户的真实密码?
我已经可以从Microsoft安装/注册示例代码,甚至可以对其进行调试。
我对该机制的期望:用户输入一些密码,并且我的实现与我的密码的本地数据库(存储为sqlite数据库)进行一些比较。
现实:本地用户密码必须在以下位置传递给LSA子系统
ICredentialProviderCredential::GetSerialization(...)
坦率地说,我正在尝试使用某种一次性优惠券代码作为密码来登录类似自助服务终端的工作站。
答案 0 :(得分:2)
这是开发自定义凭据提供程序的主要原因。
您的提供者必须将认证信息返回到Logon UI
或Cred UI
。它可以是登录名/密码对或基于证书的身份验证。
您可以在数据库内部存储真实用户的密码,并在检查自己的OTP之后将其返回。