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


Структуры аутентификации

Структуры проверки подлинности классифицируются в соответствии с использованием следующим образом:

Структуры SSPI

В функциях SSPI используются следующие структуры, определенные в Sspi.h.

Структура Описание
CREDSSP_CRED Указывает данные проверки подлинности для пакетов безопасности Schannel и Negotiate.
SEC_WINNT_AUTH_IDENTITY Используется для передачи определенного имени пользователя и пароля в библиотеку времени выполнения для проверки подлинности.
SEC_WINNT_AUTH_IDENTITY_EX Содержит сведения о пользователе. Эта структура представлена как в формате ANSI, так и в Юникоде .
SecBuffer Буфер, выделенный транспортным приложением для передачи в пакет безопасности.
SecBufferDesc Массив структур SecBuffer для передачи из транспортного приложения в пакет безопасности.
SecPkgContext_AccessToken Содержит дескриптор маркера доступа контекста безопасности.
SecPkgContext_ClientCreds Задает учетные данные клиента при вызове функции QueryContextAttributes (CredSSP).
SecPkgContext_ConnectionInfo Содержит сведения о протоколе и шифре. Эта структура используется функцией QueryContextAttributes (General).
SecPkgContext_CredentialName Указывает имя учетных данных.
SecPkgContext_DceInfo Содержит данные авторизации, используемые службами DCE.
SecPkgContext_EapKeyBlock Содержит ключевые данные, используемые протоколом проверки подлинности EAP TLS.
SecPkgContext_Flags Содержит сведения о флагах в контексте безопасности.
SecPkgContext_IssuerListInfoEx Содержит список доверенных центров сертификации (ЦС).
SecPkgContext_Lifespan Указывает срок жизни контекста безопасности.
SecPkgContext_Names Содержит имя пользователя, связанного с контекстом безопасности.
SecPkgContext_NativeNames Содержит имена клиентов и субъектов сервера из исходящего билета.
SecPkgContext_NegotiationInfo Содержит сведения о пакете безопасности , который настраивается или был настроен. Он также указывает состояние согласования для настройки пакета безопасности.
SecPkgContext_PackageInfo Содержит имя поставщика поддержки безопасности (SSP).
SecPkgContext_PasswordExpiry Содержит сведения об истечении срока действия пароля или других учетных данных.
SecPkgContext_SessionKey Содержит сведения о ключе сеанса.
SecPkgContext_Sizes Содержит размеры важных структур, используемых в функциях поддержки сообщений.
SecPkgContext_StreamSizes Содержит размеры различных атрибутов потока для использования с функциями поддержки сообщений.
SecPkgContext_TargetInformation Содержит сведения об учетных данных, используемых для контекста безопасности.
SecPkgCredentials_Names Содержит имя пользователя, связанного с контекстом.
SecPkgInfo Предоставляет общие сведения о пакете безопасности, такие как его имя и возможности.
SECURITY_INTEGER Структура для хранения числовых значений. Он используется при определении других типов.
SecurityFunctionTable Таблица диспетчеризации, содержащая указатели на функции, определенные в SSPI.

Структуры Schannel

Для использования со Schannel определены следующие структуры.

Структура Описание
SCH_CRED_PUBLIC_CERTCHAIN Содержит один сертификат. На основе этого сертификата можно создать цепочку сертификации.
SCH_CRED_SECRET_PRIVKEY Содержит сведения о закрытом ключе , необходимые для проверки подлинности клиента или сервера.
SCHANNEL_CERT_HASH Содержит данные хэш-хранилища для сертификата, который использует Schannel.
SCHANNEL_CERT_HASH_STORE Содержит данные хэш-хранилища для сертификата, который Schannel использует в режиме ядра.
SCHANNEL_ALERT_TOKEN Создает оповещение SSL или TSL, отправляемое в целевой объект вызова функции InitializeSecurityContext (Schannel) или AcceptSecurityContext (Schannel).
SCHANNEL_CLIENT_SIGNATURE Указывает сигнатуру клиента, если вызов функции InitializeSecurityContext (Schannel) не может получить доступ к закрытому ключу сертификата клиента (в этом случае функция возвращает SEC_I_SIGNATURE_NEEDED).
SCHANNEL_CRED Содержит данные для учетных данных Schannel.
SCHANNEL_SESSION_TOKEN Указывает, включены ли повторные подключения для сеанса проверки подлинности, созданного путем вызова функции InitializeSecurityContext (Schannel) или AcceptSecurityContext (Schannel).
SecPkgContext_Authority Содержит имя центра проверки подлинности, если он доступен. Это может быть центр сертификации (ЦС) или имя сервера или домена, прошедших проверку подлинности подключения.
SecPkgContext_ConnectionInfo Содержит сведения о протоколе и шифре. Эта структура используется функцией QueryContextAttributes (General).
SecPkgContext_IssuerListInfoEx Содержит список доверенных центров сертификации.
SecPkgContext_KeyInfo Содержит сведения о ключах сеанса , используемых в контексте безопасности. Эта структура была заменена структурой SecPkgContext_ConnectionInfo .
SecPkgContext_ProtoInfo Содержит сведения об используемом протоколе.
SecPkgContext_SessionAppData Хранит данные приложения для контекста сеанса.
SecPkgCred_CipherStrengths Содержит минимальную и максимальную прочность, разрешенную для шифра, используемого указанными учетными данными Schannel.
SecPkgCred_SupportedAlgs Содержит идентификаторы для алгоритмов, разрешенных с указанными учетными данными Schannel.
SecPkgCred_SupportedProtocols Указывает протоколы, разрешенные с указанными учетными данными Schannel.
X509Certificate Представляет сертификат X.509 .

Пользовательские структуры пакетов безопасности

Пользовательский пакет безопасности использует следующие структуры.

Структура Описание
LSA_SECPKG_FUNCTION_TABLE Таблица указателей на функции локального центра безопасности (LSA), которые могут вызывать пользовательские пакеты безопасности.
SECPKG_CALL_INFO Содержит сведения о вызове функции.
SECPKG_CLIENT_INFO Содержит сведения о пользователе пакета безопасности.
SECPK_CONTEXT_THUNKS Содержит сведения о вызовах пакета безопасности, которые будут выполняться в процессе с помощью LSA.
SECPKG_DLL_FUNCTIONS Содержит функции, доступные для пользовательских пакетов безопасности, выполняющихся внутри процесса с помощью клиентского или серверного приложения.
SECPKG_EVENT_DOMAIN_CHANGE Содержит сведения о сеансе и компьютере. Это имя структуры является псевдонимом для структуры SECPKG_PARAMETERS .
SECPKG_EVENT_NOTIFY Содержит сведения о событии, связанном с безопасностью.
SECPKG_EVENT_PACKAGE_CHANGE Содержит сведения о доступности и использовании пакетов безопасности.
SECPKG_EXTENDED_INFORMATION Содержит расширенные сведения о пакете безопасности.
SECPKG_FUNCTION_TABLE Содержит указатели на функции, реализованные пакетами безопасности.
SECPKG_GSS_INFO Содержит сведения об идентификаторе OID GSS, используемом для идентификации пакета безопасности.
SECPKG_MUTUAL_AUTH_LEVEL Содержит сведения об уровне взаимной проверки подлинности, используемом пакетом безопасности.
SECPKG_PARAMETERS Содержит сведения о сеансе и компьютере.
SECPKG_PRIMARY_CRED Содержит сведения о первичных учетных данных .
SECPKG_SUPPLEMENTAL_CRED Содержит дополнительные сведения об учетных данных .
SECPKG_SUPPLEMENTAL_CRED_ARRAY Содержит дополнительные сведения об учетных данных.
SECPKG_USER_FUNCTION_TABLE Содержит функции, реализованные пакетом безопасности, загруженным внутри процесса с клиентскими или серверными приложениями.
SecurityUserData Содержит сведения о вошедшего в систему пользователя.

Структуры поставщиков сетей

Следующие структуры используются API поставщика сетей и связанными функциями.

Структура Описание
NETCONNECTINFOSTRUCT Содержит сведения о производительности сетевого подключения.
NETRESOURCE Содержит сведения о перечислимом сетевом ресурсе.
NOTIFYADD Содержит сведения об операции сетевого подключения.
NOTIFYCANCEL Содержит сведения об операции отключения сети.
NOTIFYINFO Содержит сведения о состоянии операции сетевого подключения или отключения.
REMOTE_NAME_INFO Содержит сведения об удаленном универсальном имени.
UNIVERSAL_NAME_INFO Содержит локальное универсальное имя.

Структуры GINA

Функции интерфейса GINA и функции поддержки Winlogon используют следующие структуры.

Структура Описание
WLX_CLIENT_CREDENTIALS_INFO_V1_0 Содержит сведения об учетных данных клиента.
WLX_CONSOLESWITCH_CREDENTIALS_INFO_V1_0 Содержит учетные данные клиента, позволяющие прозрачно передавать учетные данные в целевой сеанс.
WLX_DESKTOP Содержит сведения о рабочем столе.
WLX_DISPATCH_VERSION_1_0 Содержит таблицу диспетчеризации Winlogon версии 1.0.
WLX_DISPATCH_VERSION_1_1 Содержит таблицу диспетчеризации Winlogon версии 1.1.
WLX_DISPATCH_VERSION_1_2 Содержит таблицу диспетчеризации Winlogon версии 1.2.
WLX_DISPATCH_VERSION_1_3 Содержит таблицу диспетчеризации Winlogon версии 1.3.
WLX_DISPATCH_VERSION_1_4 Содержит таблицу диспетчеризации Winlogon версии 1.4.
WLX_MPR_NOTIFY_INFO Содержит сведения о проверке подлинности и идентификации.
WLX_PROFILE_V1_0 Содержит сведения, используемые для настройки начальной среды.
WLX_PROFILE_V2_0 Содержит сведения, используемые для настройки начальной среды.
WLX_TERMINAL_SERVICES_DATA Содержит путь к профилю служб терминалов и сведения о домашнем каталоге.

Структуры локальных органов безопасности

Локальная служба безопасности (LSA) использует следующие структуры.

Структура Описание
DOMAIN_PASSWORD_INFORMATION Содержит сведения о политике паролей домена, такие как минимальная длина паролей и то, как должны быть уникальные пароли.
KERB_ADD_CREDENTIALS_REQUEST Указывает сообщение для добавления, удаления или замены дополнительных учетных данных сервера для сеанса входа.
KERB_ADD_CREDENTIALS_REQUEST_EX Указывает сообщение для добавления, удаления или замены дополнительных учетных данных сервера для сеанса входа, а также имена субъектов-служб , связанные с этим учетными данными.
KERB_CERTIFICATE_LOGON Содержит сведения о сеансе интеллектуального карта входа.
KERB_CERTIFICATE_UNLOCK_LOGON Содержит сведения, используемые для разблокировки рабочей станции, которая была заблокирована во время интерактивного сеанса интеллектуального карта входа.
KERB_CHANGEPASSWORD_REQUEST Содержит сведения, используемые для изменения пароля.
KERB_CRYPTO_KEY Содержит сведения о ключе сеанса шифрования Kerberos.
KERB_EXTERNAL_NAME Содержит сведения о внешнем имени.
KERB_EXTERNAL_TICKET Содержит сведения о внешнем билете.
KERB_INTERACTIVE_LOGON Содержит сведения об интерактивном сеансе входа.
KERB_INTERACTIVE_PROFILE Содержит сведения об интерактивном профиле входа.
KERB_INTERACTIVE_UNLOCK_LOGON Содержит сведения, используемые для разблокировки рабочей станции, которая была заблокирована во время интерактивного сеанса входа.
KERB_PURGE_TKT_CACHE_REQUEST Содержит сведения, используемые для удаления записей из кэша билетов.
KERB_QUERY_TKT_CACHE_REQUEST Используется для получения сведений обо всех кэшированных билетах для указанного сеанса входа пользователя.
KERB_QUERY_TKT_CACHE_RESPONSE Содержит результаты запроса к кэшу билетов.
KERB_RETRIEVE_TKT_REQUEST Содержит сведения, используемые для получения билета.
KERB_RETRIEVE_TKT_RESPONSE Содержит ответ от получения билета.
KERB_S4U_LOGON Содержит сведения о службе для сеанса входа пользователя (S4U).
KERB_SMARTCARD_CSP_INFO Содержит сведения о поставщике служб шифрования (CSP) смарт-карта.
KERB_SMART_CARD_LOGON Содержит сведения о сеансе интеллектуального карта входа.
KERB_SMART_CARD_UNLOCK_LOGON Содержит сведения, используемые для разблокировки рабочей станции, которая была заблокирована во время сеанса интеллектуального карта входа.
KERB_TICKET_CACHE_INFO Содержит сведения о кэшированном билете Kerberos.
KERB_TICKET_LOGON Содержит сведения о профиле для сетевого входа.
KERB_TICKET_PROFILE Содержит сведения об интерактивном профиле входа.
KERB_TICKET_UNLOCK_LOGON Содержит сведения для разблокировки рабочей станции.
LSA_DISPATCH_TABLE Таблица указателей на функции LSA, которые могут вызывать пакеты проверки подлинности Windows.
LSA_STRING Содержит строку ANSI и сведения о ее длине.
LSA_FOREST_TRUST_BINARY_DATA Содержит двоичные данные, используемые в операциях доверия леса LSA.
LSA_FOREST_TRUST_COLLISION_INFORMATION Содержит сведения о конфликтах доверия леса LSA.
LSA_FOREST_TRUST_RECORD Содержит сведения о конфликте доверия леса LSA.
LSA_FOREST_TRUST_DOMAIN_INFO Содержит идентифицирующие сведения для домена.
LSA_FOREST_TRUST_INFORMATION Содержит сведения о доверии леса LSA.
LSA_FOREST_TRUST_RECORD Содержит запись доверия леса LSA.
LSA_TOKEN_INFORMATION_NULL Используется в случаях, когда требуется доступ к системе без проверки подлинности. Эта структура не содержит содержимого.
LSA_TOKEN_INFORMATION_V1 Содержит сведения, которые пакет проверки подлинности может поместить в объект токена Windows версии 1.
MSV1_0_CHANGEPASSWORD_REQUEST Является устаревшей.
MSV1_0_CHANGEPASSWORD_RESPONSE Является устаревшей.
MSV1_0_ENUMUSERS_REQUEST Является устаревшей.
MSV1_0_ENUMUSERS_RESPONSE Является устаревшей.
MSV1_0_GETUSERINFO_REQUEST Является устаревшей.
MSV1_0_GETUSERINFO_RESPONSE Является устаревшей.
MSV1_0_INTERACTIVE_LOGON Содержит сведения о входе пользователя для интерактивного входа.
MSV1_0_INTERACTIVE_PROFILE Содержит сведения об интерактивном профиле входа.
MSV1_0_LM20_LOGON Содержит сведения о входе в систему, используемые при входе в сеть.
MSV1_0_LM20_LOGON_PROFILE Содержит сведения о сеансе входа в сеть.
MSV1_0_SUBAUTH_LOGON Используется библиотеками DLL под проверки подлинности .
MSV1_0_SUBAUTH_REQUEST Содержит сведения для передачи в пакет вложенной проверки подлинности.
MSV1_0_SUBAUTH_RESPONSE Содержит ответ из пакета вложенной проверки подлинности.
MSV1_0_SUPPLEMENTAL_CREDENTIAL Используется для передачи учетных данных в MSV1_0 из Kerberos или пользовательских пакетов проверки подлинности.
NETLOGON_LOGON_IDENTITY_INFO Используется Msv1_0SubAuthenticationRoutine и Msv1_0SubAuthenticationFilter для передачи сведений о пользователе для вложенной проверки подлинности входа.
OLD_LARGE_INTEGER Используется для представления 64-разрядного целого числа со знаком в виде двух 32-разрядных целых чисел.
QUOTA_LIMITS Описывает объем системных ресурсов, доступных пользователю.
SR_SECURITY_DESCRIPTOR Содержит сведения о привилегиях безопасности пользователя.
USER_ALL_INFORMATION Содержит сведения о пользователе сеанса. Используется с пакетами вложенной проверки подлинности.

Структуры управления учетными данными

API управления учетными данными включает следующие структуры.

Структура Описание
CERT_CREDENTIAL_INFO Содержит ссылку на сертификат.
УЧЕТНЫХ ДАННЫХ Содержит отдельные учетные данные.
CREDENTIAL_ATTRIBUTE Содержит определяемый приложением атрибут учетных данных.
CREDENTIAL_TARGET_INFORMATION Содержит имя, домен и дерево целевого компьютера.
CREDUI_INFO Управляет внешним видом диалоговых окон Управление учетными данными.
USERNAME_TARGET_CREDENTIAL_INFO Содержит ссылку на учетные данные. Эта структура используется для передачи имени пользователя в функцию CredMarshalCredential и из CredUnmarshalCredential.

Структуры смарт-карт

Смарт-карта предоставляет следующие структуры.

Структура Описание
OPENCARD_SEARCH_CRITERIA Предоставляет определенные сведения о поиске, используемые функцией SCardUIDlgSelectCard .
OPENCARDNAME Предоставляет сведения, используемые функцией GetOpenCardName .
OPENCARDNAME_EX Предоставляет сведения, используемые функцией SCardUIDlgSelectCard .
SCARD_ATRMASK Находит карточки с помощью SCardLocateCardsByATR.
SCARD_IO_REQUEST Начинает структуру сведений об элементе управления протоколом.
SCARD_READERSTATE Отслеживает смарт-карты в средстве чтения.