Покретање програма без административних права и сузбијање УАЦ захтева

Многи програми захтијевају повишење права при покретању (икона штитника иконе), али у ствари, не захтијевају администраторска права да би нормално функционирали (на примјер, ручно сте корисницима додијелили потребна права на директоријум програма у програму ПрограмФилес и огранке регистра који програм користи). Сходно томе, када покренете такав програм од једноставног корисника, ако је контрола корисничког налога омогућена на рачунару, појавит ће се УАЦ захтјев и кориснику ће бити потребно да унесе лозинку администратора. Да би заобишли овај механизам, многи једноставно онемогућавају УАЦ или дају корисничка администраторска права на рачунару, додајући их групи локалних администратора. Наравно, обе ове методе нису безбедне..

Садржај:

  • Зашто би редовна апликација можда требала администраторска права
  • Покретање програма који од обичног корисника захтева администраторска права
  • __ЦОМПАТ_ЛАИЕР променљива околине и РунАсИнвокер параметар

Зашто би редовна апликација можда требала администраторска права

Може се захтијевати администраторска привилегија да програм промијени одређене датотеке (дневнике, конфигурације итд.) У својој властитој мапи у Ц: \ Програм Филес (к86) \ СомеАпп). Корисници подразумевано немају дозволу за уређивање овог директорија, односно за нормалан рад таквог програма потребна су администраторска права. Да бисте решили овај проблем, морате ручно доделити право измене / писања кориснику (или групи корисника) програмској мапи под администратором на нивоу НТФС.

Напомена. У ствари, пракса складиштења промене података апликација у сопственом директорију у Ц: \ Програм Филес није тачна. Исправније је чување података апликације у корисничком профилу. Али ово питање се већ односи на лењост и неспособност програмера.

Покретање програма који од обичног корисника захтева администраторска права

Претходно смо описали како можете онемогућити УАЦ захтев за одређени програм користећи параметар РунАсИнвокер. Међутим, ова метода није довољно флексибилна. Можете користити и РунА-ове са лозинком администратора / САВЕЦРЕД (такође несигурно). Размислите о једноставнијем начину да приморате било који програм да се покрене без административних права (и без уноса лозинке администратора) са омогућеним УАЦ-ом (4.3 или 2 нивоа УАЦ клизача).

На примјер, узмите услужни програм за уређивање регистра - регедит.еке (налази се у директоријуму Ц: \ виндовс \ систем32). Када покренете регедит.еке, појавит ће се прозор УАЦ и, ако не потврдите висину привилегија, уређивач регистра се не покреће..

Креирајте датотеку на радној површини рун-ас-нон-админ.бат са следећим текстом:

цмд / мин / Ц "сет __ЦОМПАТ_ЛАИЕР = РУНАСИНВОКЕР && старт" "% 1"

Сада, да бисте приморали апликацију да се покреће без административних права и сузбијете УАЦ захтев, само превуците жељену еке датотеку у ову бат датотеку на радној површини.

Након тога, уредник регистра требао би се покренути без УАЦ захтјева. Отворите менаџер процеса и додајте колону Повишен (Са вишим нивоом дозвола) видећете да систем има регедит.еке процес са непромењеним статусом (започет са правима корисника).

Покушајте с уређивањем било којег параметра у огранку ХКЛМ-а. Као што видите, приступ уређивању регистра у овој грани је ускраћен (овај корисник нема дозволу за писање подружницама регистра система). Али можете додавати и уређивати кључеве у властитој огранци регистра корисника - ХКЦУ.

Слично томе, можете покренути бат датотеку и одређену апликацију, само одредите путању до извршне датотеке.

рун-апп-ас-нон-админ.бат

Подесите АпплицатионПатх = "Ц: \ програмске датотеке \ МиАпп \ тестапп.еке"
цмд / мин / Ц "сет __ЦОМПАТ_ЛАИЕР = РУНАСИНВОКЕР && старт" "% АпплицатионПатх%"

Можете додати и контекстни мени који додаје могућност покретања свих апликација без повишења дозвола. Да бисте то учинили, креирајте следећу рег датотеку и увезите је у регистар.

Виндовс Регистри Едитор Верзија 5.00
[ХКЕИ_ЦЛАССЕС_РООТ \ * \ схелл \ форцерунасинвокер]
@ = "Покрени као корисник без елемента УАЦ"
[ХКЕИ_ЦЛАССЕС_РООТ \ * \ схелл \ форцерунасинвокер \ наредба]
@ = "цмд / мин / Ц \" постављено __ЦОМПАТ_ЛАИЕР = РУНАСИНВОКЕР && старт \ "\" \ "% 1 \" \ ""

Након тога, да бисте покренули било коју апликацију без административних права, једноставно одаберите „Покрени као корисник без елемента УАЦ"у контекстном менију.

__ЦОМПАТ_ЛАИЕР променљива околине и РунАсИнвокер параметар

Варијабла окружења __ЦОМПАТ_ЛАИЕР омогућава вам постављање различитих нивоа компатибилности за апликације (картица) Компатибилност у својствима еке датотеке). Помоћу ове варијабле можете одредити поставке компатибилности с којима ће се покретати програм. На пример, да бисте покренули апликацију у режиму компатибилности са Виндовсом 7 и резолуцијом 640 × 480, подесите:

поставите __ЦОМПАТ_ЛАИЕР = Вин7РТМ 640к480

Од занимљивих опција за променљиву __ЦОМПАТ_ЛАИЕР издвајамо следеће параметре:

  • РунАсИнвокер - покретање апликације с повластицама надређеног процеса без УАЦ захтјева.
  • РунАсХигхест - покретање апликације са максималним правима која су доступна кориснику (УАЦ захтев се појављује ако корисник има администраторска права).
  • Рунасадмин - покретање апликације са правима администратора (АУЦ захтев се увек појављује).

И.е. параметар РунАсИнвокер не даје администраторска права, већ само блокира изглед УАЦ прозора.