none
Windows Vista/7 a divně fungující UAC

    Dotaz

  • Ahoj. Občas si něco malého naprogramuju v C# pod visual studiem a kvůli UAC jsem našel jeden projekt a knihovnu ProcessPrivileges.dll (http://processprivileges.codeplex.com/), která umožní zvýšit oprávnění aktuálnímu procesu. Konkrétně pokud tuhle knihovnu použiju ve svém programu, tak ho zkompiluju a normálně spustím a ve chvíli, kdy potřebuje třeba měnit oprávnění na souborech, pak mohu pomocí téhle knihovny dodatečně získat v běžícím programu konkrétní privilegia aniž by systém požadoval spustit tento program jako Administrátor. Jak tedy funguje UAC ve windows pokud si může libovolný proces samovolně povyšovat svoje oprávnění (tedy pokud byl spuštěný pod účtem, který je ve skupině Administrators)? Jak konkrétně funguje UAC? Měl jsem za to, že si systém zkontroluje při spouštění aplikace nějaký manifest a pokud aplikace potřebuje zvýšená oprávnění, pak se na ně uživatele zeptá s tím, že povýšení pověření musí dělat sám systém a ne spuštěná aplikace.
    9. března 2012 3:05

Odpovědi

  • Dobrý den,

    používanou knihovnu neznám ale UAC funguje tak, že i když proces beží pod účtem administrátora, tak nemá administrátorská práva. Pokud je potřebuje nahlásí stejnou chybu jako by jste byl obyčejný uživatel.

    Pokud potřebujete spustit nějaký proces s vyššími právy,musíte se o to postarat. Buď při spuštění aplikace (pravé tlačítko myši a zvolit jako správce) nebo za běhu pomocí relativně jednoduchého volání. V tom okamžiku se systém zeptá uživatele, že proces žádá o zvýšení oprávnění.


    JCH

    9. března 2012 7:05

Všechny reakce

  • Dobrý den,

    používanou knihovnu neznám ale UAC funguje tak, že i když proces beží pod účtem administrátora, tak nemá administrátorská práva. Pokud je potřebuje nahlásí stejnou chybu jako by jste byl obyčejný uživatel.

    Pokud potřebujete spustit nějaký proces s vyššími právy,musíte se o to postarat. Buď při spuštění aplikace (pravé tlačítko myši a zvolit jako správce) nebo za běhu pomocí relativně jednoduchého volání. V tom okamžiku se systém zeptá uživatele, že proces žádá o zvýšení oprávnění.


    JCH

    9. března 2012 7:05
  • Odpoved na tento problem bych hledal spis ve foru se zamerenim na MSDN

    http://social.msdn.microsoft.com/Forums/cs-CZ/categories 

    Fungovani UAC z hlediska MSDN naleznete zde

    http://msdn.microsoft.com/en-us/library/windows/desktop/aa511445.aspx

    M


    9. března 2012 9:26
    Moderátor
  • On 9.3.2012 8:05, ing. Jan Chaloupek wrote:
    > Dobrý den,
    >
    > používanou knihovnu neznám ale UAC funguje tak, že i když proces beží
    > pod účtem administrátora, tak nemá administrátorská práva. Pokud je
    > potřebuje nahlásí stejnou chybu jako by jste byl obyčejný uživatel.
    >
    > Pokud potřebujete spustit nějaký proces s vyššími právy,musíte se o to
    > postarat. Buď při spuštění aplikace (pravé tlačítko myši a zvolit jako
    > správce) nebo za běhu pomocí relativně jednoduchého volání. V tom
    > okamžiku se systém zeptá uživatele, že proces žádá o zvýšení oprávnění.
    >
    > ------------------------------------------------------------------------
    >
    > JCH
    >
    V pripade CMD se da pouziti toto:
     
     
    17. března 2012 8:34