Функция SecLookupWellKnownSid (ntifs.h)

SecLookupWellKnownSid принимает в качестве входных данных известный тип идентификатора безопасности (SID) и получает локальный идентификатор безопасности (SID) для этого хорошо известного идентификатора безопасности.

Синтаксис

KSECDDDECLSPEC NTSTATUS SEC_ENTRY SecLookupWellKnownSid(
  [in]               WELL_KNOWN_SID_TYPE SidType,
  [out]              PSID                Sid,
  [in]               ULONG               SidBufferSize,
  [in_out, optional] PULONG              SidSize
);

Параметры

[in] SidType

Перечислимый тип, указывающий тип идентификатора безопасности (SID), возвращаемого функцией. Этот параметр может быть одним из следующих перечислений для WELL_KNOWN_SID_TYPE.

Значение Значение
WinNullSid Это значение указывает на идентификатор безопасности null.
WinWorldSid Это значение указывает идентификатор безопасности, соответствующий всем.
WinLocalSid Это значение указывает локальный идентификатор безопасности.
WinCreatorOwnerSid Идентификатор безопасности, соответствующий владельцу или создателю объекта. Этот идентификатор безопасности используется в наследуемых записях управления доступом.
WinCreatorGroupSid Идентификатор безопасности, соответствующий группе-создателю объекта. Этот идентификатор безопасности используется в наследуемых записях управления доступом.
WinCreatorOwnerServerSid Идентификатор безопасности владельца-создателя "сервер".
WinCreatorGroupServerSid Идентификатор безопасности группы-создателя "сервер".
WinNtAuthoritySid Идентификатор безопасности для центра Windows NT.
WinDialupSid Идентификатор безопасности для учетной записи удаленного подключения.
WinNetworkSid Идентификатор безопасности для сетевой учетной записи. Этот идентификатор добавляется в процесс маркера, когда он входит в систему по сети. Соответствующий тип входа — LOGON32_LOGON_NETWORK.
WinBatchSid Идентификатор безопасности для процесса пакетной обработки. Этот идентификатор добавляется в процесс маркера, когда он входит в систему в качестве пакетного задания. Соответствующий тип входа — LOGON32_LOGON_BATCH.
WinInteractiveSid Идентификатор безопасности для интерактивной учетной записи. Этот идентификатор добавляется в процесс маркера, когда он входит в систему интерактивно. Соответствующий тип входа — LOGON32_LOGON_INTERACTIVE.
WinServiceSid Идентификатор безопасности для службы. Этот идентификатор добавляется в процесс маркера, когда он входит в систему в качестве службы. Соответствующий тип входа — LOGON32_LOGON_SERVICE.
WinAnonymousSid Идентификатор безопасности для анонимной учетной записи.
WinProxySid Идентификатор безопасности прокси-сервера.
WinEnterpriseControllersSid Идентификатор безопасности для контроллера предприятия.
WinSelfSid Идентификатор безопасности для самообслуживания.
WinAuthenticatedUserSid Указывает идентификатор безопасности, соответствующий любому пользователю, прошедшему проверку подлинности.
WinRestrictedCodeSid Идентификатор безопасности для запрещенного кода.
WinTerminalServerSid Идентификатор безопасности, соответствующий учетной записи сервера терминалов.
WinRemoteLogonIdSid Идентификатор безопасности, соответствующий удаленным входам в систему.
WinLogonIdsSid Идентификатор безопасности, соответствующий идентификаторам входа.
WinLocalSystemSid Идентификатор безопасности, соответствующий локальной системе.
WinLocalServiceSid Идентификатор безопасности, соответствующий локальной службе.
WinNetworkServiceSid Идентификатор безопасности, соответствующий сетевой службе.
WinBuiltinDomainSid Идентификатор безопасности, соответствующий учетной записи домена.
WinBuiltinAdministratorsSid Идентификатор безопасности, соответствующий учетной записи администратора.
WinBuiltinUsersSid Идентификатор безопасности, соответствующий встроенным учетным записям пользователей.
WinBuiltinGuestsSid Идентификатор безопасности, соответствующий учетной записи "Гость".
WinBuiltinPowerUsersSid Идентификатор безопасности, соответствующий группе опытных пользователей.
WinBuiltinAccountOperatorsSid Идентификатор безопасности, соответствующий учетной записи операторов учета.
WinBuiltinSystemOperatorsSid Идентификатор безопасности, соответствующий группе системных операторов.
WinBuiltinPrintOperatorsSid Идентификатор безопасности, соответствующий группе операторов печати.
WinBuiltinBackupOperatorsSid Идентификатор безопасности, соответствующий группе операторов архива.
WinBuiltinReplicatorSid Идентификатор безопасности, соответствующий учетной записи "Репликатор".
WinBuiltinPreWindows2000CompatibleAccessSid Указывает идентификатор безопасности, соответствующий учетным записям, совместимым с Windows 2000.
WinBuiltinRemoteDesktopUsersSid Идентификатор безопасности, соответствующий пользователям удаленного рабочего стола.
WinBuiltinNetworkConfigurationOperatorsSid Идентификатор безопасности, соответствующий группе операторов сети.
WinAccountAdministratorSid Идентификатор безопасности, соответствующий группе учетных записей администраторов.
WinAccountGuestSid Идентификатор безопасности, соответствующий группе учетных записей гостей.
WinAccountKrbtgtSid Указывает идентификатор безопасности, соответствующий целевой группе Kerberos учетной записи.
WinAccountDomainAdminsSid Идентификатор безопасности, соответствующий группе учетных записей администраторов домена.
WinAccountDomainUsersSid Идентификатор безопасности, соответствующий группе учетных записей пользователей домена.
WinAccountDomainGuestsSid Идентификатор безопасности, соответствующий группе учетных записей гостей домена.
WinAccountComputersSid Идентификатор безопасности, соответствующий группе учетных записей компьютеров.
WinAccountControllersSid Идентификатор безопасности, соответствующий группе учетных записей контроллеров.
WinAccountCertAdminsSid Идентификатор безопасности, соответствующий группе администраторов сертификатов.
WinAccountSchemaAdminsSid Идентификатор безопасности, соответствующий группе администраторов схемы.
WinAccountEnterpriseAdminsSid Идентификатор безопасности, соответствующий группе администраторов предприятия.
WinAccountPolicyAdminsSid Идентификатор безопасности, соответствующий группе администраторов политик.
WinAccountRasAndIasServersSid Идентификатор безопасности, соответствующий учетной записи серверов RAS и IAS.
WinNTLMAuthenticationSid Идентификатор безопасности, присутствующий после проверки подлинности клиента пакетом проверки подлинности Microsoft NTLM.
WinDigestAuthenticationSid Идентификатор безопасности, присутствующий после проверки подлинности клиента пакетом дайджест-проверки подлинности Microsoft.
WinSChannelAuthenticationSid Идентификатор безопасности, присутствующий после проверки подлинности клиента пакетом проверки подлинности по безопасному каналу (SSL/TLS).
WinThisOrganizationSid Идентификатор безопасности, присутствующий после прохождения пользователем проверки подлинности изнутри леса или через уровень доверия, не имеющий включенной функции выборочной проверки подлинности. Если этот идентификатор безопасности присутствует, winOtherOrganizationSid не может присутствовать.
WinOtherOrganizationSid Идентификатор безопасности, присутствующий после прохождения пользователем проверки подлинности через лес с включенной функцией выборочной проверки подлинности. Если этот идентификатор безопасности присутствует, winThisOrganizationSid не может присутствовать.
WinBuiltinIncomingForestTrustBuildersSid Идентификатор безопасности, позволяющий пользователю создавать входящие доверия лесов. Этот идентификатор добавляется в маркер пользователей, являющихся членами встроенной группы "Создатели входящего доверия леса" в корневом домене леса.
WinBuiltinPerfMonitoringUsersSid Указывает идентификатор безопасности, соответствующий группе пользователей монитора производительности.
WinBuiltinPerfLoggingUsersSid Указывает идентификатор безопасности, соответствующий группе пользователей журнала производительности.
WinBuiltinAuthorizationAccessSid Идентификатор безопасности, соответствующий группе авторизации доступа Windows.
WinBuiltinTerminalServerLicenseServersSid Идентификатор безопасности, присутствующий на сервере, который может выдавать лицензии для сервера терминалов.
WinBuiltinDCOMUsersSid Указывает идентификатор безопасности, соответствующий группе пользователей DCOM.

[out] Sid

Указатель на буфер, получающий структуру sid , соответствующую параметру SidType . Если этот параметр имеет значение NULL, значение SidBufferSize равно нулю.

[in] SidBufferSize

Переменная, указывающая размер буфера sid в байтах.

[in_out, optional] SidSize

Необязательный указатель на переменную, указывающую размер буфера Sid . Если функция завершается сбоем, так как буфер слишком мал или значение SidBufferSize равно нулю, эта переменная получает требуемый размер буфера. При успешном выполнении эта переменная содержит размер возвращаемого идентификатора sid.

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

SecLookupWellKnownSid возвращает STATUS_SUCCESS при успешном выполнении или один из следующих кодов ошибок при сбое:

Код возврата Описание
SEC_E_INTERNAL_ERROR Произошла внутренняя ошибка при попытке подключения к локальному центру системы (LSA) или сбою вызова локальной процедуры (LPC) к поставщику безопасности.
STATUS_ACCESS_DENIED Идентификатор процесса, связанный с текущим выполняемым потоком, не соответствует текущему идентификатору процесса.
STATUS_BUFFER_TOO_SMALL Размер буфера для sid, параметра SidBufferSize , был слишком мал.
STATUS_INVALID_PARAMETER Для параметра Sid был передан указатель NULL, или не удалось найти известный идентификатор безопасности для указанного sidType.
STATUS_PROCESS_IS_TERMINATING Этот процесс завершен, поэтому невозможно установить подключение к локальному вызову процедур (LPC).

Комментарии

SecLookupWellKnownSid пытается найти хорошо известный идентификатор безопасности с помощью параметра SidType . Помимо поиска известных идентификаторов безопасности на локальном компьютере, SecLookupWellKnownSid может искать известные идентификаторы БЕЗОПАСНОСТИ в локальном домене. SecLookupWellKnownSidсначала проверяет список известных локальных идентификаторов безопасности. Если SidType не соответствует локальному хорошо известному идентификатору безопасности, функция проверяет наличие известных идентификаторов безопасности в основном домене.

Если функции не удается найти хорошо известный идентификатор безопасности для указанного sidType , SecLookupWellKnownSid завершается ошибкой . Это может произойти, если время ожидания сети не позволяет функции найти идентификатор безопасности в основном домене. Это также происходит для SidType , у которого нет соответствующего хорошо известного идентификатора безопасности.

SecLookupWellKnownSid эквивалентен функции Win32 CreateWellKnownSid . Для приложений в пользовательском режиме перечисление WELL_KNOWN_SID_TYPE определяется в winbase.h.

SecLookupWellKnownSid экспортируется драйвером ksecdd, который реализует эту функцию с помощью вспомогательных служб пользовательского режима. Соответственно, использование этой функции в файловых системах должно соответствовать обычным правилам взаимодействия со службами пользовательского режима. SecLookupWellKnownSid нельзя использовать во время ввода-вывода файла подкачки.

Требования

Требование Значение
Минимальная версия клиента Эта функция SecLookupWellKnownSid доступна только начиная с Windows Server 2003.
Целевая платформа Универсальное
Верхняя часть ntifs.h (включая Ntifs.h)
Библиотека Ksecdd.lib
IRQL <= APC_LEVEL

См. также раздел

SID

SecLookupAccountName

SecLookupAccountSid