Freigeben über


SeQuerySecurityDescriptorInfo-Funktion (ntifs.h)

Die SeQuerySecurityDescriptorInfo-Routine ruft eine Kopie des Sicherheitsdeskriptors eines Objekts ab.

Syntax

NTSTATUS SeQuerySecurityDescriptorInfo(
  [in]      PSECURITY_INFORMATION SecurityInformation,
  [out]     PSECURITY_DESCRIPTOR  SecurityDescriptor,
  [in, out] PULONG                Length,
  [in, out] PSECURITY_DESCRIPTOR  *ObjectsSecurityDescriptor
);

Parameter

[in] SecurityInformation

Zeiger auf einen SECURITY_INFORMATION Wert, der angibt, welche Sicherheitsinformationen abgefragt werden.

Wert Bedeutung
DACL_SECURITY_INFORMATION Gibt an, dass die daCL (Discretionary Access Control List) des Objekts abgefragt wird. Erfordert READ_CONTROL Zugriff.
GROUP_SECURITY_INFORMATION Gibt an, dass der primäre Gruppenbezeichner des Objekts abgefragt wird. Erfordert READ_CONTROL Zugriff.
OWNER_SECURITY_INFORMATION Gibt an, dass der Besitzerbezeichner des Objekts abgefragt wird. Erfordert READ_CONTROL Zugriff.
SACL_SECURITY_INFORMATION Gibt an, dass die System-ACL (SACL) des Objekts abgefragt wird. Erfordert ACCESS_SYSTEM_SECURITY Zugriff.

[out] SecurityDescriptor

Vom Aufrufer zugewiesener Benutzerpuffer, der seQuerySecurityDescriptorInfo mit einer Kopie des angegebenen Sicherheitsdeskriptors im selbstrelativen Format auffüllt.

[in, out] Length

Zeiger auf eine Variable, die die Größe des Puffers in Bytes angibt, auf den securityDescriptor verweist. Bei der Rückgabe legt SeQuerySecurityDescriptorInfo diese Variable auf die Anzahl von Bytes fest, die zum Speichern der angeforderten Informationen erforderlich sind.

[in, out] ObjectsSecurityDescriptor

Zeiger auf einen Zeiger auf den Sicherheitsdeskriptor eines Objekts. Der Sicherheitsdeskriptor muss im selbstrelativen Format vorliegen.

Rückgabewert

Rückgabecode Beschreibung
STATUS_SUCCESS
Der Aufruf von SeQuerySecurityDescriptorInfo war erfolgreich.
STATUS_BUFFER_TOO_SMALL
Der Puffer ist für den Sicherheitsdeskriptor zu klein. Keine der Sicherheitsinformationen wurde in den Puffer kopiert.

Hinweise

Ein Sicherheitsdeskriptor kann im absoluten oder selbstrelativen Format vorliegen. Ein Sicherheitsdeskriptor im absoluten Format enthält Zeiger auf die darin enthaltenen Informationen, anstatt die Informationen selbst zu enthalten. Ein Sicherheitsdeskriptor im selbstrelativen Format enthält die Informationen in einem zusammenhängenden Speicherblock. In einem selbstrelativen Sicherheitsdeskriptor startet eine SECURITY_DESCRIPTOR-Struktur immer die Informationen, aber die anderen Komponenten des Sicherheitsdeskriptors können der SECURITY_DESCRIPTOR-Struktur in beliebiger Reihenfolge folgen. Anstatt Speicheradressen zu verwenden, werden die Komponenten des Sicherheitsdeskriptors durch Offsets vom Anfang des Sicherheitsdeskriptors identifiziert. Dieses Format ist nützlich, wenn ein Sicherheitsdeskriptor auf einem Datenträger gespeichert oder über ein Kommunikationsprotokoll übertragen werden muss.

Da der Sicherheitsdeskriptor im selbstrelativen Format zurückgegeben wird, sollte der Aufrufer von SeQuerySecurityDescriptorInfo den im SecurityDescriptor-Parameter zurückgegebenen Wert in den Typ PISECURITY_DESCRIPTOR_RELATIVE umwandeln.

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

Anforderungen

Anforderung Wert
Zielplattform Universell
Header ntifs.h (include Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

Weitere Informationen

ACL

RtlAbsoluteToSelfRelativeSD

RtlCreateSecurityDescriptor

RtlCreateSecurityDescriptorRelative

RtlGetOwnerSecurityDescriptor

RtlLengthSecurityDescriptor

RtlSetDaclSecurityDescriptor

RtlSetOwnerSecurityDescriptor

RtlValidSecurityDescriptor

SECURITY_DESCRIPTOR