ICredentialProvider::SetSerialization 方法 (credentialprovider.h)
设置凭据提供程序的序列化特征。
语法
HRESULT SetSerialization(
[in] const CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcs
);
参数
[in] pcpcs
类型: const CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION*
指向存储凭据提供程序序列化特征 的 CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION 结构的指针。
返回值
类型: HRESULT
如果该方法成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。
注解
此方法是必需的。 它接受凭据,并确定 pcpcs 是部分凭据还是完整凭据。 如果它是部分凭据,则它要么不完整,要么是为了向用户显示某些信息而传递的。 如果是完整凭据,则应对其进行序列化和提交。 使用 CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION 的成员和 在 SetUsageScenario 中传递的标志来确定如何处理输入。 凭据提供程序负责验证输入的完整性。 凭据 UI 和登录 UI 在将结构传递给凭据提供程序之前不会对结构执行任何检查。
SetSerialization 始终在 SetUsageScenario 之后调用。 当筛选器通过 UpdateRemoteCredential 返回凭据时,登录 UI 还会调用 SetSerial 化。 由于调用 CredentialsChanged,它不会在重新枚举磁贴时使用此方法。 当应用程序请求输入凭据时,凭据 UI 会调用 SetSerialization 。
凭据 UI 根据调用 SetUsageScenario 时定义的此内容提供程序实例的 dwFlag 强制执行以下规则。
- 如果标志包含 CREDUIWIN_IN_CRED_ONLY,则启用所有返回 S_OK 的凭据提供程序。
- 如果标志包含 CREDUIWIN_AUTHPACKAGE_ONLY,则启用返回成功状态的所有凭据提供程序。
- 如果这两个标志都不包括在内,则凭据 UI 遵循与登录 UI 相同的逻辑,并且无论返回的状态值如何,实现 CREDENTIAL_PROVIDER_USAGE_SCENARIOCPUS_REDUI 的所有凭据提供程序都将启用。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
目标平台 | Windows |
标头 | credentialprovider.h |