Shell Interfaces


ICredentialProviderCredential Interface

Exposes methods that enable the handling of a specific credential.

ICredentialProviderCredential Members

Advise Enables a credential to initiate events in the logon or credential user interface (UI) through a callback interface. This method should be called before other methods in ICredentialProviderCredential interface.
CommandLinkClicked Responds to a clicked-on link, as specified by the field ID.
GetBitmapValue Enables retrieval of bitmap data from a credential with a bitmap field.
GetCheckboxValue Retrieves the checkbox value.
GetComboBoxValueAt Gets the ComboBox value at the given index.
GetComboBoxValueCount Gets a count of the credential provider items in the given combo box, and designates which item should have initial selection.
GetFieldState Retrieves the field state.
GetSerialization Called in response to an attempt to submit this credential to the underlying authentication engine.
GetStringValue Enables retrieval of text from a credential with a text field.
GetSubmitButtonValue Gets the value of the submit button.
ReportResult Translates a received error status code into the appropriate user-readable message.
SetCheckboxValue Set the CheckBox value.
SetComboBoxSelectedValue Sets the selected value of the ComboBox.
SetDeselected Called when a credential loses selection.
SetSelected Called when a credential is selected. Enables the implementer to set logon characteristics.
SetStringValue Enables a credential with a text field to change that text using a logon or credential UI.
UnAdvise Used by the logon or credential UI to advise the credential that event callbacks are no longer accepted.

Remarks

When to Implement

ICredentialProviderCredential is implemented by outside parties providing a UI prompting for user credentials. Enumeration of user tiles cannot be done without an implementation of this interface.

Credential Provider Best Practices

Credential providers handle extremely sensitive user secrets in order to complete logon and unlock requests. As a best practice, secret information such as passwords and PINs should be handled with the utmost care. Proper techniques for handling secret information within a credential provider are:

  • Always securely discard secrets. To do this, call SecureZeroMemory before freeing the memory used to hold any secret.
  • Securely discard secrets promptly after they are used.
  • Securely discard secrets if they are not used for their intended purpose within an expected amount of time.

Interface Information

Inherits fromIUnknown
Header and IDL filescredentialprovider.h, credentialprovider.idl
Minimum operating systems Windows Vista
Page view tracker