Функция QueryContextAttributes (CredSSP)
Функция QueryContextAttributes (CredSSP) позволяет транспортному приложению запрашивать пакет безопасности credSSP для определенных атрибутов контекста безопасности.
Синтаксис
SECURITY_STATUS SEC_ENTRY QueryContextAttributes(
_In_ PCtxtHandle phContext,
_In_ ULONG ulAttribute,
_Out_ PVOID pBuffer
);
Параметры
-
phContext [in]
-
Дескриптор контекста безопасности для запроса.
-
ulAttribute [in]
-
Атрибут возвращаемого контекста. Этот параметр может принимать одно из указанных ниже значений. Если не указано иное, атрибуты применимы как к клиенту, так и к серверу.
Значение Значение - SECPKG_ATTR_C_ACCESS_TOKEN
- 0x80000012
Параметр pBuffer содержит указатель на структуру SecPkgContext_AccessToken , которая указывает маркер доступа для текущего контекста безопасности.
Этот атрибут поддерживается только на сервере.- SECPKG_ATTR_C_FULL_ACCESS_TOKEN
- 0x80000082
Параметр pBuffer содержит указатель на структуру SecPkgContext_AccessToken , которая указывает маркер доступа для текущего контекста безопасности.
Этот атрибут поддерживается только на сервере.- SECPKG_ATTR_CERT_TRUST_STATUS
- 0x80000084
Параметр pBuffer содержит указатель на структуру CERT_TRUST_STATUS , которая указывает сведения о доверии к сертификату.
Этот атрибут поддерживается только на клиенте.- SECPKG_ATTR_CREDS
- 0x80000080
Параметр pBuffer содержит указатель на структуру SecPkgContext_ClientCreds , указывающую учетные данные клиента.
Учетные данные клиента могут быть либо именем пользователя и паролем, либо именем пользователя и смарт-карта ПИН-кодом.
Этот атрибут поддерживается только на сервере.- SECPKG_ATTR_CREDS_2
- 0x80000086
Параметр pBuffer содержит указатель на структуру SecPkgContext_ClientCreds , указывающую учетные данные клиента.
Если учетные данные клиента — имя пользователя и пароль, буфер представляет собой упакованную KERB_INTERACTIVE_LOGON структуру.
Если учетные данные клиента — это имя пользователя, а смарт-код карта ПИН-код, буфер представляет собой упакованную KERB_CERTIFICATE_LOGON структуру.
Если учетные данные клиента являются учетными данными удостоверения в сети, буфер представляет собой маршалированную структуру SEC_WINNT_AUTH_IDENTITY_EX2 .
Этот атрибут поддерживается только на сервере CredSSP.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP: Это значение не поддерживается.- SECPKG_ATTR_NEGOTIATION_PACKAGE
- 0x80000081
Параметр pBuffer содержит указатель на структуру SecPkgContext_PackageInfo , которая указывает имя пакета проверки подлинности, согласованного поставщиком Microsoft Negotiate . - SECPKG_ATTR_PACKAGE_INFO
- 10
Параметр pBuffer содержит указатель на структуру SecPkgContext_PackageInfo.
Возвращает сведения об используемом поставщике общих служб.- SECPKG_ATTR_SERVER_AUTH_FLAGS
- 0x80000083
Параметр pBuffer содержит указатель на структуру SecPkgContext_Flags , которая указывает сведения о флагах в текущем контексте безопасности.
Этот атрибут поддерживается только на клиенте.- SECPKG_ATTR_SIZES
- 0x0
Параметр pBuffer содержит указатель на структуру SecPkgContext_Sizes .
Запрашивает размеры структур, используемых в функциях для каждого сообщения и обменах проверкой подлинности.- SECPKG_ATTR_SUBJECT_SECURITY_ATTRIBUTES
- 124
Параметр pBuffer содержит указатель на структуру SecPkgContext_SubjectAttributes .
Это значение возвращает сведения об атрибутах безопасности для подключения.
Это значение поддерживается только на сервере CredSSP.
Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP: Это значение не поддерживается. -
pBuffer [out]
-
Указатель на структуру, которая получает атрибуты. Тип структуры зависит от значения параметра ulAttribute .
Возвращаемое значение
Если функция завершается успешно, она возвращает SEC_E_OK.
Если функция завершается сбоем, она может вернуть следующие коды ошибок.
Возвращаемый код/значение | Описание |
---|---|
|
Сбой функции. Параметр phContext указывает дескриптор неполного контекста. |
|
Сбой функции. Недопустимое значение параметра ulAttribute . |
Комментарии
Структура, на которую указывает параметр pBuffer , зависит от запрашиваемого атрибута.
Хотя вызывающий объект должен выделить саму структуру pBuffer , поставщик общих служб выделяет любую память, необходимую для хранения элементов структуры pBuffer переменной величины. Память, выделенная поставщиком общих служб, должна быть освобождена путем вызова функции FreeContextBuffer .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows Vista [только классические приложения] |
Минимальная версия сервера |
Windows Server 2008 [только классические приложения] |
Заголовок |
|
Библиотека |
|
DLL |
|
Имя в кодировке Юникод и ANSI |
QueryContextAttributesW (Юникод) и QueryContextAttributesA (ANSI) |
См. также раздел