Sicherheitsbeschreibungen für private Objekte

Um einen Sicherheitsdeskriptorzu erstellen, kann ein geschützter Server das gleiche Verfahren wie eine Anwendung verwenden, um einen Sicherheitsdeskriptor für ein sicherungsfähiges Objekt zu erstellen. Beispielcode finden Sie unter Erstellen eines Sicherheitsdeskriptors für ein neues Objekt in C++. Alternativ kann eine geschützte Serveranwendung dazu die BuildSecurityDescriptor-Funktion aufrufen. Wenn ein Zeiger auf einen vorhandenen selbstbezogenen Sicherheitsdeskriptor für BuildSecurityDescriptor bereitgestellt wird, wird der neue Sicherheitsdeskriptor mit Informationen aus diesem Sicherheitsdeskriptor erstellt, die mit neuen Zugriffssteuerungsinformationen zusammengeführt werden, die als Parameter im Funktionsaufruf übergeben werden. Besitzer und Gruppe werden optional durch AN die Funktion übergebene TRUSTEE-Strukturen angegeben. Der von BuildSecurityDescriptor erstellte Sicherheitsdeskriptor hat ein selbst relatives Format.

Darüber hinaus stellt die Windows-API eine Reihe von Funktionen zum Zusammenführen von Clientsicherheitsinformationen mit Informationen bereit, die vom Sicherheitsdeskriptor für ein übergeordnetes Objekt oder von einem Standardsicherheitsdeskriptor geerbt wurden. Die Funktionen CreatePrivateObjectSecurity, GetPrivateObjectSecurity, SetPrivateObjectSecurityund DestroyPrivateObjectSecurity bieten die Möglichkeit, Standardinformationen aus einem Zugriffstokenabzurufen, Vererbung zu unterstützen und bestimmte Teile der Sicherheitsbeschreibung zu bearbeiten. Dies kann nützlich sein, wenn ein Client ein privates Objekt in einer Hierarchie von gesicherten Objekten erstellt. Beispielsweise können Sie die CreatePrivateObjectSecurity-Funktion verwenden, um einen Sicherheitsdeskriptor zu erstellen, der vom Client angegebene ACEs, von einem übergeordneten Objekt geerbte ACEs und den Standardbesitzer aus dem Zugriffstoken des erstellenden Clients enthält. Während BuildSecurityDescriptor Sicherheitsbeschreibungen entweder aus zugriffssteuerungsinformationen erstellt, die an den Funktionsaufruf übergeben werden, oder aus einem vorhandenen Sicherheitsdeskriptor, erstellt CreatePrivateObjectSecurity einen Sicherheitsdeskriptor ausschließlich aus den Informationen in vorhandenen Sicherheitsbeschreibungen.

Die LookupSecurityDescriptorParts-Funktion ruft Sicherheitsbeschreibungsinformationen aus einem vorhandenen selbstrelativen Sicherheitsdeskriptorab. Diese Informationen umfassen die Besitzer- und Gruppenspezifikation, die Anzahl der ACEs in der SACL oder DACL und die Liste der ACEs in der SACL oder DACL.