UAC   zodpovězená otázka

VB.NET, Bezpečnost

Dobrý deň. Pri testovaní aplikácie na Windows 7 Ultimate (Final so všetkými Update aj s nainštalovaným Visual Studio 2010 Ultimate a s .NET Framework 4.0) som narazil na problém pri "registrovaní" aplikácie do systému a to pomocou suborového systému a registrou. Vo windows XP mi vporiadku zapíše súbor (konkrétne jadro programu do System32) a zapíše do CurrentVerison\Run položku aby sa pri každom štarte spustilo jadro ,ktoré slúži ako TrayIcon a je prispôsobené aby malo nulové zaťaženie procesoru a pamäte.

Problém je ,že UAC mi odopre prístup nielen do System32 ,ale aj do StartUp zložky ... a to už nehovorím o registroch.

Asi nebude moc dobré snažiť sa obísť túto ochranu (čo mi príde aj dosť ťažké a možno aj nemožné ,lebo neprebehne žiadny kód kím to nepovolí užívatel) a bol by som velmi vdačný ak by mi niekto poradil či neexistuje niaký klúč v registroch ktorý sa dá editovať ,tak aby slúžil ako CurrentVersion\Run na spúšťanie súborov pri štarte. Skúšal som aj WinLogon ,ale všetko je pod UAC.

Predom dakujem za odpovede.

PS: ak nikoho nenapadá múdre riešenie ,tak precalen podstúpim aj niake drastické ak je možné ...

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Změňte manifest tak, aby vaše aplikace vyžadovala zvýšená práva. Při spuštění se automaticky objeví okno UAC a po odkliknutí se aplikace spustí se zvýšeným oprávněním.

Anebo tyhle věci řeště v instalátoru, což je doporučovaný postup. A do system32 byste taky nic dávat neměl, on k tomu obvykle není důvod.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Ano ,manifest som už skúšal ,len som chcel dosiahnuť to aby sa nezobrazovalo nič. OK vyskúšam Inno Setup ,ktorý mi poradil pán Ondřej Linhart.

Dakujem

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Tak především aplikace nemá co pohledávat ve složce system32, ale v Program Files, nebo Program Files (x86). Pokud chcete spouštět aplikaci pomocí klíče Run v registru, vytvořte instalátor, který toto zajistí a který bude vyžadovat spuštění s oprávněním správce (Administrators). Doporučuji Inno Setup.

Jinak ten manifest by měl být v aplikace také (ve VB.NET 2010 se dá změnit ve vlastnostech projektu, karta Application, View Windows Settings) a podstatný je tento řádek:

<requestedExecutionLevel level="highestAvailable" uiAccess="false" />

Říká, že aplikace chce běžet pod maximálním oprávněním dostupným pro aktuálního uživatele. Pokud je v aplikaci něco, co vyžaduje administrátorská práva, potom highestAvailable nahraďte parametrem requiresAdministrator.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Prominte ze to oteviram po takove dobe ale nemohu najit reseni ohledne UAC take ... mam Visual Studio 2010 a moje aplikace podporuje D&D souboru a programu do ni ... tedy jen do chvile kdy je ve slozce Debug :) ... jakmile je ve slozce Program Files/Jmeno Programu tak uz to nedovoluje (ikonka preskrtnuteho kolecka) ... docetl jsem se ze je to diky UAC a ze by melo pomoci pridat do manifestu ten radek ... mam ho tam ale nic ... tak jsem zkousel prepsat z Ccka nake reseni pomoci change message flags ci tak nejak za pomoci user32.dll ale rovnez zadna zmena ... jak docilit toho aby mel program potrebna prava v Program Files pls?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Po x-té opakuji, že do Program Files nemá co kdo zapisovat, to je úložiště nainstalovaných aplikací a ne žádná datová složka.

Složka pro účely zápisu libovolných dat aplikací spuštěných pod uživatelem s libovolným oprávněním je např. C:\Users\<Uživatel>\AppData\Roaming.

Prostě to berte jako fakt, dále nemá cenu diskutovat.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Mno reknu to jinak - nechci zapisovat, zapisovat mi jde to neni problem i kdyz vim ze to tam nepatri ale to neni predmerem teto diskuze - je to zatim jen testovaci verze :) ... mym problemem je ze mi od te doby nefunguje drag and drop co jsem ten program dal do program files :) ... a exe soubor tam patri to mi nevyvratite :))

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:  
Heslo:  

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback