ObjectPrivilegeAuditAlarmA 함수(winbase.h)
ObjectPrivilegeAuditAlarm 함수는 보안 이벤트 로그에 감사 메시지를 생성합니다. 보호된 서버는 이 함수를 사용하여 프라이빗 개체에 대한 열린 핸들과 함께 지정된 권한 집합을 사용하려는 클라이언트의 시도를 기록할 수 있습니다. 알람은 현재 지원되지 않습니다.
구문
BOOL ObjectPrivilegeAuditAlarmA(
[in] LPCSTR 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 액세스를 위해 토큰을 열어야 합니다. 함수는 이 토큰을 사용하여 감사 메시지에 대한 클라이언트의 ID를 가져옵니다.
[in] DesiredAccess
사용 중이거나 사용하려는 권한 있는 액세스 유형을 나타내는 액세스 마스크 를 지정합니다. 액세스 마스크는 MapGenericMask 함수에 의해 매핑될 수 있으므로 제네릭 액세스 형식이 포함되지 않습니다.
[in] Privileges
클라이언트가 사용하려고 시도한 권한이 포함된 PRIVILEGE_SET 구조체에 대한 포인터입니다. 권한의 이름이 감사 메시지에 표시됩니다.
[in] AccessGranted
클라이언트의 권한 사용 시도가 성공했는지 여부를 나타냅니다. 이 값이 TRUE이면 감사 메시지가 성공을 나타냅니다. 이 값이 FALSE이면 감사 메시지가 실패를 나타냅니다.
반환 값
함수가 성공하면 반환 값이 0이 아닙니다.
함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.
설명
ObjectPrivilegeAuditAlarm 함수는 개체에 대한 클라이언트의 액세스를 검사 또는 클라이언트의 액세스 토큰을 검사 권한이 있는지 여부를 결정하지 않습니다. 일반적으로 PrivilegeCheck 함수를 호출하여 액세스 토큰에서 지정된 권한이 사용하도록 설정되어 있는지 여부를 확인하고, AccessCheck 함수를 호출하여 개체에 대한 클라이언트의 액세스를 검사 다음, ObjectPrivilegeAuditAlarm을 호출하여 결과를 기록합니다.
ObjectPrivilegeAuditAlarm 함수를 사용하려면 호출 프로세스가 SE_AUDIT_NAME 권한을 사용하도록 설정해야 합니다. 이 권한에 대한 테스트는 스레드의 가장 토큰이 아니라 호출 프로세스의 기본토큰에 대해 항상 수행됩니다. 이렇게 하면 호출 프로세스에서 호출 중에 클라이언트를 가장할 수 있습니다.
요구 사항
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | winbase.h(Windows.h 포함) |
라이브러리 | Advapi32.lib |
DLL | Advapi32.dll |