Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функция QueryContextAttributes (Согласование) позволяет транспортному приложению запрашивать пакет безопасности "Согласование" для определенных атрибутовконтекста безопасности.
Синтаксис
SECURITY_STATUS SEC_ENTRY QueryContextAttributes(
_In_ PCtxtHandle phContext,
_In_ ULONG ulAttribute,
_Out_ PVOID pBuffer
);
Параметры
-
phContext [in]
-
Дескриптор контекста безопасности для запроса.
-
ulAttribute [in]
-
Указывает атрибут возвращаемого контекста. Этот параметр может быть одним из следующих значений.
Ценность Значение - SECPKG_ATTR_ACCESS_TOKEN
- 18
Параметр pBuffer содержит указатель на структуру SecPkgContext_AccessToken .
Возвращает дескриптор маркера доступа.- SECPKG_ATTR_AUTHORITY
- 6
Параметр pBuffer содержит указатель на структуру SecPkgContext_Authority .
Запрашивает имя центра проверки подлинности.- SECPKG_ATTR_CLIENT_SPECIFIED_TARGET
- двадцать семь
Параметр pBuffer содержит указатель на структуру SecPkgContext_ClientSpecifiedTarget , представляющую имя субъекта-службы (SPN) исходного целевого объекта, предоставленного клиентом.
Это значение поддерживается только при использовании привязок каналов.
Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP: это значение не поддерживается.- 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_DCE_INFO
- 3
Параметр pBuffer содержит указатель на структуру SecPkgContext_DceInfo .
Запросы данных авторизации, используемых службами DCE.- SECPKG_ATTR_FLAGS
- 14
Параметр pBuffer содержит указатель на структуру SecPkgContext_Flags .
Возвращает сведения о согласованных флагах контекста.- SECPKG_ATTR_KEY_INFO
- 5
Параметр pBuffer содержит указатель на структуру SecPkgContext_KeyInfo .
Запрашивает сведения о ключах, используемых в контексте безопасности.- SECPKG_ATTR_LAST_CLIENT_TOKEN_STATUS
- 30
Параметр pBuffer содержит указатель на структуру SecPkgContext_LastClientTokenStatus , которая указывает, является ли маркер из последнего вызова функции InitializeSecurityContext последним маркером клиента.
Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP: это значение не поддерживается.- SECPKG_ATTR_LIFESPAN
- 2
Параметр pBuffer содержит указатель на структуру SecPkgContext_Lifespan .
Запрашивает период жизни контекста.- SECPKG_ATTR_LOCAL_CRED
Параметр pBuffer содержит указатель на структуру SecPkgContext_LocalCredentialInfo . (устаревшее)
Заменены SECPKG_ATTR_LOCAL_CERT_CONTEXT.- SECPKG_ATTR_NAMES
- 1
Параметр pBuffer содержит указатель на структуру SecPkgContext_Names .
Запрашивает имя, связанное с контекстом.- SECPKG_ATTR_NATIVE_NAMES
- 13 (тринадцать)
Параметр pBuffer содержит указатель на структуру SecPkgContext_NativeNames .
Возвращает имя субъекта (CNAME) из исходящего билета.- SECPKG_ATTR_NEGOTIATION_INFO
- 12
Параметр pBuffer содержит указатель на SecPkgContext_NegotiationInfo структуру.
Возвращает сведения о пакете безопасности , который будет использоваться с процессом согласования и текущим состоянием переговоров по использованию этого пакета.- SECPKG_ATTR_PACKAGE_INFO
- 10
Параметр pBuffer содержит указатель на структуру SecPkgContext_PackageInfo .
Возвращает сведения об используемом поставщике служб SSP.- SECPKG_ATTR_PASSWORD_EXPIRY
- 8
Параметр pBuffer содержит указатель на SecPkgContext_PasswordExpiry структуру.
Возвращает сведения об истечении срока действия пароля.- SECPKG_ATTR_ROOT_STORE
- 0x55
Параметр pBuffer содержит указатель на HCERTCONTEXT.
Находит контекст сертификата, содержащий сертификат, предоставленный корневым хранилищем.- SECPKG_ATTR_SESSION_KEY
- 9
Параметр pBuffer содержит указатель на структуру SecPkgContext_SessionKey .
Возвращает сведения о ключах сеанса.- SECPKG_ATTR_SIZES
- 0
Параметр pBuffer содержит указатель на структуру SecPkgContext_Sizes .
Запрашивает размеры структур, используемых в функциях каждого сообщения.- SECPKG_ATTR_TARGET_INFORMATION
- 17
Параметр pBuffer содержит указатель на структуру SecPkgContext_TargetInformation .
Возвращает сведения о имени удаленного сервера. -
pBuffer [out]
-
Указатель на структуру, которая получает атрибуты. Тип структуры, на который указывает, зависит от значения, указанного в параметре ulAttribute .
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение SEC_E_OK.
Если функция завершается ошибкой, возвращаемое значение является ненулевом кодом ошибки.
Замечания
Структура, на которую указывает параметр pBuffer , зависит от запрашиваемого атрибута. Вызывающий объект должен выделить саму структуру pBuffer , но SSP выделяет любую память, необходимую для хранения элементов переменной размера структуры pBuffer . Память, выделенная поставщиком служб SSP, можно освободить, вызвав функцию FreeContextBuffer .
После чтения значения SECPKG_ATTR_REMOTE_CERT_CONTEXT или SECPKG_ATTR_LOCAL_CERT_CONTEXT член hCertStore будет иметь дескриптор хранилища сертификатов, содержащего промежуточные сертификаты, если таковые имеются. Кроме того, приложение отвечает за вызов CertFreeCertificateContext , чтобы освободить память, используемую контекстом сертификата.
Требования
| Требование | Ценность |
|---|---|
| Минимальный поддерживаемый клиент |
Windows XP [только классические приложения] |
| Минимальный поддерживаемый сервер |
Windows Server 2003 [только классические приложения] |
| Заголовок |
|
| Библиотека |
|
| DLL |
|
| Имена Юникода и ANSI |
QueryContextAttributesW (Юникод) и QueryContextAttributesA (ANSI) |
См. также