ICredentialProviderFilter::Filter 方法 (credentialprovider.h)
评估是否应允许凭据提供程序列表提供凭据磁贴。
语法
HRESULT Filter(
[in] CREDENTIAL_PROVIDER_USAGE_SCENARIO cpus,
[in] DWORD dwFlags,
[in] GUID *rgclsidProviders,
[in, out] BOOL *rgbAllow,
[in] DWORD cProviders
);
参数
[in] cpus
类型: CREDENTIAL_PROVIDER_USAGE_SCENARIO
指向 CREDENTIAL_PROVIDER_USAGE_SCENARIO 值的指针,该值声明支持凭据提供程序的方案。
[in] dwFlags
类型:DWORD
使用方案标志。 仅当 CPUS_CREDUI cpu 时 ,此参数才有效。 它们在 Wincred.h 中定义。
CREDUIWIN_GENERIC
正在请求纯文本用户名/密码。
CREDUIWIN_CHECKBOX
显示“ 保存凭据 ”复选框。
CREDUIWIN_AUTHPACKAGE_ONLY
只有支持输入身份验证包的凭据提供程序才应枚举。
CREDUIWIN_IN_CRED_ONLY
只应枚举特定身份验证包的传入凭据。
CREDUIWIN_ENUMERATE_ADMINS
凭据提供程序应枚举管理员。
CREDUIWIN_ENUMERATE_CURRENT_USER
仅传入凭据
CREDUIWIN_PACK_32_WOW
[in] rgclsidProviders
类型: GUID*
指向凭据提供程序 CLSD 数组的指针。
[in, out] rgbAllow
类型: BOOL*
输入时,指向 BOOL 值数组的指针, rgclsidProviders 数组的每个对应成员各对应一个,全部初始化为 TRUE。
退出时,如果允许 rgclsidProviders 中的相应凭据提供程序提供凭据磁贴,则包含 TRUE;否则为 FALSE。
[in] cProviders
类型:DWORD
rgbAllow 或 rgclsidProviders 中的成员数 (它们应为相同的) 。
返回值
类型: HRESULT
始终返回 S_OK。
注解
在输入时,此方法接收两个并行数组; rgclsidProviders,其中包含凭据提供程序 CLSID 和 rgbAllow,其中包含相应 CLSID 的 BOOL 值。 ICredentialProviderFilter::Filter 查看 rgclsidProviders 中的每个凭据提供程序,并确定是否应允许凭据提供程序枚举 dwFlags 指定的方案的凭据磁贴。 如果这是可接受的,则 rgbAllow 中的相应条目设置为 TRUE。 如果这是不可接受的,则将其设置为 FALSE。
永远不要筛选出你不知道的凭据提供程序的 CLSID。
如果 cpus CPUS_CREDUI并且传入了CREDUIWIN_GENERIC的 dwFlags 值,请不要进行筛选。
从 方法返回成功且不修改 rgbAllow 是合法的。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
目标平台 | Windows |
标头 | credentialprovider.h |