ObjectOpenAuditAlarmW-Funktion (securitybaseapi.h)
Die ObjectOpenAuditAlarm-Funktion generiert Überwachungsmeldungen, wenn eine Clientanwendung versucht, Zugriff auf ein Objekt zu erhalten oder ein neues zu erstellen. Alarme werden derzeit nicht unterstützt.
Syntax
BOOL ObjectOpenAuditAlarmW(
[in] LPCWSTR SubsystemName,
[in] LPVOID HandleId,
[in] LPWSTR ObjectTypeName,
[in, optional] LPWSTR ObjectName,
[in] PSECURITY_DESCRIPTOR pSecurityDescriptor,
[in] HANDLE ClientToken,
[in] DWORD DesiredAccess,
[in] DWORD GrantedAccess,
[in, optional] PPRIVILEGE_SET Privileges,
[in] BOOL ObjectCreation,
[in] BOOL AccessGranted,
[out] LPBOOL GenerateOnClose
);
Parameter
[in] SubsystemName
Ein Zeiger auf eine NULL-endende Zeichenfolge, die den Namen des Subsystems angibt, das die Funktion aufruft. Diese Zeichenfolge wird in jeder Überwachungsmeldung angezeigt, die von der Funktion generiert wird.
[in] HandleId
Ein Zeiger auf einen eindeutigen Wert, der das Handle des Clients für das -Objekt darstellt. Wenn der Zugriff verweigert wird, wird dieser Parameter ignoriert.
Aus Gründen der plattformübergreifenden Kompatibilität muss der wert, der von diesem Zeiger adressiert wird, sizeof(LPVOID) bytes long sein.
[in] ObjectTypeName
Ein Zeiger auf eine NULL-endende Zeichenfolge, die den Typ des Objekts angibt, auf das der Client Zugriff anfordert. Diese Zeichenfolge wird in jeder Überwachungsmeldung angezeigt, die von der Funktion generiert wird.
[in, optional] ObjectName
Ein Zeiger auf eine NULL-endende Zeichenfolge, die den Namen des Objekts angibt, auf das der Client Zugriff anfordert. Diese Zeichenfolge wird in jeder Überwachungsmeldung angezeigt, die von der Funktion generiert wird.
[in] pSecurityDescriptor
Ein Zeiger auf die SECURITY_DESCRIPTOR-Struktur für das Objekt, auf das zugegriffen wird.
[in] ClientToken
Gibt ein Zugriffstoken an, das den Client darstellt, der den Vorgang anfordert. Dieses Handle muss abgerufen werden, indem das Token eines Threads geöffnet wird, der die Identität des Clients angibt. Das Token muss für TOKEN_QUERY Zugriff geöffnet sein.
[in] DesiredAccess
Gibt die gewünschte Zugriffsmaske an. Diese Maske muss zuvor von der MapGenericMask-Funktion zugeordnet worden sein, um keine generischen Zugriffsrechte zu enthalten.
[in] GrantedAccess
Gibt eine Zugriffsmaske an, die angibt, welche Zugriffsrechte gewährt werden. Diese Zugriffsmaske soll derselbe Wert sein, der von einer der Zugriffsüberprüfungsfunktionen im GrantedAccess-Parameter festgelegt wird. Beispiele für Zugriffsüberprüfungsfunktionen sind AccessCheckAndAuditAlarm und AccessCheck.
[in, optional] Privileges
Ein Zeiger auf eine PRIVILEGE_SET-Struktur , die den Satz von Berechtigungen angibt, die für den Zugriffsversuch erforderlich sind. Dieser Parameter kann NULL sein.
[in] ObjectCreation
Gibt ein Flag an, das bestimmt, ob die Anwendung ein neues Objekt erstellt, wenn der Zugriff gewährt wird. Wenn dieser Wert TRUE ist, erstellt die Anwendung ein neues -Objekt. wenn false festgelegt ist, öffnet die Anwendung ein vorhandenes -Objekt.
[in] AccessGranted
Gibt ein Flag an, das angibt, ob der Zugriff in einem vorherigen Aufruf einer Zugriffsüberprüfungsfunktion wie AccessCheck gewährt oder verweigert wurde. Wenn der Zugriff gewährt wurde, ist dieser Wert TRUE. Wenn nicht, ist es FALSE.
[out] GenerateOnClose
Ein Zeiger auf ein Flag, das von der Überwachungsgenerierungsroutine festgelegt wird, wenn die Funktion zurückgegeben wird. Dieser Wert muss an die ObjectCloseAuditAlarm-Funktion übergeben werden, wenn das Objekthandle geschlossen wird.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.
Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Hinweise
Die ObjectOpenAuditAlarm-Funktion erfordert, dass die aufrufende Anwendung über die berechtigung SE_AUDIT_NAME aktiviert ist. Der Test für diese Berechtigung wird immer für das primäre Token des aufrufenden Prozesses durchgeführt, nicht für das Identitätswechseltoken des Threads. Dadurch kann der aufrufende Prozess während des Anrufs die Identität eines Clients annehmen.
Anforderungen
Unterstützte Mindestversion (Client) | Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | securitybaseapi.h (Einschließen von Windows.h) |
Bibliothek | Advapi32.lib |
DLL | Advapi32.dll |
Weitere Informationen
AccessCheck
AccessCheckAndAuditAlarmareAllAccessesgranted
AreAnyAccessesGranted
Client/Server-Access Control
Client-/Server-Access Control-Funktionen
MapGenericMask
ObjectCloseAuditAlarm-ObjektDeleteAuditAlarm
ObjectPrivilegeAuditAlarm
PRIVILEGE_SET
PrivilegeCheck
PrivilegedServiceAuditAlarm
SECURITY_DESCRIPTOR