UAC - ano či ne?
UAC - ano či ne?
V souvislosti s opětovným zmíněním UAC na fóru mě napadl takový malinkatý off-topic. Vyjádřete svůj názor na UAC, jestli používat či ne, případně jenom někdy, proč si to myslíte, ... Doufám, že to bude trochu přínosné, přinejmenším v tom, že se tady pravděpodobně dočteme o principech UAC ve větším detailu.
Ελληνικά rulez.
Vzhledem k mým zkušenostem s Linuxem, kde je zvykem, že i administrátor (pokud je současně uživatelem počítače) má svůj vlastní účet s právy obyčejného uživatele, vidím UAC jako pokrok. Totiž v Linuxu, když spustíte proces, který vyžaduje vyšší práva, než má uživatel, pod kterým pracujete, zobrazí se (možná automaticky, možná je to pouze dobrý zvyk programátorů) dialog pro zadání hesla (= spuštění procesu jako 'root'). Když jsem se pokoušel podobný přístup aplikovat na domácí Windows, zkrachovaly moje snahy na několika skutečnostech:
x] Windows se ptají automaticky, jestli spustit proces pod adminem, pouze u souborů s názvem 'setup.exe' a podobně, tj. prakticky nikdy.
x] Pro automatické aktualizace to nefunguje - tray ikonka pro ně se zobrazuje pouze v admin exploreru. (Mám aktivováno pouze oznamování.)
x] Stýkám se s programy, které s tímto vůbec nepočítají. Nebudu rozebírat Sunbelt FW, který nezvládá ani FUS, zmíním třeba instalační programy, které vytvářejí zástupce ve složkách admina nebo automaticky spustí program po instalaci, a až si člověk všechno hezky ponastavuje, zjistí, že to nastavoval adminovi.
x] Některé programy si stále ještě vesele zapisují do složek s omezeným přístupem (svá složka v Program Files, složka Windows) a některé se dokonce ani neobtěžují vyhlásit chybu, když se to nepodařilo (pak člověk má hledat, proč ta či ona věc nefunguje). To, že program nepozná, že nejede pod adminem a zrovna proto se např. update nepovedl, už mi ani nepříjde.
Proto jsem zajásal, když jsem uviděl UAC, který alespoň zčásti toto řeší. Ovšem opět:
x] Musí s tím počítat programátor, což jak vidíme na příkladu AS, není rozhodně jednoduchá záležitost.
x] Tuším, že jsem někde četl, že UAC jde i prolomit nebo jednoduše obejít. (Něco ve stylu, že existuje tweakovací program na vypnutí dotazů a samotná elevace je potom nechráněná.)
x?] Nefunguje to pro uživatele, kteří nemají potenciální práva admina.
Musím ovšem taky zmínit, že s UAC jsem pracoval pouze krátkou dobu, když jsem si pohrával s Vista RC2, takže neznám tuto funkci do podrobností ani neznám nejnovější vývoj.
x] Windows se ptají automaticky, jestli spustit proces pod adminem, pouze u souborů s názvem 'setup.exe' a podobně, tj. prakticky nikdy.
x] Pro automatické aktualizace to nefunguje - tray ikonka pro ně se zobrazuje pouze v admin exploreru. (Mám aktivováno pouze oznamování.)
x] Stýkám se s programy, které s tímto vůbec nepočítají. Nebudu rozebírat Sunbelt FW, který nezvládá ani FUS, zmíním třeba instalační programy, které vytvářejí zástupce ve složkách admina nebo automaticky spustí program po instalaci, a až si člověk všechno hezky ponastavuje, zjistí, že to nastavoval adminovi.
x] Některé programy si stále ještě vesele zapisují do složek s omezeným přístupem (svá složka v Program Files, složka Windows) a některé se dokonce ani neobtěžují vyhlásit chybu, když se to nepodařilo (pak člověk má hledat, proč ta či ona věc nefunguje). To, že program nepozná, že nejede pod adminem a zrovna proto se např. update nepovedl, už mi ani nepříjde.
Proto jsem zajásal, když jsem uviděl UAC, který alespoň zčásti toto řeší. Ovšem opět:
x] Musí s tím počítat programátor, což jak vidíme na příkladu AS, není rozhodně jednoduchá záležitost.
x] Tuším, že jsem někde četl, že UAC jde i prolomit nebo jednoduše obejít. (Něco ve stylu, že existuje tweakovací program na vypnutí dotazů a samotná elevace je potom nechráněná.)
x?] Nefunguje to pro uživatele, kteří nemají potenciální práva admina.
Musím ovšem taky zmínit, že s UAC jsem pracoval pouze krátkou dobu, když jsem si pohrával s Vista RC2, takže neznám tuto funkci do podrobností ani neznám nejnovější vývoj.
Ελληνικά rulez.
-
- Posts: 593
- Joined: 09 Dec 2005, 17:30
- Location: a step further
- Contact:
Ja mam UAC zapnuto a neobtezuje me to. Pri bezne praci to nepocituji a kdyz jednou za mesic musim neco nastavit ten jeden dialog klidne odkliknu.
Mirny problem mohou byt ruzne vyvojove nastroje, ktere delaji debug procesy apod. Nicmene ty muzu spustit "naplno" a predpokladam, ze vyvojar neinstaluje kde-co na svuj PC, tedy riziko neni tak velke (a spoustet by mel jen dane prostredi, ne vse).
Naproti tomu, pokud chci program, ktery neco provede i pod adminem (tech beznych ale moc neni), vyzaduje to pomerne netrivialni cast prace navic. Musim byt schopen spustit "jiny proces", ktery dostane vyssi prava a operaci provede. Zde je to neco za neco.
Totiz je take otazka, jestli admin ma mit neomezena prava (jako treba na Linuxu), nebo jestli nektere akce maji byt minimalne obtiznejsi i pro nej (ne bezne ukony spravy OS, ale veci, ktere k zovotu nepotrebuje, napr. mazani event logu, zapis do pameti procesu, atp.). Nicmene to je na jinou debatu.
Mirny problem mohou byt ruzne vyvojove nastroje, ktere delaji debug procesy apod. Nicmene ty muzu spustit "naplno" a predpokladam, ze vyvojar neinstaluje kde-co na svuj PC, tedy riziko neni tak velke (a spoustet by mel jen dane prostredi, ne vse).
Tady je to neco jineho. Altap potrebuje, aby mohl nektere operace, po povoleni (= elevace procesu), jako admin provadet. Pokud clovek pise bezny SW a zapisuje na spravna mista vubec to nepociti. Pokud neni programator tele a nepise vse stejne od dob DOSu, tak zadna zmena. <no_flame>Bohuzel dneska si kazdy mysli, ze je programator, kdyz napsal 3 programy po 1000 radcich a ze s tim vystaci cely zivot.</no_flame>ether wrote:x] Musí s tím počítat programátor, což jak vidíme na příkladu AS, není rozhodně jednoduchá záležitost.
Naproti tomu, pokud chci program, ktery neco provede i pod adminem (tech beznych ale moc neni), vyzaduje to pomerne netrivialni cast prace navic. Musim byt schopen spustit "jiny proces", ktery dostane vyssi prava a operaci provede. Zde je to neco za neco.
Totiz je take otazka, jestli admin ma mit neomezena prava (jako treba na Linuxu), nebo jestli nektere akce maji byt minimalne obtiznejsi i pro nej (ne bezne ukony spravy OS, ale veci, ktere k zovotu nepotrebuje, napr. mazani event logu, zapis do pameti procesu, atp.). Nicmene to je na jinou debatu.
Dotazy na povoleni/zamitnuti bezi v samotnem "desktopu" a bezny SW tam nema pravo cokoli udelat. Nicmene pokud je user blazen a nainstaluje nejakou services apod., ktera bude mit vyssi prava nez je nutne, muze i UAC obejit. Neni to lek na blbost, ale na spatny SW.ether wrote: x] Tuším, že jsem někde četl, že UAC jde i prolomit nebo jednoduše obejít. (Něco ve stylu, že existuje tweakovací program na vypnutí dotazů a samotná elevace je potom nechráněná.)
Pokud nejsem admin, pta se to na heslo. Bud ho vim a muzu to povolit a nebo ne (= jsem bezny user) a potom nemam co do takovyhle veci sahat.ether wrote: x?] Nefunguje to pro uživatele, kteří nemají potenciální práva admina.
Jiri {x2} Cincura
-
- ALTAP Staff
- Posts: 5231
- Joined: 08 Dec 2005, 06:34
- Location: Novy Bor, Czech Republic
- Contact:
Hezká by byla transparentní implementace UAC, kde by program o UAC nemusel mít tušení. Pravděpodobně to však nebylo proveditelné, takže se MS přiklonili k radikálnímu kroku a porušili do jisté míry zpětnou kompatibilitu, kterou lehce kompenzují technologie jako je virtualizace adresářů a registry.cincura.net wrote:Naproti tomu, pokud chci program, ktery neco provede i pod adminem (tech beznych ale moc neni), vyzaduje to pomerne netrivialni cast prace navic. Musim byt schopen spustit "jiny proces", ktery dostane vyssi prava a operaci provede. Zde je to neco za neco.ether wrote:x] Musí s tím počítat programátor, což jak vidíme na příkladu AS, není rozhodně jednoduchá záležitost.
Většiny aplikací se UAC nedotkne. I když by se mi líbilo, kdyby i textový editor (řekněme Notepad) při pokusu o uložení do zapovězených adresářů nabídnul UAC eskalaci práv místo zmatené chybové hlášky:
---------------------------
Notepad
---------------------------
Cannot create the readme.txt file.
Make sure that the path and file name are correct.
---------------------------
OK
---------------------------
-
- Posts: 593
- Joined: 09 Dec 2005, 17:30
- Location: a step further
- Contact:
Spis byla obava, jestli by to fungovalo. Existuje tisice binarek a poradne to naladit, by byl asi problem.Jan Rysavy wrote:Hezká by byla transparentní implementace UAC, kde by program o UAC nemusel mít tušení. Pravděpodobně to však nebylo proveditelné, takže se MS přiklonili k radikálnímu kroku a porušili do jisté míry zpětnou kompatibilitu, kterou lehce kompenzují technologie jako je virtualizace adresářů a registry.
Jj, nektery program ocekavaji, ze budes zapisovat jen do svych adresaru a jinak ze si to pustis pod adminem. Ale nekdy se taky prehmatnu a musim to udelat znova.Jan Rysavy wrote: Většiny aplikací se UAC nedotkne. I když by se mi líbilo, kdyby i textový editor (řekněme Notepad) při pokusu o uložení do zapovězených adresářů nabídnul UAC eskalaci práv místo zmatené chybové hlášky:
---------------------------
Notepad
---------------------------
Cannot create the readme.txt file.
Make sure that the path and file name are correct.
---------------------------
OK
---------------------------
Jiri {x2} Cincura