Compartilhar via


Função ObjectPrivilegeAuditAlarmA (winbase.h)

A função ObjectPrivilegeAuditAlarm gera uma mensagem de auditoria no log de eventos de segurança. Um servidor protegido pode usar essa função para registrar tentativas de um cliente de usar um conjunto especificado de privilégios com um identificador aberto para um objeto privado. No momento, não há suporte para alarmes.

Sintaxe

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

Parâmetros

[in] SubsystemName

Um ponteiro para uma cadeia de caracteres terminada em nulo especificando o nome do subsistema que chama a função. Essa cadeia de caracteres aparece na mensagem de auditoria.

[in] HandleId

Um ponteiro para um valor exclusivo que representa o identificador do cliente para o objeto .

[in] ClientToken

Identifica um token de acesso que representa o cliente que solicitou a operação. Esse identificador deve ter sido obtido abrindo o token de um thread representando o cliente. O token deve estar aberto para acesso TOKEN_QUERY. A função usa esse token para obter a identidade do cliente para a mensagem de auditoria.

[in] DesiredAccess

Especifica uma máscara de acesso que indica os tipos de acesso privilegiado que estão sendo usados ou cujo uso está sendo tentado. A máscara de acesso pode ser mapeada pela função MapGenericMask para que não contenha nenhum tipo de acesso genérico.

[in] Privileges

Um ponteiro para uma estrutura PRIVILEGE_SET que contém os privilégios que o cliente tentou usar. Os nomes dos privilégios aparecem na mensagem de auditoria.

[in] AccessGranted

Indica se a tentativa do cliente de usar os privilégios foi bem-sucedida. Se esse valor for TRUE, a mensagem de auditoria indicará êxito. Se esse valor for FALSE, a mensagem de auditoria indicará falha.

Valor retornado

Se a função for bem-sucedida, o valor retornado será diferente de zero.

Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.

Comentários

A função ObjectPrivilegeAuditAlarm não marcar o acesso do cliente ao objeto ou marcar token de acesso do cliente para determinar se os privilégios são mantidos ou habilitados. Normalmente, você chama a função PrivilegeCheck para determinar se os privilégios especificados estão habilitados no token de acesso, chama a função AccessCheck para marcar o acesso do cliente ao objeto e, em seguida, chama ObjectPrivilegeAuditAlarm para registrar os resultados.

A função ObjectPrivilegeAuditAlarm requer que o processo de chamada tenha SE_AUDIT_NAME privilégio habilitado. O teste para esse privilégio é sempre executado no token primário do processo de chamada, não no token de representação do thread. Isso permite que o processo de chamada represente um cliente durante a chamada.

Requisitos

   
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho winbase.h (incluir Windows.h)
Biblioteca Advapi32.lib
DLL Advapi32.dll

Confira também

AccessCheck

AccessCheckAndAuditAlarm

Funções de Controle de Acesso cliente/servidor

Visão geral do Controle de Acesso cliente/servidor

MapGenericMask

ObjectCloseAuditAlarm

ObjectOpenAuditAlarm

PRIVILEGE_SET

Privilegecheck

PrivilegedServiceAuditAlarm