Интерфейс ICredentialProviderCredential2 (credentialprovider.h)

Расширяет интерфейс ICredentialProviderCredential , добавив метод, который получает идентификатор безопасности пользователя. Учетные данные связаны с этим пользователем и могут быть сгруппированы по плитке пользователя.

Наследование

Интерфейс ICredentialProviderCredential2 наследуется от ICredentialProviderCredential. ICredentialProviderCredential2 также имеет следующие типы элементов:

Методы

Интерфейс ICredentialProviderCredential2 имеет эти методы.

 
ICredentialProviderCredential2::GetUserSid

Извлекает идентификатор безопасности пользователя, связанного с данными учетными данными.

Комментарии

Этот класс необходим для создания поставщика учетных данных версии 2. Поставщики учетных данных версии 2 предоставляют персонализированный вход для пользователя. Это происходит поставщиком учетных данных, сообщая пользовательскому интерфейсу входа, какие параметры входа доступны для пользователя. Рекомендуется, чтобы новые поставщики учетных данных были поставщиками учетных данных версии 2.

Чтобы создать экземпляр ICredentialProviderCredential2 , необходимо вернуть допустимый идентификатор безопасности функцией GetUserSid . Допустимый определяется возвращаемым идентификатором безопасности для одного из пользователей, перечисляемых в пользовательском интерфейсе входа.

Полезное средство для получения доступных пользователей и определения тех, с которыми вы хотите связаться, — это объект ICredentialProviderUserArray . Этот объект содержит список объектов ICredentialProviderUser , которые можно запросить для получения сведений о пользователях, которые будут перечисляться. Например, можно получить идентификатор безопасности пользователя или имя пользователя с помощью GetStringValue с переданным параметром PKEY_Identity_PrimarySid или PKEY_Identity_USerName соответственно. Вы даже можете фильтровать результаты с помощью SetProviderFilter , чтобы отобразить только подмножество доступных пользователей.

Использование ICredentialProviderUserArray является необязательным, но это удобный способ получения необходимых сведений для внесения допустимых значений SID. Чтобы получить список пользователей, которые будут перечисляться в пользовательском интерфейсе входа, реализуйте интерфейс ICredentialProviderSetUserArray , чтобы получить объект ICredentialProviderUserArray из SetUserArray. Пользовательский интерфейс входа вызывает SetUserArray перед GetCredentialCount, поэтому объект ICredentialProviderUserArray готов, когда поставщик учетных данных будет возвращать учетные данные.

Поставщик учетных данных версии 2 представлен значком, отображаемым под ссылкой "Параметры входа". Чтобы предоставить значок для поставщика учетных данных, определите CREDENTIAL_PROVIDER_FIELD_TYPECPFT_TILE_IMAGE в самом учетных данных. Затем убедитесь, что для guidFieldTypeCREDENTIAL_PROVIDER_FIELD_DESCRIPTOR задано значение CPFG_CREDENTIAL_PROVIDER_LOGO. Рекомендуемый размер значка составляет 72 на 72 пикселя.

Аналогично указанию значка для поставщика учетных данных, можно также указать текстовую строку для идентификации поставщика учетных данных. Эта строка отображается во всплывающем окне при наведении указателя мыши на значок. Для этого определите CREDENTIAL_PROVIDER_FIELD_TYPECPFT_SMALL_TEXT в самом учетных данных. Затем убедитесь, что для guidFieldTypeCREDENTIAL_PROVIDER_FIELD_DESCRIPTOR задано значение CPFG_CREDENTIAL_PROVIDER_LABEL. Эта строка должна дополнять описанный выше значок поставщика учетных данных и быть описательным, чтобы пользователи понимали, что это такое. Например, описание поставщика пароля рисунка — "Пароль рисунка".

Когда следует реализовать

Реализуйте этот интерфейс для связывания плиток учетных данных с определенными плитками пользователей в пользовательском интерфейсе входа.

Требования

   
Минимальная версия клиента Windows 8 [только классические приложения]
Минимальная версия сервера Windows Server 2012 [только классические приложения]
Целевая платформа Windows
Header credentialprovider.h

См. также раздел

Поставщики учетных данных в Windows 10

ICredentialProviderCredential

ICredentialProviderCredentialEvents2