Freigeben über


ZwQuerySecurityObject-Funktion (ntifs.h)

Die ZwQuerySecurityObject Routine ruft eine Kopie der Sicherheitsbeschreibung eines Objekts ab.

Syntax

NTSYSAPI NTSTATUS ZwQuerySecurityObject(
  [in]  HANDLE               Handle,
  [in]  SECURITY_INFORMATION SecurityInformation,
  [out] PSECURITY_DESCRIPTOR SecurityDescriptor,
  [in]  ULONG                Length,
  [out] PULONG               LengthNeeded
);

Parameter

[in] Handle

Handle für das Objekt, dessen Sicherheitsdeskriptor abgefragt werden soll. Dieses Handle muss über den in der Spalte "Bedeutung" der Tabelle angegebenen Zugriff verfügen, der in der Beschreibung des parameters SecurityInformation angezeigt wird.

[in] SecurityInformation

Ein SECURITY_INFORMATION Wert, der die informationen angibt, die als Kombination aus einer oder mehreren der folgenden Informationen abgefragt werden sollen.

Wert Bedeutung
OWNER_SECURITY_INFORMATION Der Besitzerbezeichner des Objekts wird abgefragt. Erfordert READ_CONTROL Zugriff.
GROUP_SECURITY_INFORMATION Der primäre Gruppenbezeichner des Objekts wird abgefragt. Erfordert READ_CONTROL Zugriff.
SACL_SECURITY_INFORMATION Das System-ACL (SACL) des Objekts wird abgefragt. Erfordert ACCESS_SYSTEM_SECURITY Zugriff.
DACL_SECURITY_INFORMATION Die diskretionäre Zugriffssteuerungsliste (ACCESS Control List, DACL) des Objekts wird abgefragt. Erfordert READ_CONTROL Zugriff.

[out] SecurityDescriptor

Vom Aufrufer zugewiesener Puffer, der ZwQuerySecurityObject mit einer Kopie des angegebenen Sicherheitsdeskriptors gefüllt wird. Die SECURITY_DESCRIPTOR Struktur wird im selbstrelativen Format zurückgegeben.

[in] Length

Größe des Puffers in Bytes, auf den SecurityDescriptorverweist.

[out] LengthNeeded

Zeiger auf eine vom Aufrufer zugewiesene Variable, die die Anzahl der Bytes empfängt, die zum Speichern der kopierten Sicherheitsbeschreibung erforderlich sind.

Rückgabewert

ZwQuerySecurityObject gibt STATUS_SUCCESS oder einen entsprechenden Fehlerstatus zurück. Mögliche Fehlerstatuscodes sind:

Rückgabecode Beschreibung
STATUS_ACCESS_DENIED Handle nicht über den erforderlichen Zugriff verfügt.
STATUS_BUFFER_TOO_SMALL Der Puffer ist für den Sicherheitsdeskriptor zu klein. Keine der Sicherheitsinformationen wurde in den Puffer kopiert.
STATUS_INVALID_HANDLE Handle war kein gültiger Handle.
STATUS_OBJECT_TYPE_MISMATCH Handle war kein Handle des erwarteten Typs.

Bemerkungen

Ein Sicherheitsdeskriptor kann in absoluter oder selbstrelativer Form sein. In selbstrelativer Form befinden sich alle Elemente der Struktur zusammenhängend im Speicher. In absoluter Form enthält die Struktur nur Zeiger auf die Member. Weitere Informationen finden Sie unter Absolute und Self-Relative Sicherheitsdeskriptoren.

Das NTFS-Dateisystem legt eine Beschränkung von 64 KB auf die Größe des Sicherheitsdeskriptors fest, der für eine Datei auf den Datenträger geschrieben wird. (Das FAT-Dateisystem unterstützt keine Sicherheitsdeskriptoren für Dateien.) Daher ist ein 64K-SecurityDescriptor Puffer garantiert groß genug, um die zurückgegebene SECURITY_DESCRIPTOR Struktur zu halten.

Weitere Informationen zur Sicherheits- und Zugriffssteuerung finden Sie unter Windows-Sicherheitsmodell für Treiberentwickler und die Dokumentation zu diesen Themen im Windows SDK.

Minifilter sollten FltQuerySecurityObject anstelle von ZwQuerySecurityObjectaufrufen.

Anmerkung

Wenn der Aufruf der ZwQuerySecurityObject--Funktion im Benutzermodus auftritt, sollten Sie den Namen "NtQuerySecurityObject" anstelle von "ZwQuerySecurityObject" verwenden.

Bei Aufrufen von Kernelmodustreibern können sich die NtXxx und ZwXxx- Versionen einer Windows Native System Services-Routine anders verhalten, wie sie Eingabeparameter behandeln und interpretieren. Weitere Informationen zur Beziehung zwischen den NtXxx und ZwXxx- Versionen einer Routine finden Sie unter Using Nt and Zw Versions of the Native System Services Routines.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows XP
Zielplattform- Universal
Header- ntifs.h (einschließlich Ntifs.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- PASSIVE_LEVEL
DDI-Complianceregeln HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm)

Siehe auch

FltQuerySecurityObject

SECURITY_DESCRIPTOR

SECURITY_INFORMATION

ZwSetSecurityObject-