RtlAbsoluteToSelfRelativeSD-Funktion (ntifs.h)
Die RtlAbsoluteToSelfRelativeSD-Routine erstellt einen neuen Sicherheitsdeskriptor im selbstrelativen Format, indem ein Sicherheitsdeskriptor im absoluten Format als Vorlage verwendet wird.
Syntax
NTSYSAPI NTSTATUS RtlAbsoluteToSelfRelativeSD(
[in] PSECURITY_DESCRIPTOR AbsoluteSecurityDescriptor,
[out] PSECURITY_DESCRIPTOR SelfRelativeSecurityDescriptor,
[in, out] PULONG BufferLength
);
Parameter
[in] AbsoluteSecurityDescriptor
Zeiger auf einen vom Aufrufer zugeordneten Puffer, der eine SECURITY_DESCRIPTOR-Struktur im absoluten Format enthält. RtlAbsoluteToSelfRelativeSD erstellt eine Version dieses Sicherheitsdeskriptors im selbstrelativen Format, ohne das Original zu ändern.
[out] SelfRelativeSecurityDescriptor
Zeiger auf einen vom Aufrufer zugeordneten Puffer, der einen Sicherheitsdeskriptor im selbstrelativen Format empfängt.
[in, out] BufferLength
Zeiger auf eine vom Aufrufer zugeordnete Variable, die die Größe des Puffers in Byte angibt, auf den der SelfRelativeSecurityDescriptor-Parameter verweist. Wenn der Puffer nicht groß genug ist, um den Sicherheitsdeskriptor zu halten, gibt RtlAbsoluteToSelfRelativeSD STATUS_BUFFER_TOO_SMALL zurück und legt diese Variable auf die erforderliche Mindestgröße fest.
Rückgabewert
RtlAbsoluteToSelfRelativeSD gibt STATUS_SUCCESS oder einen geeigneten NTSTATUS-Wert zurück, z. B. einen der folgenden:
Rückgabecode | Beschreibung |
---|---|
|
Der Puffer, auf den der AbsoluteSecurityDescriptor-Parameter verweist, enthielt keine SECURITY_DESCRIPTOR-Struktur im absoluten Format. STATUS_BAD_DESCRIPTOR_FORMAT ist ein Fehlercode. |
|
Der Puffer, auf den der Parameter SelfRelativeSecurityDescriptor verweist, war zu klein, um den Sicherheitsdeskriptor im selbstrelativen Format zu enthalten. STATUS_BUFFER_TOO_SMALL ist ein Fehlercode. |
Hinweise
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.
Verwenden Sie RtlSelfRelativeToAbsoluteSD, um einen neuen Sicherheitsdeskriptor im absoluten Format zu erstellen, indem Sie einen Sicherheitsdeskriptor im selbstrelativen Format als Vorlage verwenden.
Weitere Informationen zur Sicherheit und Zugriffssteuerung finden Sie in der Microsoft Windows SDK-Dokumentation.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Server 2003 SP1 |
Zielplattform | Universell |
Header | ntifs.h (include Ntifs.h) |
Bibliothek | NtosKrnl.lib |
DLL | NtosKrnl.exe (Kernelmodus); Ntdll.dll (Benutzermodus) |
IRQL | <= APC_LEVEL |