CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR 结构 (credentialprovider.h)

描述凭据中的单个字段。 例如,字符串或用户图像。

语法

typedef struct _CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR {
  DWORD                          dwFieldID;
  CREDENTIAL_PROVIDER_FIELD_TYPE cpft;
  LPWSTR                         pszLabel;
  GUID                           guidFieldType;
} CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR;

成员

dwFieldID

类型:DWORD

字段的唯一 ID。 与给定凭据提供程序上的所有其他字段相比,字段应具有唯一标识符。 无论字段是显示还是隐藏,都是如此。

cpft

类型: CREDENTIAL_PROVIDER_FIELD_TYPE

字段类型。

pszLabel

类型: LPWSTR

指向缓冲区的指针,该缓冲区包含字段的友好名称(以 null 结尾的 Unicode 字符串)。 这用于辅助功能和排队目的。 例如,某些标准字段的友元名称为“用户名”、“密码”和“登录”。

guidFieldType

类型: GUID

唯一标识字段类型的 GUID。 此成员使你能够将现有凭据提供程序提供的功能包装在其自己的提供程序中。 不建议包装凭据提供程序,因为这可能会导致意外行为,从而禁用内置凭据提供程序。

下表列出了 Windows 支持的 guidFieldType 值。 这些定义在 Shlguid.h 中。

Value 含义
CPFG_LOGON_USERNAME
da15bbe8-954sd-4fd3-b0f4-1fb5b90b174b
在文本框中输入的用户名。
CPFG_LOGON_PASSWORD
60624cfa-a477-47b1-8a8e-3a4a19981827
在文本框中输入的密码。
CPFG_SMARTCARD_USERNAME
3e1ecf69-568c-4d96-9d59-46444174e2d6
从插入的智能卡获取的用户名。
CPFG_SMARTCARD_PIN
4fe5263b-9181-46c1-b0a4-9dedd4db7dea
从插入的智能卡获取的 PIN。
CPFG_CREDENTIAL_PROVIDER_LOGO
2d837775-f6cd-464e-a745-482fd0b47493
在 Windows 8 中引入:用于在登录页上表示凭据提供程序的图像。
CPFG_CREDENTIAL_PROVIDER_LABEL
286BBFF3-BAD4-438F-B007-79B7267C3D48
在 Windows 8 中引入:登录页上与凭据提供程序关联的标签。

注解

在磁贴上呈现给用户的每个 UI 元素都由凭据提供程序定义为字段。 CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR是凭据提供程序标识字段的方式。 为特定使用方案定义字段后,无法将其添加到或从中减去。 凭据提供程序需要在枚举磁贴之前完全定义其所有字段。 如果字段将在凭据获取过程中出现或消失,则这些字段仍未提前定义。 根据需要 使用CREDENTIAL_PROVIDER_FIELD_STATE 隐藏或显示字段。

要求

   
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
标头 credentialprovider.h