如何从凭证提供程序调用提交

时间:2016-11-08 10:34:56

标签: windows login credential-providers

据我所知,当用户最终按下“提交”按钮时,将调用GetSerialization方法获取登录详细信息。

我正在编写一个Credential Provider,等待一些外部信号登录,我不希望用户按下Submit按钮。

是否可以从凭据提供程序触发提交事件?

2 个答案:

答案 0 :(得分:4)

我找到了办法。诀窍不是调用submit按钮,而是使用ICredentialProviderEvents::CredentialsChanged方法。我有一个线程在运行,最终会触发CredentialsChanged。然后,这将启用一个记录用户的新凭据。

这显示在Microsoft Sample SampleHardwareEventCredentialProvider

值得注意的是,Windows LogonUI会自动选择此新凭证。我不知道这是否在文档中,但这是我所经历的行为。

答案 1 :(得分:1)

更合适的方法是实现IConnectableCredentialProviderCredential接口,该接口是专门为此目的而设计的。