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


Структура SecPkgInfoA (sspi.h)

Структура SecPkgInfo предоставляет общие сведения о пакете безопасности, например о его имени и возможностях.

Синтаксис

typedef struct _SecPkgInfoA {
  unsigned long  fCapabilities;
  unsigned short wVersion;
  unsigned short wRPCID;
  unsigned long  cbMaxToken;
  SEC_CHAR       *Name;
  SEC_CHAR       *Comment;
} SecPkgInfoA, *PSecPkgInfoA;

Члены

fCapabilities

Набор битовых флагов, описывающих возможности пакета безопасности. Этот элемент может быть сочетанием следующих флагов.

Ценность Значение
SECPKG_FLAG_INTEGRITY
0x1
Пакет безопасности поддерживает функции MakeSignature и VerifySignature.
SECPKG_FLAG_PRIVACY
0x2
Пакет безопасности поддерживает EncryptMessage (Общие) и функции DecryptMessage (Общие).
SECPKG_FLAG_TOKEN_ONLY
0x4
Пакет заинтересован только в части сообщений маркера безопасности и будет игнорировать любые другие буферы. Это проблема, связанная с производительностью.
SECPKG_FLAG_DATAGRAM
0x8
Поддерживает проверку подлинности диаграммы данныхстиле. Дополнительные сведения см. в семантике контекста SSPI.
Важные Пакет Microsoft Kerberos не поддерживает контексты диаграммы данных в пользовательском режиме.
 
SECPKG_FLAG_CONNECTION
0x10
Поддерживает проверку подлинности в стиле, ориентированной на подключение. Дополнительные сведения см. в семантике контекста SSPI.
SECPKG_FLAG_MULTI_REQUIRED
0x20
Для проверки подлинности требуется несколько ног.
SECPKG_FLAG_CLIENT_ONLY
0x40
Поддержка проверки подлинности сервера не предоставляется.
SECPKG_FLAG_EXTENDED_ERROR
0x80
Поддерживает расширенную обработку ошибок. Дополнительные сведения см. в расширенных сведений об ошибках.
SECPKG_FLAG_IMPERSONATION
0x100
Поддерживает олицетворение Windows в контекстах сервера.
SECPKG_FLAG_ACCEPT_WIN32_NAME
0x200
Общие сведения о именах субъектов и целевых объектов Windows.
SECPKG_FLAG_STREAM
0x400
Поддерживает семантику потока. Дополнительные сведения см. в семантике контекста SSPI.
SECPKG_FLAG_NEGOTIABLE
0X800
Может использоваться пакетом безопасности Microsoft Negotiate.
SECPKG_FLAG_GSS_COMPATIBLE
0x1000
Поддерживает совместимость GSS.
SECPKG_FLAG_LOGON
0x2000
Поддерживает LsaLogonUser.
SECPKG_FLAG_ASCII_BUFFERS
0x4000
Буферы маркеров находятся в формате символов ASCII.
SECPKG_FLAG_FRAGMENT
0x8000
Поддерживает разделение больших маркеров на небольшие буферы, чтобы приложения могли выполнять повторные вызовы InitializeSecurityContext (General) и AcceptSecurityContext (General) с меньшими буферами для завершения проверки подлинности.
SECPKG_FLAG_MUTUAL_AUTH
0x10000
Поддерживает взаимную проверку подлинности.
SECPKG_FLAG_DELEGATION
0x20000
Поддерживает делегирование.
SECPKG_FLAG_READONLY_WITH_CHECKSUM
0x40000
Пакет безопасности поддерживает использование контрольной суммы вместо шифрования на месте при вызове функции EncryptMessage.
SECPKG_FLAG_RESTRICTED_TOKENS
0x80000
Поддерживает вызывающих пользователей с ограниченными маркерами.
SECPKG_FLAG_NEGO_EXTENDER
0x00100000
Пакет безопасности расширяет пакет безопасности Microsoft Negotiate безопасности. Может быть не более одного пакета этого типа.
SECPKG_FLAG_NEGOTIABLE2
0x00200000
Этот пакет согласовывается пакетом типа SECPKG_FLAG_NEGO_EXTENDER.
SECPKG_FLAG_APPCONTAINER_PASSTHROUGH
0x00400000
Этот пакет получает все вызовы из приложений-контейнеров приложений.
SECPKG_FLAG_APPCONTAINER_CHECKS
0x00800000
Этот пакет получает вызовы от приложений-контейнеров приложений, если одна из следующих проверок успешно выполнена.
  • Вызывающий объект имеет возможность учетных данных по умолчанию.
  • Целевой объект — прокси-сервер.
  • Вызывающий объект предоставил учетные данные.
SECPKG_CALLFLAGS_APPCONTAINER
0x00000001
Вызывающий объект — это контейнер приложения.
SECPKG_CALLFLAGS_AUTHCAPABLE
0x00000002
Вызывающий объект может использовать учетные данные по умолчанию.
SECPKG_CALLFLAGS_FORCE_SUPPLIED
0x00000004
Вызывающий объект может использовать только предоставленные учетные данные.

wVersion

Указывает версию протокола пакета. Должно быть 1.

wRPCID

Указывает идентификатор RPC DCE при необходимости. Если пакет не реализует одну из зарегистрированных систем безопасности DCE, используется зарезервированное значение SECPKG_ID_NONE.

cbMaxToken

Указывает максимальный размер маркера в байтах.

Name

Указатель на строку, завершающую значение NULL, содержащую имя пакета безопасности.

Comment

Указатель на строку, завершаемую значением NULL. Это может быть любая дополнительная строка, передаваемая пакетом.

Замечания

Заметка

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

Требования

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

См. также

ПеречислениеSecurityPackages

QuerySecurityPackageInfo