Abrufen von Informationen aus einer ACL

Es werden mehrere Funktionen bereitgestellt, die Zugriffssteuerungsinformationen aus einer Zugriffssteuerungsliste (Access Control List , ACL) abrufen. Dazu gehören Funktionen zum Bestimmen der Zugriffsrechte, die eine ACL einem angegebenen Treuhänder gewährt oder überwacht. Mit anderen Funktionen können Sie Informationen zu den Zugriffssteuerungseinträgen (ACEs ) in einer ACL extrahieren.

Die GetExplicitEntriesFromAcl-Funktion ruft ein Array von EXPLICIT_ACCESS Strukturen ab, die die ACEs in einer ACL beschreiben. Dies kann beim Kopieren von ACE-Informationen von einer ACL in eine andere nützlich sein. Beispielsweise kann einem Aufruf von GetExplicitEntriesFromAcl zum Abrufen von Informationen zu den ACEs in einer ACL gefolgt werden, indem die zurückgegebenen EXPLICIT_ACCESS Strukturen in einem Aufruf an die SetEntriesInAcl-Funktion übergeben werden, um entsprechende ACEs in einer neuen ACL zu erstellen.

Mit der GetEffectiveRightsFromAcl-Funktion können Sie die effektiven Zugriffsrechte ermitteln, die eine DACL einem angegebenen Treuhänder gewährt. Die effektiven Zugriffsrechte des Treuhänders sind die Zugriffsrechte, die eine DACL dem Treuhänder oder allen Gruppen gewährt, deren Mitglied der Treuhänder ist. GetEffectiveRightsFromAcl überprüft alle zugriffsberechtigten und zugriff verweigerten ACEs in der angegebenen DACL.

Verwenden Sie die folgenden Schritte, um die Zugriffsrechte eines Treuhänders für ein Objekt zu bestimmen

  1. Rufen Sie die GetSecurityInfo - oder GetNamedSecurityInfo-Funktion auf, um einen Zeiger auf die DACL eines Objekts abzurufen.
  2. Rufen Sie die GetEffectiveRightsFromAcl-Funktion auf, um die Zugriffsrechte abzurufen, die die DACL einem angegebenen Trustee gewährt.

Mit der GetAuditedPermissionsFromAcl-Funktion können Sie eine SACL überprüfen, um die überwachten Zugriffsrechte für einen angegebenen Treuhänder oder für alle Gruppen zu bestimmen, deren Mitglied der Trustee ist. Die überwachten Rechte geben die Arten von Zugriffsversuchen an, die dazu führen, dass das System einen Überwachungsdatensatz im Sicherheitsereignisprotokoll generiert. Die Funktion gibt zwei Zugriffsmasken zurück: eine mit den Zugriffsrechten, die auf fehlgeschlagene Zugriffsversuche überwacht werden, und eine andere mit den Zugriffsrechten, die für einen erfolgreichen Zugriff überwacht werden. GetAuditedPermissionsFromAcl überprüft alle Systemüberwachungs-ACEs in einer SACL.