If-Koubou

Jak definiujesz funkcję PowerShell wymagającą podniesienia?

Jak definiujesz funkcję PowerShell wymagającą podniesienia? (Jak)

PowerShell może być niezwykle przydatny w wielu codziennych zadaniach, jak to tylko możliwe, ale jeśli potrzebujesz zmodyfikować niektóre funkcje z myślą o odrobinie bezpieczeństwa, to jak zdefiniujesz funkcję, aby wymagała podniesienia? Dzisiejszy post z pytaniami i odpowiedziami dla SuperUser zawiera odpowiedź na ciekawe pytanie czytelnika.

Dzisiejsza sesja pytań i odpowiedzi przychodzi do nas dzięki uprzejmości SuperUser - poddziału Stack Exchange, społecznościowego forum z pytaniami i odpowiedziami.

Pytanie

Czytnik SuperUser Vlastimil chce wiedzieć, jak zdefiniować funkcję PowerShell, która wymaga podniesienia:

Ponieważ nie mogę znaleźć żadnej alternatywy dla Linuksa sudo polecenie elewacji, mam następujące pytanie. Jak zdefiniować funkcję PowerShell, która wymaga podniesienia, tak jak przy aktywowaniu polecenia UAC w moim systemie Windows 8.1 Pro, systemie 64-bitowym? Na przykład powiedz, że uruchomię następującą funkcję:

Z następującymi wynikami:

Aby było całkowicie jasne, jeśli uruchomię PowerShell jako "użytkownik", uruchom powyższą funkcję sprawdzanie systemuChcę, aby funkcja została podniesiona, aby móc wykonać polecenie (chcę, aby pojawił się monit UAC).

Jak zdefiniować funkcję PowerShell, która wymaga podniesienia?

Odpowiedź

Pomocnik SuperUser Ashton ma dla nas odpowiedź:

Aby uruchomić określone polecenie z podniesionego okna:

Na przykład:

Aby uruchomić określony skrypt z podniesionego okna:

Aby uruchomić całą sesję PowerShell, która monituje UAC:

Funkcja do powrotu $ True lub $ False jeśli bieżące okno działa z podwyższonymi uprawnieniami:

Aby upewnić się, że skrypt działa tylko jako administrator, dodaj to na początku:

W PowerShell v4.0 powyższe można uprościć, używając a # Wymagania komunikat:

Źródło: Uruchom z podwyższonymi uprawnieniami [SS64.com]

Czy masz coś do dodania do wyjaśnienia? Dźwięk w komentarzach. Chcesz przeczytać więcej odpowiedzi od innych użytkowników Stack Exchange, którzy znają się na technologii? Sprawdź cały wątek dyskusji tutaj.