structure CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION (credentialprovider.h)
Contient des détails sur les informations d’identification.
Syntaxe
typedef struct _CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION {
ULONG ulAuthenticationPackage;
GUID clsidCredentialProvider;
ULONG cbSerialization;
byte *rgbSerialization;
} CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION;
Membres
ulAuthenticationPackage
Type : ULONG
Identificateur unique du package d’authentification. Ce paramètre est requis lors de l’appel de LsaLogonUser. Dans un scénario d’interface utilisateur d’informations d’identification, cette valeur est définie avant l’envoi d’une sérialisation via SetSerialization. Il s’agit de la même valeur que la valeur du package d’authentification retournée par LsaLookupAuthenticationPackage. Les fournisseurs de contenu peuvent utiliser ce paramètre pour déterminer s’ils sont en mesure de retourner des informations d’identification pour ce package d’authentification. Les développeurs qui écrivent leur propre package d’authentification peuvent fournir leur propre valeur.
clsidCredentialProvider
Type : GUID
CLSID du fournisseur d’informations d’identification. Les fournisseurs d’informations d’identification attribuent leur propre CLSID à ce membre lors de la sérialisation. L’interface utilisateur des informations d’identification ignore ce membre.
cbSerialization
Type : ULONG
Taille, en octets, des informations d’identification pointées par rgbSerialization.
rgbSerialization
Type : octet*
Tableau d’octets contenant des informations d’identification sérialisées. Le format exact de ces données dépend du package d’authentification ciblé par un fournisseur d’informations d’identification.
Remarques
Une fois que l’utilisateur a entré des informations d’identification dans une vignette d’informations d’identification, il doit être placé dans une mémoire tampon. L’empaquetage de ces informations est appelé sérialisation et est nécessaire, que le scénario utilise une interface utilisateur d’ouverture de session ou une interface utilisateur d’informations d’identification. Le CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION définit la structure pour la sérialisation. Après la sérialisation, l’endroit où la mémoire tampon est envoyée varie selon qu’il s’agit d’une interface utilisateur d’ouverture de session ou d’un scénario d’interface utilisateur d’informations d’identification. Avec une interface utilisateur d’ouverture de session, la mémoire tampon est passée à Winlogon. Dans le scénario d’interface utilisateur des informations d’identification, cette mémoire tampon est retournée à l’application appelante, puis l’utilise pour authentifier l’utilisateur.
Même si vous implémentez une CREDENTIAL_PROVIDER_USAGE_SCENARIO de CPUS_LOGON, vous n’appelez pas directement LsaLogonUser. Cet appel est géré par le système. Vous devez simplement transmettre vos informations d’identification à Winlogon.
Les informations d’identification d’entrée peuvent prendre de nombreuses formes différentes. Il est important que les fournisseurs d’informations d’identification soient robustes lors de la réception d’informations d’identification sérialisées. Cela peut inclure des informations d’identification incomplètes ou partielles. Dans de nombreux cas, une information d’identification d’entrée incomplète est un indicateur du type d’informations d’identification souhaité par l’appelant. L’un des cas où ce processus est utilisé est avec les appelants qui souhaitent uniquement collecter les informations d’identification de carte à puce de l’utilisateur. Pendant le scénario d’utilisation CPUS_LOGON , le système utilise SetSerialization pour renseigner certaines des informations d’un ordinateur distant. L’interface utilisateur d’ouverture de session appelle SetSerialization zéro ou une fois chaque cycle d’énumération.
Configuration requise
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
En-tête | credentialprovider.h |