Kako onemogućiti UAC za određeni program u sustavu Windows 10?

U ovom ćemo članku pokazati kako selektivno onemogućiti UAC za određenu aplikaciju bez potpunog isključivanja ove usluge kontrole korisničkih računa. Pogledajmo nekoliko načina za isključivanje kontrole korisničkih računa za aplikaciju pomoću zastave kompatibilnosti. RunAsInvoker.

Kontrola korisničkog računa ili Kontrola korisničkog računa (UAC) traži od korisnika potvrdu svake radnje koja zahtijeva administratorska prava. Ovo je prilično učinkovit mehanizam za zaštitu Windows od različitih prijetnji (virusa, trojana, crva, rootkita itd.). Neke korisnike nervira prozor UAC-a i oni u potpunosti onemogućavaju kontrolu korisničkih računa, iako Microsoftovi i stručnjaci za informacijsku sigurnost toplo preporučuju da to ne urade..

Oznaka RunAsInvoker omogućuje pokretanje aplikacije s markerom naslijeđenim od nadređenog postupka. Time se poništava obrada manifesta aplikacije i otkrivanje instalacijskih procesa. Ovaj parametar ne daje administratorska prava, već samo blokira izgled UAC prozora.

Ako program zahtijeva pokretanje prava administratora, jer Ako promijeni sistemske postavke ili sistemske datoteke, tada se korisnički privilegiji u aplikaciji ne povećavaju, kada je UAC za to onemogućen. Program će se i dalje izvoditi s pravima trenutačnog korisnika, a ako nema ovlasti te izmjene, program ih neće moći izvršiti. Postoji i mali broj aplikacija koje se pokreću samo u načinu "Kao administrator", zanemarujući zastavicu kompatibilnosti RunAsInvoker..

Primjerice onemogućit ćemo pojavu zahtjeva za kontrolu korisničkih računa za uređivač registra (regedit.exe). Unatoč činjenici da moj račun ima administratorska prava, kad pokrenem uslužni program, i dalje dobivam UAC zahtjev za potvrdu pokretanja.

sadržaj:

  • Onemogućavanje UAC-a za program pomoću alata za kompatibilnost aplikacija
  • Omogućite RUNASINVOKER zastavu za program putem registra
  • Datoteka Bat za pokretanje aplikacije u RunAsInvoker načinu rada

Onemogućavanje UAC-a za program pomoću alata za kompatibilnost aplikacija

Trebamo uslužni program Alat za kompatibilnost aplikacija, koji je dio Windows ADK-a. Najnoviju verziju sustava Windows ADK za Windows 10 preuzmite ovdje.

Pokrenite preuzetu datoteku adksetup.exe i tijekom instalacije (programu treba pristup Internetu) odaberite samo Alat za kompatibilnost aplikacija.

primjedba. paket Microsoftov alat za kompatibilnost aplikacija - besplatan set alata namijenjen rješavanju problema s kompatibilnošću aplikacija prilikom nadogradnje na nove verzije sustava Windows.

Dvije verzije pojavit će se u sustavu Administrator kompatibilnosti aplikacija - 32 i 64 bitna verzija. Pokrenite verziju Administrator kompatibilnosti aplikacija ovisno o dubini bita aplikacije za koju želite potisnuti UAC zahtjev.

Pokrenite uslužni program Administrator kompatibilnosti (32-bitni) s administratorskim pravima (!). U odjeljku Prilagođene baze podataka desnom tipkom miša kliknite stavku Nova baza podataka i odaberite Stvorite novo-> Popravak aplikacija.

U prozoru koji se otvori navedite naziv aplikacije (regedit), proizvođača (Microsoft) i put do izvršne datoteke (C: \ Windows \ regedit.exe).

Preskočite sljedeći prozor čarobnjaka za postavljanje (Način kompatibilnosti), tapkanjem sljedeći. U prozoru Popravci kompatibilnosti provjerite opciju RunAsInvoker.

Ako želite, možete osigurati da aplikacija može raditi bez UAC-a klikom na gumb testnog pokretanja (Test trčanje).

U prozoru Podudarne informacije Možete odrediti koje parametre programa treba provjeriti (verzija, suma provjere, veličina itd.). Ostavio sam provjere COMPANY_NAME, PRODUCT_NAME i ORIGINAL_FILENAME da ne bih ponovo stvorio datoteku zakrpa nakon sljedećeg ažuriranja sustava Windows 10 i ažuriranja verzije regedit datoteke.

vijeće. Da biste zaštitili od napadača zamjenu izvršne datoteke, poželjno je koristiti kontrolni zbroj, datotečnu_verziju i veličinu kontrolne sume. Imajte na umu da će dodatne provjere donekle usporiti pokretanje aplikacije.

tisak završiti te odredite ime datoteke na koju želite, primjerice, spremiti kreirani paket ispravki kompatibilnosti regedit.sdb. Ova će datoteka sadržavati upute za pokretanje aplikacije s navedenim opcijama kompatibilnosti..

Ostaje primijeniti paket popravka kompatibilnosti na vašu aplikaciju. To možete učiniti izravno s konzole za kompatibilnost administratora (odabirom instalirati) ili iz naredbenog retka.

Da biste to učinili, otvorite naredbeni redak s administratorskim pravima i pokrenite naredbu:

sdbinst -q c: \ ps \ regedit.sdb

Ako je sve učinjeno ispravno, pojavit će se poruka o uspješnoj primjeni paketa..

Instalacija regedita je dovršena.

Nakon instaliranja paketa, odgovarajući unos pojavit će se na popisu instaliranih Windows programa (Programi i značajke).

Pokušajte sada pokrenuti aplikaciju u korisničkoj sesiji bez prava lokalnih administratora. Sada bi trebao započeti bez UAC zahtjeva..

Sada provjerite s kojim privilegijama se ova aplikacija izvodi. Da biste to učinili, u upravitelj zadataka na kartici procesa dodajte stupac "Povišen". Provjerite je li postupak regedit.exe pokrenut od korisnika u neprivilegiranom načinu (Povišen = Ne).

U ovom procesu uređivača registra korisnik može uređivati ​​samo svoje grane registra, ali kada pokušate urediti / stvoriti nešto u sustavu HKLM, pogreška "Nemate potrebna dopuštenja".

Ubuduće će se ovaj popravak kompatibilnosti moći distribuirati na korisnička računala pomoću grupnih pravila. Na taj način možete onemogućiti provjere UAC-a za određene aplikacije na više računala u domeni Active Directory.

Da biste uklonili popravak kompatibilnosti, pokrenite naredbu

sdbinst -u c: \ ps \ regedit.sdb

Omogućite RUNASINVOKER zastavu za program putem registra

U sustavu Windows 10 / 8.1 / 7 možete omogućiti registar kompatibilnosti RUNASINVOKER kroz registar. Oznaka kompatibilnosti programa može se postaviti za jednog korisnika ili za sve korisnike računala:

Na primjer, za regedit morate stvoriti novi parametar niza u ogranku registra HKEY_CURRENT_USER \ Software \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers (REG_SZ) obrasca:

  • Naziv vrijednosti: C: \ windows \ regedit.exe
  • Podaci o vrijednosti: RunAsInvoker

Ako želite omogućiti način kompatibilnosti aplikacija za sve korisnike računala, morate stvoriti ovaj parametar u ogranku registra: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Slojevi.

U domeni možete ove postavke registra distribuirati korisnicima putem GPO-a.

Datoteka Bat za pokretanje aplikacije u RunAsInvoker načinu rada

Postoji još jedna mogućnost pokretanja aplikacije bez administrativnih prava i suzbijanja UAC zahtjeva (vidi članak).

Samo stvorite bat datoteku sa sljedećim kodom:

Postavi ApplicationPath = "C: \ windows \ regedit.exe"
cmd / min / C "postavi __COMPAT_LAYER = RUNASINVOKER && start" "% ApplicationPath%"

Kada se ova datoteka datoteke pokrene kao korisnik, pokrenuta će aplikacija bez UAC zahtjeva.

Dakle, pogledali smo kako onemogućiti UAC za određeni program bez potpunog isključivanja kontrole korisničkih računa. To će vam omogućiti da pokrenete Windows programe kao uobičajeni korisnik bez UAC zahtjeva i bez lozinke administratora..