Megosztás a következőn keresztül:


A felhasználói felület automatizálásának biztonsági áttekintése

Megjegyzés:

Ez a dokumentáció azoknak a .NET-keretrendszer-fejlesztőknek készült, akik a System.Windows.Automation névtérben definiált felügyelt felhasználói felületi Automation-osztályokat szeretnék használni. A felhasználói felület automatizálásával kapcsolatos legfrissebb információkért lásd Windows Automation API: UI Automation.

Ez az áttekintés a Windows Vista Microsoft UI Automation biztonsági modelljét ismerteti.

Felhasználói fiókok vezérlése

A Biztonság a Windows Vista egyik fő témája, és az újítások közé tartozik az a képesség, hogy a felhasználók szabványos (nem rendszergazdai) felhasználókként fussanak anélkül, hogy feltétlenül letiltanák a magasabb jogosultságokat igénylő alkalmazások és szolgáltatások futtatását.

A Windows Vista rendszerben a legtöbb alkalmazás szabványos vagy felügyeleti jogkivonattal rendelkezik. Ha egy alkalmazás nem azonosítható felügyeleti alkalmazásként, alapértelmezés szerint standard alkalmazásként indul el. Mielőtt egy rendszergazdaként azonosított alkalmazás elindulna, a Windows Vista kéri a felhasználót, hogy hagyja jóvá az alkalmazás rendszergazdaként való futtatását. A hozzájárulási kérés alapértelmezés szerint akkor is megjelenik, ha a felhasználó a helyi Rendszergazdák csoport tagja, mivel a rendszergazdák normál felhasználóként futnak, amíg egy rendszergazdai hitelesítő adatokat igénylő alkalmazás vagy rendszerösszetevő nem kér engedélyt a futtatásra.

Magasabb jogosultságokat igénylő feladatok

Amikor egy felhasználó rendszergazdai jogosultságokat igénylő feladatot próbál végrehajtani, a Windows Vista egy párbeszédpanelt jelenít meg, amely a felhasználó beleegyezését kéri a folytatáshoz. Ez a párbeszédpanel védve van a folyamatok közötti kommunikációtól, így a rosszindulatú szoftverek nem tudják szimulálni a felhasználói bemenetet. Hasonlóképpen, az asztali bejelentkezési képernyőt más folyamatok általában nem tudják elérni.

A felhasználói felületi automatizálási ügyfeleknek más folyamatokkal kell kommunikálniuk, némelyikük talán magasabb jogosultsági szinten fut. Előfordulhat, hogy az ügyfeleknek hozzáférésre van szükségük a rendszer párbeszédpaneleihez, amelyek általában nem láthatók más folyamatok számára. Ezért a felhasználói felület-automatizálási ügyfeleknek megbízhatónak kell lenniük a rendszer számára, és speciális jogosultságokkal kell futniuk.

Ahhoz, hogy megbízható legyen a magasabb jogosultsági szinten futó alkalmazásokkal való kommunikáció, az alkalmazásokat alá kell írni.

Jegyzékfájlok

A védett rendszer felhasználói felületéhez való hozzáféréshez az alkalmazásokat olyan jegyzékfájllal kell létrehozni, amely tartalmazza a uiAccessrequestedExecutionLevel címkében szereplő attribútumot, az alábbiak szerint:

<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
  <security>
    <requestedPrivileges>
      <requestedExecutionLevel
        level="highestAvailable"
        uiAccess="true" />
    </requestedPrivileges>
  </security>
</trustInfo>

A kódban szereplő level attribútum értéke csak példa.

uiAccess alapértelmezett értéke "hamis"; vagyis ha az attribútum nincs megadva, vagy ha a szerelvényhez nincs manifeszt, az alkalmazás nem fér hozzá a védett felhasználói felülethez.