Sdílet prostřednictvím


Vytváření zabezpečených instalací zařízení

Při vytváření balíčku ovladačů musíte zajistit, aby se instalace zařízení vždy prováděla zabezpečeným způsobem. Zabezpečená instalace zařízení je ta, která provádí následující akce:

  • omezuje přístup k zařízení a jeho třídám rozhraní zařízení.

  • omezuje přístup ke službám ovladačů vytvořeným pro zařízení.

  • chrání soubory ovladačů před úpravami nebo odstraněním.

  • omezuje přístup k položkám registru zařízení.

  • omezuje přístup ke třídám WMI zařízení.

  • používá správně funkce SetupAPI.

Zabezpečení instalace zařízení je řízeno popisovači zabezpečení. Primárním médium pro určení popisovačů zabezpečení je soubor INF. Systém poskytuje výchozí popisovače zabezpečení a ve většině případů tyto popisovače nemusíte měnit.

Nastavení zabezpečení pro zařízení a rozhraní

Systém poskytuje výchozí popisovače zabezpečení pro všechny třídy nastavení zařízení dodané systémem. Obecně platí, že tyto popisovače umožňují úplný přístup správcům systému a přístup pro čtení/zápis/spouštění pro uživatele. (Popisovače zabezpečení, které řídí přístup k zařízení, řídí také přístup k třídám rozhraní zařízení, pokud existuje.)

Soubory INF pro ovladače WDM mohou určit nastavení zabezpečení, a to buď pro třídu, nebo pro zařízení, přičemž přepíší výchozí nastavení systému. Dodavatelé, kteří vytvářejí novou třídu nastavení zařízení, by měli určit popisovač zabezpečení pro třídu. Obecně platí, že zadání popisovače zabezpečení specifického pro zařízení není nutné. Může být užitečné zadat popisovač zabezpečení specifický pro zařízení, pokud různé typy zařízení, které patří do stejné třídy, mají výrazně různé typy uživatelů.

Chcete-li určit popisovač zabezpečení pro všechna zařízení, která patří do třídy nastavení zařízení WDM, použijte direktivu INF AddReg v oddílu INF ClassInstall32 souboru INF instalačního programu třídy. Direktiva AddReg musí odkazovat na oddíl add-registry-section , který nastavuje hodnoty pro položky registru DeviceType a Security . Tyto hodnoty registru určují popisovač zabezpečení pro všechna zařízení zadaného typu zařízení.

Chcete-li určit popisovač zabezpečení pro jedno zařízení, které patří do třídy nastavení zařízení WDM, použijte direktivu INF AddReg v části INF DDInstall.HW souboru INF zařízení. Direktiva AddReg musí odkazovat na oddíl add-registry-section , který nastavuje hodnoty pro položky registru DeviceType a Security . Tyto hodnoty registru určují popisovač zabezpečení pro všechna zařízení, která odpovídají ID hardwaru nebo kompatibilním ID zadaným přidruženým oddílem modely INF.

Ve výchozím nastavení systém použije popisovač zabezpečení nastavený pro zařízení na žádost o otevření objektu zařízení, který představuje zařízení (například požadavek na otevření zařízení, jehož název zařízení NT je \Device\DeviceName).

Systém ale ve výchozím nastavení nepoužije popisovač zabezpečení nastavený pro zařízení na žádost o otevření objektu v oboru názvů zařízení, kde obor názvů zařízení obsahuje všechny objekty, jejichž názvy mají tvar \Device\DeviceName\ObjectName. Pokud chcete zajistit, aby se pro otevírání požadavků na objekty v oboru názvů zařízení použilo stejné nastavení zabezpečení, nastavte příznak FILE_DEVICE_SECURE_OPEN charakteristik zařízení pro zařízení. Další informace o bezpečném přístupu k zařízení naleznete v tématu Řízení přístupu k oboru názvů zařízení (ovladače systému Windows). Informace o tom, jak nastavit příznak charakteristiky zařízení FILE_DEVICE_SECURE_OPEN naleznete v tématu Určení charakteristik zařízení (ovladače systému Windows).

Správce PnP nastaví hodnoty zabezpečení na objektech zařízení poté, co volá rutinu AddDevice ovladače. Některé ovladače WDM mohou určit popisovač zabezpečení specifický pro zařízení při vytváření objektu fyzického zařízení (PDO) voláním IoCreateDeviceSecure. Další informace naleznete v tématu Zabezpečení objektů zařízení.

Nastavení zabezpečení pro soubory ovladačů

Při kopírování souborů pomocí direktivy INF CopyFiles je možné zadat sekci seznamu souborů.oddíl zabezpečení. Tato část určuje popisovač zabezpečení pro všechny soubory, které jsou zkopírovány direktivou CopyFiles . Dodavatelé však nikdy nemusí určit popisovač zabezpečení pro soubory ovladačů, pokud cíl instalace je jedním ze systémových podadresářů %SystemRoot%. (Další informace o těchto podadresářích naleznete v tématu Použití dirids.) Systém poskytuje výchozí popisovače zabezpečení pro tyto podadresáře a výchozí popisovače by neměly být přepsány.

Nastavení zabezpečení pro funkce ovladačů

V části service-install-section souboru INF ovladače (viz direktiva INF AddService) můžete zahrnout položku Zabezpečení . Tato položka určuje oprávnění potřebná k provádění takových operací, jako je spuštění, zastavení a konfigurace služeb ovladačů přidružených k vašemu zařízení. Systém však poskytuje výchozí popisovač zabezpečení pro služby ovladačů a tento výchozí popisovač obecně nemusí být přepsán.

Nastavení zabezpečení pro položky registru zařízení a ovladačů

Při zadávání položek registru v souborech INF pomocí direktiv INF AddReg můžete zahrnout sekci add-registry-section a Oddíl zabezpečení pro každý oddíl doplňku registru. Oddíl add-registry-section. Oddíl zabezpečení určuje přístupová oprávnění k vytvořeným položkám registru, které jsou vytvořeny přidruženým oddílem add-registry-section . Systém poskytuje výchozí popisovač zabezpečení pro všechny položky registru vytvořené v rámci relativního kořenového adresáře HKR . Proto při vytváření položek registru v relativním kořenovém adresáři nemusíte zadávat popisovač zabezpečení.

Nastavení zabezpečení pro třídy WMI

Systém přiřadí výchozí popisovače zabezpečení identifikátorům GUID, které identifikují třídy rozhraní WMI. Pro windows XP a starší verze operačního systému umožňuje výchozí popisovač zabezpečení pro identifikátory WMI GUID úplný přístup všem uživatelům. Počínaje systémem Windows Server 2003 umožňuje výchozí popisovač zabezpečení přístup pouze správcům.

Pokud váš ovladač definuje třídy rozhraní WMI a nechcete používat výchozí popisovače zabezpečení systému pro tyto třídy, můžete zadat popisovače zabezpečení pomocí oddílu INF DDInstall.WMI v souboru INF zařízení.

Správné používání funkcí SetupAPI

Pokud balíček ovladače obsahuje instalační programy, spolusou instalační programy nebo jiné instalační aplikace, které volají funkce SetupAPI, musíte postupovat podle pokynů pro použití SetupAPI.

Testování nastavení zabezpečení instalace

Pomocí záznamů SetupAPI ověřte, že nastavení zabezpečení související s instalací vašeho zařízení byla zadána správně. Nastavte úroveň protokolování na detailní (0x0000FFFF), a poté vyzkoušejte různé možnosti instalace.

Tyto scénáře by měly zahrnovat počáteční instalace i přeinstalace z uživatelských účtů i účtů správce systému. Zkuste připojit zařízení před instalací softwaru a naopak.

Pokud instalace proběhne úspěšně, zkontrolujte protokol a ověřte, že nedošlo k žádným chybám. Pokud se instalace nezdaří, podívejte se na protokol a zjistěte příčinu selhání.

Po dokončení instalace můžete také provést následující akce:

  • Pomocí Editoru registru můžete zobrazit nastavení zabezpečení přiřazená k položce registru.

  • Pomocí tohoto počítače můžete zobrazit nastavení zabezpečení přiřazená k souboru.