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


Функция ObjectPrivilegeAuditAlarmW (securitybaseapi.h)

Функция ObjectPrivilegeAuditAlarm создает сообщение аудита в журнале событий безопасности. Защищенный сервер может использовать эту функцию для регистрации попыток клиента использовать указанный набор привилегий с открытым дескриптором к частному объекту. Будильники в настоящее время не поддерживаются.

Синтаксис

BOOL ObjectPrivilegeAuditAlarmW(
  [in] LPCWSTR        SubsystemName,
  [in] LPVOID         HandleId,
  [in] HANDLE         ClientToken,
  [in] DWORD          DesiredAccess,
  [in] PPRIVILEGE_SET Privileges,
  [in] BOOL           AccessGranted
);

Параметры

[in] SubsystemName

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

[in] HandleId

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

[in] ClientToken

Идентифицирует маркер доступа , представляющий клиент, запросив операцию. Этот дескриптор должен быть получен путем открытия токена потока, олицетворения клиента. Маркер должен быть открыт для доступа TOKEN_QUERY. Функция использует этот маркер для получения удостоверения клиента для сообщения аудита.

[in] DesiredAccess

Задает маску доступа , указывающую используемые или пытающиеся использовать привилегированные типы доступа. Маска доступа может быть сопоставлена с помощью функции MapGenericMask , поэтому она не содержит универсальных типов доступа.

[in] Privileges

Указатель на структуру PRIVILEGE_SET , содержащую привилегии , которые клиент пытался использовать. Имена привилегий отображаются в сообщении аудита.

[in] AccessGranted

Указывает, была ли попытка клиента использовать привилегии успешно. Если это значение равно TRUE, сообщение аудита указывает на успешное выполнение. Если это значение равно FALSE, сообщение аудита указывает на сбой.

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

Если функция выполняется успешно, возвращается ненулевое значение.

Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

Функция ObjectPrivilegeAuditAlarm не проверка доступ клиента к объекту или проверка маркера доступа клиента, чтобы определить, удерживаются ли привилегии или включены. Как правило, вы вызываете функцию PrivilegeCheck, чтобы определить, включены ли указанные привилегии в маркере доступа, вызовите функцию AccessCheck, чтобы проверка доступ клиента к объекту, а затем вызываете ObjectPrivilegeAuditAlarm для регистрации результатов.

Функция ObjectPrivilegeAuditAlarm требует, чтобы в процессе вызова была включена SE_AUDIT_NAME привилегия. Проверка этой привилегии всегда выполняется с основным маркером вызывающего процесса, а не с маркером олицетворения потока. Это позволяет вызывающей процедуре олицетворять клиента во время вызова.

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header securitybaseapi.h (включая Windows.h)
Библиотека Advapi32.lib
DLL Advapi32.dll

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

AccessCheck
AccessCheckAndAuditAlarm
Функции контроль доступа клиента и сервера
Общие сведения о клиенте и сервере контроль доступа
MapGenericMask
ObjectCloseAuditAlarm
ObjectOpenAuditAlarm
PRIVILEGE_SET
PrivilegeCheck
PrivilegedServiceAuditAlarm