readme.txt revision d2236df2116a3cbe8b17c567f4a9c2281733a956
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncNote: This module is based on the official Microsoft Credential Provider examples, downloaded from
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsynchttp://www.microsoft.com/downloads/details.aspx?FamilyID=1287ec56-77b4-48c4-8b58-35b7295d6c2c&displaylang=en
2291faee92ebb5cc9722cd3f22e499900a5a411fvboxsync
546cd3313d635980a2cc168a79a58b4f0858d784vboxsyncBrief Description:
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync5384 (Beta 2)
a74782eac5771b0de57834e8c8c0247c55e8dd57vboxsyncWindows Vista Beta 2 Credential Provider Samples
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync
a74782eac5771b0de57834e8c8c0247c55e8dd57vboxsyncFile Name: Beta 2 Credential Provider Samples.zip
a74782eac5771b0de57834e8c8c0247c55e8dd57vboxsyncVersion: 1.0
a74782eac5771b0de57834e8c8c0247c55e8dd57vboxsyncDate Published: 6/25/2006
a74782eac5771b0de57834e8c8c0247c55e8dd57vboxsyncLanguage: English
a74782eac5771b0de57834e8c8c0247c55e8dd57vboxsyncDownload Size: 874 KB
a74782eac5771b0de57834e8c8c0247c55e8dd57vboxsync
a74782eac5771b0de57834e8c8c0247c55e8dd57vboxsync
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync//
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync// ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync// PARTICULAR PURPOSE.
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync//
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync// Copyright (c) 2006 Microsoft Corporation. All rights reserved.
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync//
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync//
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncOverview
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync--------
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncThis sample implements a simple credential provider. A credential provider allows a 3rd
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncparty to provide an alternate way of logging on. For example, a fingerprint solution vendor
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncwould write a credential provider to interact with the user and send the appropriate
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsynccredentials to the system for authentication. Questions should be sent to
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsynccredprov@microsoft.com.
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncThis sample implements a simplified credential provider that is based on the password
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsynccredential provider that ships with Windows Vista. When run, the credential provider
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncshould enumerate two tiles, one for the administrator and one for the guest account. Note
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncthat unless your machine is non-domain joined and you have enabled the guest account, it is
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsynclikely that the guest account is disabled and you will receive an error if you try to use that
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsynctile to log on.
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncPlease also see Windows Vista Credential Provider Samples Overview.doc, included in this package
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncHow to run this sample
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync--------------------------------
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncOnce you have built the project, copy samplecredentialprovider.dll to the System32 directory
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncon a Vista machine and run Register.reg from an elevated command prompt. The credential
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncshould appear the next time a logon is invoked (such as when logging off or rebooting the machine).
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncWhat this sample demonstrates
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync-----------------------------
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncThis sample demonstrates simple password based log on and unlock behavior. It also shows how to construct
cdd0348e21eb564698908d33dcd883dd4f54f669vboxsynca simple user tile and handle the user interaction with that tile.
cdd0348e21eb564698908d33dcd883dd4f54f669vboxsync
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncWhat this sample does not demonstrate
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync-------------------------------------
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync- other credential provider scenarios, like participating in credui or handling change password.
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync- every possible field that you can put in your user tile
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync- any network access prior to local authentication (the Pre-Logon Access Provider (PLAP) behavior)
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync- an event based credential provider (like a smartcard or fingerprint based system)
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncParts of the sample
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync-------------------
cdd0348e21eb564698908d33dcd883dd4f54f669vboxsynccommon.h - sets up what a tile looks like
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncCSampleCredential.h/CSampleCredential.cpp - implements ICredentialProviderCredential, which describes one tile
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncCSampleProvider.h/CSampleProvider.cpp - implements ICredentialProvider, which is the main interface used by LogonUI
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync to talk to a credential provider.
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsyncDll.h/Dll.cpp - standard dll setup for a dll that implements COM objects
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsynchelpers.h/helpers.cpp - useful functionality to deal with serializing credentials, UNICODE_STRING's, etc
aa6929adf39d3b1c4479a63d9537888fa83bcf65vboxsync