Метод 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. Они определены в 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*
Указатель на массив идентификаторов CLSID поставщика учетных данных.
[in, out] rgbAllow
Тип: BOOL*
При входе указатель на массив значений BOOL , по одному для каждого соответствующего члена массива rgclsidProviders , инициализируется значением TRUE.
При выходе содержит значение TRUE , если соответствующему поставщику учетных данных в rgclsidProviders разрешено предоставлять плитку учетных данных; в противном случае — FALSE.
[in] cProviders
Тип: DWORD
Количество элементов в rgbAllow или rgclsidProviders (они должны быть одинаковыми).
Возвращаемое значение
Тип: HRESULT
Всегда возвращает S_OK.
Комментарии
При входе этот метод получает два параллельных массива; rgclsidProviders, который содержит идентификаторы CLSID поставщика учетных данных и rgbAllow, который содержит значения BOOL для соответствующих идентификаторов CLSID. ICredentialProviderFilter::Filter проверяет каждый поставщик учетных данных в rgclsidProviders и решает, следует ли разрешить поставщику учетных данных перечислять плитки учетных данных для сценария, заданного dwFlags. Если это допустимо, соответствующая запись в rgbAllow имеет значение TRUE. Если это неприемлемо, устанавливается значение FALSE.
Никогда не отфильтруйте ИДЕНТИФИКАТОР CLSID для поставщика учетных данных, о который вы не знаете.
Не фильтруйте , если ЦП CPUS_CREDUI и передается значение dwFlags CREDUIWIN_GENERIC.
Допустимо возвращать успешное выполнение из метода, а не изменять rgbAllow.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | credentialprovider.h |