0

我想创建一个应用程序来登录 Windows,该应用程序将使用 QR 码、图形密码和 Kinect 运动密码用于我的学校项目。

我了解到我需要使用凭证提供程序。这是我第一次使用它,我非常困惑。

我的问题是:是否可以使用上述创建应用程序,然后让凭据提供程序调用该应用程序?我制作的应用程序是否必须是 com 对象?

提前致谢!

4

2 回答 2

1

好消息——是的,有可能!坏消息 --- 你有很多工作要做;)
作为建议,最好让你的凭证提供者尽可能简单,并且所有用户身份验证工作都通过

二维码、图形密码和 Kinect 运动密码

将放入另一个应用程序。因此,凭据提供程序会将输入的凭据传递给该应用程序,并会收到身份验证结果。该应用程序将做最艰苦的工作。这个应用程序应该是一个 Windows 服务,因为它总是在运行关于是否有任何用户会话。例如,应用程序和凭证提供者之间的通信可以通过命名管道或任何其他 ipc 机制来完成。

对于其他问题:
凭据提供程序本身就是一个 COM。
要与其他应用程序通信,它们不必是 COM。
只要您有足够的权限,您就可以从凭证提供者那里获得任何应用程序。

于 2012-12-03T10:46:36.553 回答
1

该进程不必是服务,您可以从 COM 对象启动 exe。

您可以做的是 regasm / codebase 您的 COM 对象,然后从 Initialize() 中的 Credential Provider 后期绑定到它

在 GetSerialization() 中,您将调用 COM 对象中的方法,该方法启动进程(exe)并通过命名管道连接。它将您需要的值返回给凭据提供程序,然后您继续登录。

于 2013-04-08T15:35:17.643 回答