Steuern des Gerätezugriffs (WDM)

Der Zugriff auf ein Gerät wird durch eine Sicherheitsbeschreibung (und die darin enthaltene ACL) gesteuert. Ein Sicherheitsdeskriptor für ein Geräteobjekt kann beim Erstellen des Geräteobjekts angegeben oder in der Registrierung festgelegt werden.

Steuern des Gerätezugriffs für WDM-Treiber

Wenn ein WDM-Treiber (mit Ausnahme bestimmter Bustreiber) ein Geräteobjekt erstellt, bestimmt der Plug & Play-Manager einen Sicherheitsdeskriptor für das Gerät. Die Reihenfolge der Vorgänge lautet wie folgt.

  1. Der PnP-Manager ruft die AddDevice-Routine des Treibers auf.

  2. Die AddDevice-Routine des Treibers ruft IoCreateDevice auf, um das Geräteobjekt zu erstellen und es an den Geräteobjektstapel anzufügen.

  3. Der PnP-Manager aktualisiert die Sicherheitsbeschreibung für das neu erstellte Geräteobjekt.

Bei einem WDM-Treiber bestimmt der PnP-Manager die Sicherheitsbeschreibung für das Geräteobjekt wie folgt.

  1. Wenn das Gerät über eine Sicherheitsbeschreibungseinstellung in der Registrierung verfügt, wird es auf jedes Objekt im Gerätestapel angewendet.

  2. Andernfalls wird sie auf jedes Objekt im Gerätestapel angewendet, wenn die Setupklasse des Geräts eine Sicherheitsdeskriptoreinstellung in der Registrierung aufweist.

  3. Andernfalls lässt der PnP-Manager die Standardsicherheitsbeschreibung für jedes Objekt unverändert. In diesem Fall wird die Standardsicherheitsbeschreibung für den Stapel durch den Gerätetyp und die Gerätemerkmale des PDO bestimmt.

Bei den meisten Gerätetypen und Merkmalen gewährt die Standardsicherheitsbeschreibung Administratoren vollzugriff (GENERIC_ALL) sowie Lese-, Schreib- und Ausführungszugriff (GENERIC_READ | GENERIC_WRITE | GENERIC_EXECUTE) Zugriff auf alle anderen Personen.

Weitere Informationen zum Festlegen eines Sicherheitsdeskriptors für ein Gerät oder eine Gerätesetupklasse in der Registrierung finden Sie unter Festlegen von Geräteobjekteigenschaften in der Registrierung.

Wenn ein Gerät im rohen Modus betrieben wird, kann der PnP-Manager keine Sicherheitsbeschreibung für das Geräteobjekt ermitteln. In diesem Fall muss der Busfahrer eine Sicherheitsbeschreibung angeben. siehe unten.

Steuern des Gerätezugriffs für WDM-Bustreiber

Ein WDM-Bustreiber muss eine Sicherheitsbeschreibung für die PDO jedes Geräts bereitstellen, das im Rohformatmodus betrieben werden kann. Verwenden Sie IoCreateDeviceSecure , um das Geräteobjekt mit einer Sicherheitsbeschreibung zu erstellen.

Wenn der Bustreiber ein Gerät nicht im rohen Modus betreibt, muss kein Sicherheitsdeskriptor angegeben werden. Der PnP-Manager bestimmt die Sicherheitsbeschreibung, wie oben beschrieben. Der Bustreiber kann einen Sicherheitsdeskriptor bereitstellen, wenn er sicherstellen muss, dass seine PDOs strengere Sicherheitseinstellungen als die Standardbeschreibung aufweisen. Jeder vom Bustreiber angegebene Deskriptor wird von den Einstellungen in der Registrierung überschrieben.

Weitere Informationen zum Erstellen von Geräteobjekten finden Sie unter Erstellen eines Geräteobjekts.

Steuern des Gerätezugriffs für Nicht-WDM-Treiber

Nicht-WDM-Treiber müssen eine Standardsicherheitsbeschreibung und Klassen-GUID für alle benannten Geräteobjekte angeben, die sie erstellen.

Verwenden Sie die IoCreateDeviceSecure-Routine , um das benannte Geräteobjekt zu erstellen und die Standardsicherheitsbeschreibung und die Klassen-GUID für dieses Gerät anzugeben. Die Sicherheitsbeschreibung wird in einer Teilmenge von SDDL angegeben. Weitere Informationen finden Sie unter SDDL für Geräteobjekte.

Das System überschreibt die Standardsicherheitsbeschreibung mit allen Sicherheitseinstellungen in der Registrierung für die angegebene Klassen-GUID. Der Treiber muss eine eigene eindeutige GUID für das Gerät angeben. Verwenden Sie das GuidGen-Tool, um eine eindeutige GUID zu generieren. (GuidGen ist im Microsoft Windows SDK enthalten.)