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
Funções de Controle de Acesso cliente/servidor