Freigeben über


Sicherheitsdeskriptoren für private Objekte

Um einen Sicherheitsdeskriptorzu erstellen, kann ein geschützter Server dasselbe Verfahren verwenden, mit dem eine Anwendung einen Sicherheitsdeskriptor für ein sicherungsfähiges Objekt erstellen würde. Beispielcode finden Sie unter Erstellen eines Sicherheitsdeskriptors für ein neues Objekt in C++-. Alternativ kann eine geschützte Serveranwendung die BuildSecurityDescriptor--Funktion aufrufen, um dies zu tun. Wenn ein Zeiger auf einen vorhandenen selbstrelativen Sicherheitsdeskriptor für BuildSecurityDescriptor-bereitgestellt wird, wird der neue Sicherheitsdeskriptor mit Informationen erstellt, die von diesem Sicherheitsdeskriptor mit neuen Zugriffssteuerungsinformationen zusammengeführt werden, die als Parameter im Funktionsaufruf übergeben werden. Der Besitzer und die Gruppe werden optional durch TRUSTEE- Strukturen angegeben, die an die Funktion übergeben werden. Der von BuildSecurityDescriptor erstellte Sicherheitsdeskriptor weist selbstrelative Format auf.

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 werden. Die CreatePrivateObjectSecurity, GetPrivateObjectSecurity, SetPrivateObjectSecurityund DestroyPrivateObjectSecurity Funktionen 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 gesicherter Objekte erstellt. Sie können z. B. die CreatePrivateObjectSecurity-Funktion verwenden, um einen Sicherheitsdeskriptor zu erstellen, der ACEs enthält, die vom Client angegeben wurden, ACEs, die von einem übergeordneten Objekt geerbt wurden, und den Standardbesitzer vom Zugriffstoken des Erstellens des Clients. Während BuildSecurityDescriptor Sicherheitsdeskriptoren entweder aus Zugriffssteuerungsinformationen erstellt, die an den Funktionsaufruf oder von einem vorhandenen Sicherheitsdeskriptor übergeben werden, erstellt CreatePrivateObjectSecurity einen Sicherheitsdeskriptor ausschließlich aus den Informationen in vorhandenen Sicherheitsbeschreibungen.

LookupSecurityDescriptorParts Funktion ruft Sicherheitsbeschreibungsinformationen aus einer vorhandenen selbstrelativen Sicherheitsbeschreibungab. 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.