다음을 통해 공유


PrivilegedServiceAuditAlarmA 함수(winbase.h)

PrivilegedServiceAuditAlarm 함수는 보안 이벤트 로그에 감사 메시지를 생성합니다. 보호된 서버는 이 함수를 사용하여 지정된 권한 집합을 사용하려는 클라이언트의 시도를 기록할 수 있습니다.

경보는 현재 지원되지 않습니다.

구문

BOOL PrivilegedServiceAuditAlarmA(
  [in] LPCSTR         SubsystemName,
  [in] LPCSTR         ServiceName,
  [in] HANDLE         ClientToken,
  [in] PPRIVILEGE_SET Privileges,
  [in] BOOL           AccessGranted
);

매개 변수

[in] SubsystemName

함수를 호출하는 하위 시스템의 이름을 지정하는 null로 끝나는 문자열에 대한 포인터입니다. 이 정보는 보안 이벤트 로그 레코드에 표시됩니다.

[in] ServiceName

권한 있는 하위 시스템 서비스의 이름을 지정하는 null로 끝나는 문자열에 대한 포인터입니다. 이 정보는 보안 이벤트 로그 레코드에 표시됩니다.

[in] ClientToken

작업을 요청한 클라이언트를 나타내는 액세스 토큰 을 식별합니다. 이 핸들은 클라이언트를 가장하는 스레드의 토큰을 열어 가져와야 합니다. 토큰은 TOKEN_QUERY 액세스를 위해 열려 있어야 합니다. 함수는 이 토큰을 사용하여 보안 이벤트 로그 레코드에 대한 클라이언트의 ID를 가져옵니다.

[in] Privileges

클라이언트가 사용하려고 시도한 권한이 포함된 PRIVILEGE_SET 구조체에 대한 포인터입니다. 권한의 이름은 보안 이벤트 로그 레코드에 표시됩니다.

[in] AccessGranted

클라이언트의 권한 사용 시도가 성공했는지 여부를 나타냅니다. 이 값이 TRUE이면 보안 이벤트 로그 레코드는 성공을 나타냅니다. 이 값이 FALSE이면 보안 이벤트 로그 레코드는 실패를 나타냅니다.

반환 값

함수가 성공하면 반환 값이 0이 아닙니다.

함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.

설명

PrivilegedServiceAuditAlarm 함수는 권한 보유 또는 사용 여부를 확인하기 위해 클라이언트의 액세스 토큰을 검사 않습니다. 일반적으로 먼저 PrivilegeCheck 함수를 호출하여 액세스 토큰에서 지정된 권한을 사용할 수 있는지 여부를 확인한 다음 PrivilegedServiceAuditAlarm 을 호출하여 결과를 기록합니다.

PrivilegedServiceAuditAlarm 함수를 사용하려면 호출 프로세스가 SE_AUDIT_NAME 권한을 사용하도록 설정해야 합니다. 이 권한에 대한 테스트는 항상 호출 프로세스의 기본 토큰 에 대해 수행됩니다. 이렇게 하면 호출 프로세스에서 호출 중에 클라이언트를 가장할 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 winbase.h(Windows.h 포함)
라이브러리 Advapi32.lib
DLL Advapi32.dll

추가 정보

클라이언트/서버 Access Control 함수

클라이언트/서버 Access Control 개요

ObjectPrivilegeAuditAlarm

PRIVILEGE_SET

PrivilegeCheck