Řízení uživatelských účtů
Poznámka
Tento průvodce návrhem byl vytvořen pro Windows 7 a nebyl aktualizován pro novější verze Windows. Většina pokynů se stále používá v zásadě, ale prezentace a příklady neodráží naše aktuální pokyny k návrhu.
Dobře navržené prostředí pro řízení uživatelských účtů pomáhá zabránit nežádoucím systémovým změnám způsobem, který je předvídatelný a vyžaduje minimální úsilí.
S plně povoleným řízením uživatelských účtů (UAC) obvykle běží interaktivní správci s nejnižšími uživatelskými oprávněními, ale mohou sami zvýšit oprávnění k provádění úloh správy tím, že udělí explicitní souhlas s uživatelským rozhraním pro vyjádření souhlasu. Mezi takové úlohy správy patří instalace softwaru a ovladačů, změna nastavení celého systému, zobrazení nebo změna jiných uživatelských účtů a spouštění nástrojů pro správu.
Ve svém nejméně privilegovaném stavu se správci označují jako chránění správci. Ve svém zvýšeném stavu se označují jako správci se zvýšenými oprávněními. Naproti tomu standardní uživatelé nemohou zvýšit oprávnění sami, ale mohou požádat správce, aby je zvýšil pomocí uživatelského rozhraní přihlašovacích údajů. Předdefinovaný účet správce nevyžaduje zvýšení oprávnění.
Uživatelské rozhraní pro vyjádření souhlasu, které slouží ke zvýšení oprávnění správce chráněných správců.
Uživatelské rozhraní přihlašovacích údajů, které slouží ke zvýšení úrovně Standardní uživatele.
Řízení uživatelských účtů poskytuje následující výhody:
- Snižuje počet programů, které běží se zvýšenými oprávněními, a pomáhá tak uživatelům zabránit v náhodné změně nastavení systému a pomáhá zabránit malwaru v získání přístupu na úrovni celého systému. Při odepření zvýšení oprávnění může malware ovlivnit pouze data aktuálního uživatele. Bez zvýšení oprávnění nemůže malware provádět změny v celém systému ani ovlivnit jiné uživatele.
- Pro spravovaná prostředí, dobře navržené prostředí řízení uživatelských účtů umožňují uživatelům zvýšit produktivitu při spouštění jako standardní uživatelé odebráním zbytečných omezení.
- Poskytuje standardním uživatelům možnost požádat správce, aby jim dal oprávnění k provádění úloh správy v rámci své aktuální relace.
- Pro domácí prostředí umožňuje lepší rodičovskou kontrolu nad změnami v celém systému, včetně toho, jaký software je nainstalovaný.
vývojáři: Informace o implementaci najdete v tématu Přepracování uživatelského rozhraní prokompatibility nástroje UAC .
V systému Windows Vista mohou chránění správci zvolit, aby byli upozorněni na všechny změny systému nebo žádné. Výchozí nastavení řízení uživatelských účtů je upozornit na všechny změny bez ohledu na jejich původ. Až budete upozorněni, vaše plocha bude zašedlá a před provedením čehokoli jiného v počítači musíte žádost schválit nebo zamítnout v dialogovém okně Řízení uživatelských účtů. Zašedlé plochy se označuje jako zabezpečené desktopové, protože ostatní programy nemůžou běžet, když jsou neaktivní.
Systém Windows 7 zavádí dvě zprostředkující nastavení řízení uživatelských účtů pro chráněné správce, kromě dvou z Windows Vista. První je upozornit uživatele pouze v případě, že program provádí změnu, takže správci se při provádění změn automaticky zvýší. Toto je výchozí nastavení řízení uživatelských účtů ve Windows 7, které také využívá zabezpečenou plochu.
Druhé zprostředkující nastavení ve Windows 7 je stejné jako první s tím rozdílem, že nepoužívá zabezpečenou plochu.
Systém Windows 7 zavádí dvě zprostředkující nastavení řízení uživatelských účtů.
Poznámka: Pokyny týkající se psaní kódu pro podporu řízení uživatelských účtů jsou uvedeny v samostatném článku.
Koncepty návrhu
cíle
Dobře navržené prostředí pro řízení uživatelských účtů má následující cíle:
- Eliminujte zbytečné zvýšení. Uživatelé by měli zvýšit oprávnění pouze k provádění úloh, které vyžadují oprávnění správce. Všechny ostatní úkoly by měly být navržené tak, aby eliminovaly potřebu zvýšení oprávnění. Starší verze softwaru často zbytečně vyžaduje oprávnění správce zápisem do oddílů registru HKLM nebo HKCR nebo Program Files nebo Windows System.
- Buďte předvídatelní. Standardní uživatelé potřebují vědět, které úlohy vyžadují, aby správce provedl nebo ho v spravovaných prostředích vůbec nemohl provést. Správci potřebují vědět, které úlohy vyžadují zvýšení oprávnění. Pokud nemůžou přesně předpovědět potřebu zvýšení oprávnění, je pravděpodobné, že udělí souhlas administrativním úkolům, když by neměli.
- Vyžaduje minimální úsilí. Úlohy, které vyžadují oprávnění správce, by měly být navrženy tak, aby vyžadovaly jeden zvýšení oprávnění. Úkoly, které vyžadují více zvýšení oprávnění, se rychle ztěžují.
- Vraťte se k nejnižším oprávněním. Po dokončení úlohy, která vyžaduje oprávnění správce, by se program měl vrátit k nejnižšímu stavu oprávnění.
tok úloh zvýšení oprávnění
Pokud úkol vyžaduje zvýšení oprávnění, má následující kroky:
Vstupní bod. Úkoly, které vyžadují okamžité zvýšení oprávnění, když je plně povolený nástroj Řízení uživatelských účtů, mají vstupní body označené štítem UAC. V takovém případě by uživatelé měli očekávat, že uživatelské rozhraní zvýšení oprávnění uvidí hned po kliknutí na tyto příkazy a měli by být opatrní, když uvidí uživatelské rozhraní zvýšení oprávnění z úloh, které nemají štít.
V tomto příkladu vyžadují položky ovládacích panelů pro rodičovskou kontrolu a uživatelské účty zvýšení oprávnění.
Pokud je nástroj Řízení uživatelských účtů částečně povolený nebo vypnutý úplně, zobrazí se stínění řízení uživatelských účtů, aby bylo možné označit, že úloha zahrnuje změny na úrovni systému, a proto vyžaduje zvýšení oprávnění, i když uživatel nemusí vidět uživatelské rozhraní zvýšení oprávnění. Vždy se zobrazuje štít UAC pro úlohy, které vyžadují zvýšení oprávnění, udržuje uživatelské rozhraní jednoduché a předvídatelné.
Elevace. U chráněných správců vyžaduje úloha souhlas pomocí uživatelského rozhraní pro vyjádření souhlasu. Pro standardní uživatele vyžaduje úkol přihlašovací údaje správce pomocí uživatelského rozhraní přihlašovacích údajů.
zvýšení oprávnění
Tyto příklady ukazují uživatelské rozhraní přihlašovacích údajů a uživatelské rozhraní pro vyjádření souhlasu.
Oddělte proces se zvýšenými oprávněními. Interně se vytvoří nový proces se zvýšenými oprávněními k provedení úlohy.
Vraťte se k nejnižším oprávněním. V případě potřeby se vraťte k nejnižším oprávněním a proveďte všechny kroky, které nevyžadují zvýšení oprávnění.
Všimněte si, že úkoly si "nepamatují" zvýšené stavy. Pokud například uživatel v průvodci přechádí zpět přes vstupní bod zvýšení oprávnění, musí uživatel pokaždé zvýšit úroveň.
Vzory použití
Řízení uživatelských účtů má několik vzorů použití (v pořadí podle preference):
Práce pro standardní uživatele Navrhnout funkci pro všechny uživatele omezením jeho rozsahu na aktuálního uživatele. Omezením nastavení na aktuálního uživatele (na rozdíl od celého systému) eliminujete potřebu uživatelského rozhraní zvýšení oprávnění zcela a umožníte uživatelům dokončit úkol.
nesprávná odpověď:
V tomto příkladu museli uživatelé systému Windows XP mít oprávnění správce k zobrazení nebo změně aktuálního časového pásma.
správně:
V tomto příkladu byla funkce časového pásma přepracována v systémech Windows 7 a Windows Vista tak, aby fungovala pro všechny uživatele.
Mají samostatné prvky uživatelského rozhraní pro standardní uživatele a správce. Jasně oddělte standardní uživatelské úlohy od úloh správy. Poskytněte všem uživatelům přístup k užitečným informacím jen pro čtení. Jasně identifikujte úlohy správy pomocí štítu řízení uživatelských účtů.
V tomto příkladu položka ovládacích panelů Systému zobrazuje stav všem uživatelům, ale změna nastavení pro celý systém vyžaduje zvýšení oprávnění.
Povolte standardním uživatelům pokus o pokus o úkol a zvýšení úrovně selhání. Pokud můžou standardní uživatelé zobrazit informace a můžou provádět nějaké změny bez zvýšení oprávnění, povolte jim přístup k uživatelskému rozhraní a požádejte je, aby zvýšili úroveň jenom v případě, že úloha selže. Tento přístup je vhodný, když mají uživatelé úrovně Standard omezený přístup, například vlastnosti vlastních souborů v Průzkumníku Windows. Je také vhodný pro nastavení na stránkách hybridního rozbočovače Ovládacích panelů.
V tomto příkladu se uživatel pokusil změnit vlastnosti souboru programu, ale neměl dostatečná oprávnění. Uživatel může zvýšit úroveň a zkusit to znovu.
Pracuje jenom pro správce. Tento přístup použijte jenom pro funkce a programy správce. Pokud je funkce určená pouze pro správce (a neobsahuje žádné navigační cesty nebo užitečné informace jen pro čtení pro standardní uživatele), můžete před zobrazením uživatelského rozhraní zobrazit výzvu k zadání přihlašovacích údajů správce. Tento přístup použijte pro zdlouhavé průvodce a toky stránek, pokud všechny cesty vyžadují oprávnění správce.
Pokud je celý program určený jenom pro správce, označte ho, aby se zobrazila výzva k zadání přihlašovacích údajů správce, aby se spustila. Systém Windows zobrazí tyto ikony programů s překrytím štítu UAC.
V tomto příkladu program vyžaduje oprávnění správce ke spuštění.
Pokyny
Ikona štítu UAC
Ovládací prvky zobrazení s štítem řízení uživatelských účtů označující, že úloha vyžaduje okamžité zvýšení oprávnění, když je plně povolený nástroj Řízení uživatelských účtů, i v případě, že nástroj Řízení uživatelských účtů v současné době není plně povolený. Pokud všechny cesty průvodce a tok stránky vyžadovat zvýšení oprávnění, zobrazte stínění UAC na vstupním bodu úkolu. Správné použití štítu UAC pomáhá uživatelům předpovídat, kdy je vyžadováno zvýšení oprávnění.
Pokud váš program podporuje více verzí Windows, zobrazte štít UAC, pokud alespoň jedna verze vyžaduje zvýšení oprávnění. Vzhledem k tomu, že systém Windows XP nikdy nevyžaduje zvýšení oprávnění, zvažte odebrání štítů nástroje Řízení uživatelských účtů pro systém Windows XP, pokud to můžete provést konzistentně a bez poškození výkonu.
U úloh, které nevyžadují zvýšení oprávnění ve většině kontextů, nezobrazujte stínění UAC. Vzhledem k tomu, že tento přístup bude někdy zavádějící, upřednostňovaným přístupem je místo toho použít správně chráněný kontextový příkaz.
Protože příkaz Nová složka vyžaduje zvýšení oprávnění pouze při použití v systémových složkách, zobrazí se bez stínění UAC.
Štít UAC se dá zobrazit na následujících ovládacích prvcích:
příkazová tlačítka :
Příkazové tlačítko, které vyžaduje okamžité zvýšení.
příkazové odkazy:
Odkaz na příkaz, který vyžaduje okamžité zvýšení oprávnění.
odkazy na :
uac shield
Odkaz, který vyžaduje okamžité zvýšení.
nabídky :
uac shield
Rozevírací nabídka, která vyžaduje okamžité zvýšení oprávnění
Protože si úkoly nepamatují zvýšené stavy, nezmění stínění UAC tak, aby odráželo stav.
Zobrazte štít řízení uživatelských účtů i v případě, že je řízení uživatelských účtů vypnuté nebo uživatel používá předdefinovaný účet správce. Konzistentní zobrazování štítu UAC je snadnější programovat a poskytuje uživatelům informace o povaze úkolu.
Elevace
Kdykoli je to možné, úkoly návrhu prováděné standardními uživateli bez zvýšení oprávnění. Poskytněte všem uživatelům přístup k užitečným informacím jen pro čtení.
Zvýšení úrovně na základě úkolu, nikoli na základě nastavení. Nekombinujte standardní uživatelská nastavení s nastavením správy v jedné stránce nebo dialogovém okně. Pokud například můžou uživatelé úrovně Standard změnit některá, ale ne všechna nastavení, rozdělte tato nastavení jako samostatnou plochu uživatelského rozhraní.
nesprávná odpověď:
V tomto příkladu se standardní uživatelská nastavení nesprávně směšují s nastavením pro správu.
správně:
V tomto příkladu jsou nastavení pro změnu data a času v samostatném dialogovém okně dostupné pouze správcům. Nastavení časového pásma jsou k dispozici standardním uživatelům a nejsou smíšená s nastavením správy.
Při určování, jestli se má ovládací prvek zobrazit nebo zakázat, nemyslete na to, že je potřeba zvýšit úroveň. Je to proto, že:
- V nespravovaných prostředích předpokládejme, že standardní uživatelé můžou zvýšit úroveň tím, že se zeptá správce. Zakázání ovládacích prvků, které vyžadují zvýšení oprávnění, by uživatelům znemožňovalo zvýšení oprávnění správců.
- Ve spravovanýchprostředích Odebráním ovládacích prvků, které vyžadují zvýšení oprávnění, by uživatelům zabránilo zjistit, kdy se mají přestat dívat.
Odstranění zbytečného zvýšení oprávnění:
- Pokud může úkol vyžadovat zvýšení oprávnění, zvyšte úroveň co nejpozději. Pokud úkol potřebuje potvrzení, zobrazte uživatelské rozhraní zvýšení oprávnění až po potvrzení uživatele. Pokud úkol vždy vyžaduje zvýšení oprávnění, zvyšte úroveň v jeho vstupním bodě.
- Po zvýšení úrovně zůstaňte zvýšeni, dokud už nebudou zvýšená oprávnění nutná. Uživatelé by neměli při provádění jedné úlohy vícekrát zvýšit úroveň.
- Pokud uživatelé musí zvýšit úroveň, aby udělali změnu, ale nerozhodli provést žádné změny, ponechte tlačítka pozitivního potvrzení povolená, ale zpracovat potvrzení jako zrušení. Tím se eliminuje, že uživatelé budou muset zvýšit úroveň, aby zavřeli okno.
- nesprávná odpověď:
-
- V tomto příkladu je tlačítko Uložit změny zakázané, aby se zabránilo zbytečnému zvýšení oprávnění, ale bude povoleno, když uživatelé změní výběr. Zakázané tlačítko potvrzení ale vypadá, jako by uživatelé neměli na výběr.
Nezobrazovat chybovou zprávu, když úkoly selžou, protože se uživatelé rozhodli nevýšit úroveň. Předpokládejme, že se uživatelé záměrně rozhodli nepokračovat, takže tuto situaci nebudou považovat za chybu.
nesprávná odpověď:
V tomto příkladu Fabrikam Restore nesprávně zobrazí chybovou zprávu, když se uživatel rozhodne nevýšit úroveň.
Nezobrazovat upozornění, která vysvětlují, že uživatelé možná budou muset zvýšit svá oprávnění k provádění úkolů. Nechte uživatele zjistit tento fakt samostatně.
zobrazení uživatelského rozhraní pro řízení uživatelských účtů a zvýšení oprávnění na základě následující tabulky:
Objekt Okolnost Kam umístit štít UAC Kdy zvýšit úroveň Program Celý program je určený jenom pro správce.
Překrytí štítu UAC na ikoně programuZobrazení uživatelského rozhraní zvýšení oprávnění při spuštění Příkaz Celý příkaz je určený jenom pro správce. uac shield
Štít UAC na příkazovém tlačítku nebo odkazuZobrazení uživatelského rozhraní zvýšení oprávnění při kliknutí na příkazové tlačítko nebo odkaz, ale po potvrzení. Příkaz Příkaz zobrazí užitečné informace jen pro čtení vhodné pro všechny uživatele, ale změny vyžadují oprávnění správce. uac shield
Štít UAC na příkazovém tlačítku nebo odkaz pro provedení změnPři kliknutí na příkazové tlačítko se zobrazí uživatelské rozhraní zvýšení oprávnění, ale po potvrzení. Příkaz Standardní uživatelé můžou zobrazit informace a případně provést nějaké změny bez zvýšení oprávnění. povolit standardním uživatelům pokus a zvýšit úroveň selhání.
Nezobrazovat štít řízení uživatelských účtů pro příkaz, ale zobrazit ho pro vstupní bod zvýšení oprávnění, pokud se příkaz nezdaří.Zobrazení uživatelského rozhraní zvýšení oprávnění při opakování příkazu uživatelem Krok úkolu Všechny následné kroky vyžadují zvýšení oprávnění. uac shield
Štít UAC na tlačítku Další (nebo ekvivalentní).Zobrazení uživatelského rozhraní zvýšení oprávnění při kliknutí na tlačítko Další nebo jiné potvrzení Krok úkolu Některé větve vyžadují zvýšení oprávnění.
Stínění nástroje Řízení uživatelských účtů na příkazových odkazech, které vyžadují zvýšení oprávněníZobrazení uživatelského rozhraní zvýšení oprávnění při kliknutí na odkazy na příkazy se stíněním UAC
Uživatelské rozhraní pro zvýšení oprávnění
- Pokud uživatel poskytne účet, který není platný (jméno nebo heslo), nebo nemá oprávnění správce, stačí znovu zobrazit uživatelské rozhraní přihlašovacích údajů. Nezobrazovat chybovou zprávu
- Pokud uživatel zruší uživatelské rozhraní přihlašovacích údajů, vraťte ho zpět do původního uživatelského rozhraní. Nezobrazovat chybovou zprávu
- Pokud je řízení uživatelských účtů vypnuté a standardní uživatel se pokusí provést úlohu, která vyžaduje zvýšení oprávnění, zadejte chybovou zprávu" Tato úloha vyžaduje oprávnění správce. Chcete-li provést tuto úlohu, musíte se přihlásit pomocí účtu správce."
V tomto příkladu je řízení uživatelských účtů vypnuté, takže chybová zpráva vysvětluje, že uživatel musí používat účet správce.
Kouzelníci
- Nezvyšujte vícekrát. Jakmile se průvodce zvýší, měl by zůstat zvýšený.
- Pokud je úloha provedena v průvodci, umístěte štít UAC na tlačítko Další na stránce Potvrzení (které by mělo být uděleno více konkrétní popisek). Při potvrzení uživatele:
- Pokud je další stránkou stránka Průběh, přejděte na tuto stránku a modálně zobrazte uživatelské rozhraní zvýšení oprávnění. Po úspěšném zvýšení oprávnění proveďte úlohu.
- Pokud je další stránkou stránka Dokončení, přejděte na tuto stránku (ale dočasně nahraďte její obsah textem "Čeká se na oprávnění...") a modálně zobrazte uživatelské rozhraní pro zvýšení oprávnění. Po úspěšném zvýšení oprávnění proveďte úlohu a zobrazte obsah stránky Dokončení.
- Pokud uživatel zruší uživatelské rozhraní zvýšení oprávnění, vraťte se na stránku Potvrzení. Tím umožníte uživateli to zkusit znovu.
- Pokud se úkol provede po dokončení průvodce, umístěte štít UAC na tlačítko Dokončit na stránce Potvrzení (které by mělo být dáno více konkrétní popisek). Při potvrzení uživatele:
- Zůstaňte na stránce Potvrzení a modálně zobrazte uživatelské rozhraní zvýšení oprávnění. Po úspěšném zvýšení oprávnění zavřete průvodce.
- Pokud uživatel zruší uživatelské rozhraní zvýšení oprávnění, vraťte se na stránku Potvrzení. Tím umožníte uživateli to zkusit znovu.
- U zdlouhavých průvodců určených pouze pro správce můžete před zobrazením uživatelského rozhraní zobrazit výzvu k zadání přihlašovacích údajů správce.
Text
- Nepoužívejte tři tečky, protože příkaz vyžaduje zvýšení oprávnění. Potřeba zvýšit úroveň je indikována štítem UAC.
Dokumentace
Při odkazech na řízení uživatelských účtů:
- Podívejte se na funkci Řízení uživatelských účtů (při prvním zmínce) nebo řízení uživatelských účtů (při následné zmínce), nikoli na účet uživatele s minimálními oprávněními nebo LUA.
- Projděte si uživatele, kteří nejsou správci, jako standardní uživatelé.
- Projděte si předdefinované správce počítačů jako předdefinované správce.
V uživatelské dokumentaci:
- Přečtěte si o udělení souhlasu s provedením úlohy správy jako udělení oprávnění.
V programování a další technické dokumentaci:
- Přečtěte si o udělení souhlasu s provedením úlohy správy jako zvýšení oprávnění.
- V kontextu řízení uživatelských účtů se správci označují jako chránění správci, pokud nejsou zvýšeni oprávnění, a správci se zvýšenými oprávněními po zvýšení oprávnění.
- Přečtěte si dialogové okno, které slouží k zadání hesel jako uživatelského rozhraní přihlašovacích údajů. Podívejte se na dialogové okno použité k udělení souhlasu v uživatelském rozhraní pro vyjádření souhlasu. Obecně se podívejte na uživatelské rozhraní zvýšení oprávnění.