Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Uwaga / Notatka
Ta dokumentacja jest przeznaczona dla deweloperów programu .NET Framework, którzy chcą używać zarządzanych klas automatyzacji interfejsu użytkownika zdefiniowanych w przestrzeni nazw System.Windows.Automation. Aby uzyskać najnowsze informacje na temat automatyzacji interfejsu użytkownika, zobacz Windows Automation API: Automatyzacja interfejsu użytkownika.
W tym omówieniu opisano model zabezpieczeń automatyzacji interfejsu użytkownika firmy Microsoft w systemie Windows Vista.
Kontrola konta użytkownika
Bezpieczeństwo jest głównym celem systemu Windows Vista, a wśród innowacji jest możliwość uruchamiania użytkowników jako standardowych (innych niż administrator) bez konieczności blokowania uruchamiania aplikacji i usług, które wymagają wyższych uprawnień.
W systemie Windows Vista większość aplikacji jest dostarczana ze standardowym lub administracyjnym tokenem. Jeśli nie można zidentyfikować aplikacji jako aplikacji administracyjnej, zostanie ona domyślnie uruchomiona jako aplikacja standardowa. Zanim aplikacja zostanie zidentyfikowana jako administracyjna, system Windows Vista wyświetli użytkownikowi monit o zgodę na uruchomienie aplikacji jako podwyższonego poziomu uprawnień. Monit o wyrażenie zgody jest wyświetlany domyślnie, nawet jeśli użytkownik jest członkiem lokalnej grupy Administratorzy, ponieważ administratorzy są uruchamiani jako użytkownicy standardowi do momentu, gdy aplikacja lub składnik systemu, który wymaga poświadczeń administracyjnych żąda uprawnień do uruchomienia.
Zadania wymagające wyższych uprawnień
Gdy użytkownik próbuje wykonać zadanie wymagające uprawnień administracyjnych, system Windows Vista wyświetla okno dialogowe z prośbą o zgodę użytkownika na kontynuowanie. To okno dialogowe jest chronione przed komunikacją między procesami, dzięki czemu złośliwe oprogramowanie nie może symulować danych wejściowych użytkownika. Ekran logowania pulpitu podobnie nie jest normalnie dostępny dla innych procesów.
Klienci automatyzacji interfejsu użytkownika muszą komunikować się z innymi procesami. Niektóre z nich mogą działać na wyższym poziomie uprawnień. Klienci mogą również potrzebować dostępu do okien dialogowych systemu, które nie są zwykle widoczne dla innych procesów. W związku z tym klienci automatyzacji interfejsu użytkownika muszą być zaufani przez system i muszą działać z specjalnymi uprawnieniami.
Aby być zaufanym do komunikowania się z aplikacjami działającymi na wyższym poziomie uprawnień, aplikacje muszą być podpisane.
Pliki manifestu
Aby uzyskać dostęp do chronionego interfejsu użytkownika systemu, aplikacje muszą być kompilowane przy użyciu pliku manifestu zawierającego uiAccess atrybut w tagu requestedExecutionLevel w następujący sposób:
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel
level="highestAvailable"
uiAccess="true" />
</requestedPrivileges>
</security>
</trustInfo>
Wartość atrybutu level w tym kodzie jest tylko przykładem.
uiAccess domyślnie ma wartość "false"; oznacza to, że jeśli atrybut zostanie pominięty lub jeśli nie ma manifestu dla zestawu, aplikacja nie będzie mogła uzyskać dostępu do chronionego interfejsu użytkownika.