Поделиться через


Функция QueryCredentialsAttributesA (sspi.h)

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

Синтаксис

SECURITY_STATUS SEC_ENTRY QueryCredentialsAttributesA(
  [in]  PCredHandle   phCredential,
  [in]  unsigned long ulAttribute,
  [out] void          *pBuffer
);

Параметры

[in] phCredential

Дескриптор учетных данных для запроса.

[in] ulAttribute

Указывает атрибута для запроса. Этот параметр может быть любым из следующих атрибутов.

Ценность Значение
SECPKG_CRED_ATTR_CERT
Возвращает отпечаток сертификата в типа SecPkgCredentials_Cert.

Этот атрибут поддерживается только Kerberos.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP: Этот атрибут недоступен.

SECPKG_CRED_ATTR_NAMES
Возвращает имя учетных данных в типа SecPkgCredentials_Names.

Этот атрибут не поддерживается Schannel в режиме WOW64.

SECPKG_ATTR_SUPPORTED_ALGS
Возвращает поддерживаемые алгоритмы в типа SecPkgCred_SupportedAlgs. Все поддерживаемые алгоритмы включаются независимо от того, поддерживаются ли они предоставленным сертификатом или включены на локальном компьютере.

Этот атрибут поддерживается только Schannel.

SECPKG_ATTR_CIPHER_STRENGTHS
Возвращает сильные стороны шифра в типа SecPkgCred_CipherStrengths.

Этот атрибут поддерживается только Schannel.

SECPKG_ATTR_SUPPORTED_PROTOCOLS
Возвращает поддерживаемые алгоритмы в типа SecPkgCred_SupportedProtocols. Все поддерживаемые протоколы включаются независимо от того, поддерживаются ли они предоставленным сертификатом или включены на локальном компьютере.

Этот атрибут поддерживается только Schannel.

[out] pBuffer

Указатель на буфер, который получает запрошенный атрибут. Тип возвращаемой структуры зависит от значения ulAttribute.

Возвращаемое значение

Если функция выполнена успешно, возвращаемое значение SEC_E_OK.

Если функция завершается ошибкой, возвращаемое значение может быть одним из следующих кодов ошибок.

Возвращаемый код Описание
SEC_E_INVALID_HANDLE
Дескриптор, переданный функции, недопустим.
SEC_E_UNSUPPORTED_FUNCTION
Указанный атрибут не поддерживается Schannel. Это возвращаемое значение будет возвращено только при использовании Schannel SSP.
SEC_E_INSUFFICIENT_MEMORY
Доступной памяти недостаточно для выполнения запроса.

Замечания

Функция queryCredentialsAttributes позволяет приложению определить несколько характеристик учетных данных, включая имя, связанное с указанными учетными данными.

Запрос атрибута SECPKG_ATTR_CIPHER_STRENGTHS возвращает структуру SecPkgCred_CipherStrengths. Сила шифра в этой структуре совпадает с силой шифра в структуре SCH_CREDENTIALS, используемой при создании учетных данных.

примечание Приложение может найти силу шифра по умолчанию по умолчанию, запрашивая этот атрибут с учетными данными по умолчанию. Учетные данные по умолчанию создаются путем вызова AcquireCredentialsHandle с параметром NULLpAuthData.
 
Запрос атрибута SECPKG_ATTR_SUPPORTED_ALGS возвращает структуру SecPkgCred_SupportedAlgs. Алгоритмы в этой структуре совместимы с теми, которые указаны в структуре SCH_CREDENTIALS, используемой при создании учетных данных.

Запрос атрибута SECPKG_ATTR_SUPPORTED_PROTOCOLS возвращает структуру SecPkgCred_SupportedProtocols, содержащую битовый массив, совместимый с полем grbitEnabledProtocols структуры SCH_CREDENTIALS.

Вызывающий объект должен выделить структуру, на которую указывает параметр pBuffer. Пакет безопасности выделяет буфер для любого указателя, возвращенного в структуре pBuffer. Вызывающий объект может вызвать функцию FreeContextBuffer, чтобы освободить все указатели, выделенные пакетом безопасности.

Заметка

Заголовок sspi.h определяет QueryCredentialsAttributes как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows XP [только классические приложения]
минимальный поддерживаемый сервер Windows Server 2003 [только классические приложения]
целевая платформа Виндоус
заголовка sspi.h (include Security.h)
библиотеки Secur32.lib
DLL Secur32.dll

См. также

AcquireCredentialsHandle

FreeContextBuffer

SCH_CREDENTIALS

функций SSPI

SecPkgCred_CipherStrengths

SecPkgCred_SupportedAlgs

SecPkgCred_SupportedProtocols

SecPkgCredentials_Names