Uruchamianie polecenia jako Administrator za pomocą PowerShell?

Wiesz jak to jest, gdy jesteś użytkownikiem administracyjnym systemu i możesz po prostu kliknąć prawym przyciskiem myszy powiedzmy skrypt wsadowy i uruchomić go jako Administrator bez wpisywania hasła administratora?

Zastanawiam się, jak to zrobić za pomocą skryptu PowerShell. Nie chcę wprowadzać mojego hasła; chcę tylko naśladować metodę Run As Administrator, uruchamianą prawym przyciskiem myszy.

Wszystko, co do tej pory przeczytałem, wymaga podania hasła administratora.

Rozwiązanie

Jeśli bieżąca konsola nie jest podwyższona, a operacja, którą próbujesz wykonać wymaga podwyższonych uprawnień, możesz uruchomić powershell za pomocą opcji "Uruchom jako administrator".

PS> Start-Process powershell -Verb runAs
Komentarze (6)

Możesz łatwo dodać kilka wpisów do rejestru, aby uzyskać "Uruchom jako administrator" menu kontekstowe dla plików .ps1:

New-Item -Path "Registry::HKEY_CLASSES_ROOT\Microsoft.PowershellScript.1\Shell\runas\command" `
-Force -Name '' -Value '"c:\windows\system32\windowspowershell\v1.0\powershell.exe" -noexit "%1"'

(zaktualizowany do prostszego skryptu od @Shay)

Zasadniczo w HKCR:\Microsoft.PowershellScript.1\Shell ustaw wartość domyślną, aby wywołać skrypt za pomocą Powershell.

Komentarze (6)

Takie zachowanie jest zamierzone. Istnieje wiele warstw zabezpieczeń, ponieważ Microsoft naprawdę nie chciał, aby pliki .ps1 były najnowszym wirusem pocztowym. Niektórzy ludzie uważają, że jest to sprzeczne z samym pojęciem automatyzacji zadań, co jest sprawiedliwe. Model bezpieczeństwa Vista+ jest "de-automate" rzeczy, dzięki czemu użytkownik je ok.

Podejrzewam jednak, że jeśli uruchomisz powershell jako podwyższony, powinien on być w stanie uruchamiać pliki wsadowe bez ponownego żądania hasła, aż do zamknięcia powershella.

Komentarze (0)