Erstellen eines Zugriffsrechts für das Steuerelement
Um einem Active Directory Server ein Zugriffsrecht für das Steuerelement hinzuzufügen, erstellen Sie ein controlAccessRight -Objekt im Container Extended-Rights der Konfigurations Partition. Weitere Informationen und ein Codebeispiel finden Sie unter Beispielcode zum Erstellen eines Zugriffsrechtsfür das Steuerelement. Um das Zugriffsrecht für das Steuerelement zu verwenden, müssen Sie einige weitere Schritte ausführen, je nachdem, ob das Steuerelement Zugriffsrecht für einen speziellen Vorgang oder einen Eigenschaften Satz gilt.
Wenn Sie ein Steuerelement Zugriffsrecht für einen Eigenschaften Satz definieren, verwenden Sie die rightsguid des controlAccessRight -Objekts, um die Eigenschaften in der Menge zu identifizieren. Jede Eigenschaft wird von einem attributeSchema -Objekt im Active Directory Schema definiert. Die attributeSecurityGuid -Eigenschaft eines attributeSchema -Objekts identifiziert ggf. den Eigenschaften Satz, zu dem die Eigenschaft gehört. Beachten Sie, dass die attributeSecurityGuid -Eigenschaft einwertig ist und die GUID im Binärformat (Oktett-Zeichen folgen Syntax) speichert.
Wenn Sie ein Steuerelement Zugriffsrecht definieren, um Einschränkungen für den Zugriff auf einen bestimmten Vorgang zu platzieren, muss Ihre Anwendung die Zugriffs Überprüfung durchführen, wenn ein Benutzer versucht, den Vorgang auszuführen.
So richten Sie die Zugriffs Überprüfung ein
- Erstellen Sie ein Zugriffsrecht für das Steuerelement, das den Typ des Zugriffs auf die Anwendung oder den Dienst definiert. Weitere Informationen finden Sie im folgenden Codebeispiel.
- Erstellen Sie ein Active Directory Domain Services Objekt, das die Anwendung, den Dienst oder die Ressource darstellt, die Sie schützen möchten.
- Fügen Sie der DACL in der Sicherheits Beschreibung des Objekts Objekt-ACEs hinzu, um Benutzern oder Gruppen das Zugriffsrecht für dieses Objekt zu gewähren oder zu verweigern. Weitere Informationen finden Sie unter Setting a Control Access Right ACE in der ACL eines Objekts.
- Wenn ein Benutzer versucht, den Vorgang auszuführen, überprüfen Sie die Benutzerrechte, indem Sie die Objekt Sicherheits Beschreibung und das Benutzer Zugriffs Token an die accesscheckbytyperesultlist -Funktion übergeben. Weitere Informationen finden Sie unter über Prüfen eines Steuerungs Zugriffsrechts in der ACL eines Objekts.
Basierend auf dem Ergebnis der Zugriffs Überprüfung für das Objekt kann die Anwendung oder der Dienst den Benutzer Zugriff auf die Anwendung oder den Dienst gewähren oder verweigern.
Wenn Sie ein controlAccessRight -Objekt erstellen, legen Sie die in der folgenden Tabelle aufgeführten Attribute fest, um das Objekt zu einem rechts zugänglichen Zugriffsrecht zu machen, das von Active Directory Domain Services und den Windows-Sicherheitssystemen erkannt wird.
| Attribut | BESCHREIBUNG |
|---|---|
| 2.300 | Eine einwertige Eigenschaft, bei der es sich um den relativen Distinguished Name (RDN) des Objekts im Extended-Rights Container handelt. CN ist der Name der Zugriffs Steuerung in Active Directory Domain Services. |
| appliesTo | Eine mehrwertige Eigenschaft, die die Objektklassen auflistet, für die das Zugriffs Steuerungs Recht gilt. Beispielsweise werden die Benutzer -und Computer Objektklassen in der appliesTo -Eigenschaft von der Sende-als- Zugriffs Steuerungs Rechte aufgelistet. In der Liste wird jede Objektklasse durch die schemaIdGUID des zugehörigen classSchema -Objekts identifiziert. Die GUIDs werden als Zeichen folgen der Form gespeichert, die von der StringFromGUID2 -Funktion in der com-Bibliothek erstellt wurde, jedoch ohne die öffnenden und abschließenden geschweiften Klammern ({}). Beispielsweise ist die folgende GUID die schemaIdGUID für die Computer Klasse: bf967a86-0de6-11D0-A285-00aa003049e2. Beachten Sie, dass die schemaIdGUID -Eigenschaft eines classSchema -Objekts unter Verwendung der Oktett-Zeichen folgen Syntax als binäre GUID gespeichert wird. Um dieses Oktett-Zeichen folgen Format in das in der appliesTo -Eigenschaft verwendete Zeichen folgen Format zu konvertieren, verwenden Sie die Funktion StringFromGUID2 , und entfernen Sie die geschweiften Klammern aus der zurückgegebenen Zeichenfolge Weitere Informationen über die schemaIdGUID -Eigenschaft einer der vordefinierten Objektklassen, z. b. Benutzer oder Computer, finden Sie auf der Seite Klassen Verweis in der Active Directory Schema-Referenz in der Active Directory Domain Services Referenz. Weitere Informationen und ein Codebeispiel, in dem eine schemaIdGUID aus einem classSchema-Objekt abgerufen wird, finden Sie unter Lesen von attributeSchema-und classSchema-Objekten. |
| Display Name | Die Zeichenfolge, die verwendet wird, um die Zugriffs Steuerung direkt in Benutzeroberflächen anzuzeigen, wie z. b. die Eigenschaften Seite Sicherheit und andere Stellen im MMC-Snap-in Active Directory Benutzer und Computer. |
| righguid | Eine GUID, die den Steuerungs Zugriffsrecht in einem ACE identifiziert. Die GUID wird als Zeichenfolge der Form gespeichert, die von der StringFromGUID2 -Funktion erstellt wird, jedoch ohne die öffnenden und abschließenden geschweiften Klammern. Verwenden Sie Uuidgen.exe für ein anderes Hilfsprogramm, um eine GUID für das Zugriffsrecht für das Steuerelement zu generieren. Wenn Sie einen neuen Eigenschaften Satz definieren, verwenden Sie die rightguid des controlAccessRight -Objekts, um die Eigenschaften in der Menge zu identifizieren. Legen Sie für jede Eigenschaft im Eigenschaften Satz den attributeSecurityGuid -Wert der Eigenschaft auf den Wert der rightguid des Eigenschaften Satzes fest. Der attributeSecurityGuid -Wert einer Eigenschaft wird in der attributeSchema -Definition der Eigenschaft im Active Directory Schema gespeichert. Die attributeSecurityGuid -Eigenschaft ist einwertig und speichert die GUID im Binärformat (Oktett String-Syntax). |
| objectClass | Dieses Attribut gibt controlAccessRight als Objektklasse an. |
| validzugriffe | Legen Sie für Eigenschafts Sätze dieses Attribut auf 0x30 (ADS _ right _ DS _ Read _ Prop | ADS _ right _ DS _ Write _ Prop) fest. Legen Sie für Steuerelement-Zugriffsrechte dieses Attribut auf 0x100 (ADS _ right _ DS _ Control _ Access) fest. Die Eigenschaften Seite Sicherheit erkennt Zugriffsrechte nur dann, wenn das validzugriffsattribut auf den entsprechenden Wert festgelegt ist. Wenn der Wert 0 (null) ist, wird das Steuerelement Zugriffsrecht von der Eigenschaften Seite Sicherheit ignoriert oder nicht angezeigt. |
Beachten Sie, dass die vordefinierten Schema Klassen das localizationdisplayid -Attribut eines controlAccessRight -Objekts verwenden, um einen Nachrichten Bezeichner anzugeben, mit dem ein lokalisierter Anzeige Name aus Dssec.dll abgerufen wird. Legen Sie das localizationdisplayid -Attribut nicht fest, wenn Sie ein neues controlAccessRight -Objekt definieren.