Search code examples
windowsauthenticationcomwindows-authenticationcredential-providers

Call a com object using a credential provider


I want to create an application to login to windows which would make use of a QR code, graphical password and Kinect motion password for my school project.

I've learnt that I would need to make use of credential providers. This is my first time using it and am extremely confused.

My question is: Is it possible to create an application with the above, and then have the credential provider call the application? And does the application I make have to be a com object?

Thanks in advance!


Solution

  • Good news --- yes it's possible! Bad news --- you have a lot of work to do ;)
    As an advice, it's better if you keep your credential provider as simple as possible, and all work of user authentication via

    QR code, graphical password and Kinect motion password

    will put in another app. So that credential provider will pass entered credentials to that app, and will receive back a result of authentication. The app will do the most hard work. This app should be a windows service, because it's always running regarding of are there any user sessions or not. Communication between app and credential provider can be done for example, by named pipes, or any other ipc mechanism.

    For other questions:
    Credential provider by itself is a COM.
    To communicate with another apps, they aren't have to be a COM.
    You can any app from credential provider as far as you have sufficient rights.