Komenda Runas dla użytkownika bez hasła

9

Chcę użyć polecenia runas w plikach CMD i Batch, aby uzyskać podwyższone uprawnienia, ale nie mam hasła administratora na komputerze, ponieważ jest to mój komputer domowy i jestem jedynym użytkownikiem. Za każdym razem, gdy próbuję użyć polecenia runas, prosi mnie o hasło, a następnie mówi mi, że puste hasła są niedozwolone, czy jest jakiś sposób na obejście tego? Wiem, że mogę kliknąć prawym przyciskiem myszy i wybrać polecenie Uruchom jako administrator, ale wolałbym mieć polecenie, które może to zrobić, ponieważ nie zawsze jest to opcja, a to tylko trochę uciążliwe.

Mogłem po prostu popełnić jakiś podstawowy błąd, ponieważ nie mam ogromnego doświadczenia z wierszem poleceń, ale nie jestem zupełnie nieświadomy.

użytkownik156558
źródło

Odpowiedzi:

13

Ponieważ jest to środowisko domowe, nieco mniej denerwuję się tą odpowiedzią. Powinieneś przeczytać uwagi w polityce, o której wspomnę, aby zrozumieć, jakie są tego konsekwencje.

Idź do Start | Biegać. Wpisz secpol.msci naciśnij Enter. Przejdź do zasad lokalnych, a następnie Opcje zabezpieczeń. Znajdź zasadę Konta: ogranicz użycie pustych haseł do konta lokalnego tylko do logowania do konsoli . Ustaw na wyłączone.

Patrick Seymour
źródło
+1 za to, że nie każą im po prostu wyłączać UAC. Przynajmniej pozostawiają to włączone!
Mark Allen,
4

Za pomocą VBScript można podnosić polecenia:

Set objShell = CreateObject("Shell.Application")
objShell.ShellExecute "cmd.exe", "", "", "runas", 1 

Zapisz jako a, *.vbsa następnie uruchom go za pomocą cscriptlubwscript

surfasb
źródło
Niezła sztuczka. zdobądź +1
Jet
3

Wierzę, że możesz użyć PSexec.exe SysInternal do wymuszenia podniesienia uprawnień .

Możesz spróbować na przykład uruchomić to: psexec \\%computername% -i -h notepad.exe

Mark Allen
źródło
Niezła sztuczka. Będzie również działał bez tego ostatniego parametru „1”.
Jet
To małe „ja”, a nie 1, wymusza to, co wykonujesz, aby uruchomić Interaktywnie, w przeciwnym razie lubi biegać w sesji bezgłowej i jesteś rozczarowany, zastanawiając się, gdzie, do diabła, poszedł twój notatnik. :) (Byłem tam, zrobiłem to.) Bardzo dobrze może nie być konieczne, gdy uruchamiasz go na komputerze, na którym jesteś zalogowany, nie próbowałem.
Mark Allen
3

Jak odkryłeś, runy nie pozwalają na uruchomienie polecenia podniesionego, tylko jako inny użytkownik.

Podniesienie ma miejsce, gdy próbujesz uruchomić plik wykonywalny oznaczony jako wymagający podniesienia, co powoduje wyświetlenie monitu UAC. To nie jest tylko opcja w CreateProcess. Więc jeśli używasz nie podniesionej kopii cmd i chcesz, aby uruchomiła ona inne zwykłe polecenie, ale ma mieć podniesione, potrzebujesz polecenia interlude, które może uruchomić je dla ciebie, ale jest oznaczone do podniesienia. Komplikuje to fakt, że bieżące katalogi i zmienne środowiskowe nie są dziedziczone przez podwyższone dziecko.

Polecenie su, które załączyłem do mojej powłoki Hamilton C (pełne ujawnienie: jestem autorem) ma opcję sudo, która to rozwiązuje, i oto jak to zrobiłem: Kiedy poprosisz su o uruchomienie polecenia podniesionego, uruchamia kopię samego siebie przechowywane jako Elevate.exe, który jest oznaczony do podniesienia. Elevate, a następnie uzgadnianie przez pamięć współdzieloną z su, aby przekazać argumenty wiersza poleceń, bieżące katalogi i środowisko przez granicę elewacji, a następnie Elevate uruchamia polecenie.

Nicole Hamilton
źródło
0

Natknąłem się na RunAsSpc , który wykona polecenie RunAs, ale obejmuje możliwość odczytu / zapisu zaszyfrowanego, aby twoje hasło nie było ujawnione.

Autor stwierdza, że ​​te wymagania są spełnione przy użyciu RunAsSpc

  • Użytkownik nie musi wprowadzać hasła, takiego jak runy.
  • Użytkownik może uruchomić tylko dozwolone przeze mnie aplikacje.
  • Narzędzia nie można obejść, zmieniając nazwę aplikacji lub zapisując dane identyfikacyjne (np. Runy / zapisane)
  • Powinien być łatwy w obsłudze.
Słońce
źródło
0

Możesz użyć sunarzędzia. Podnosi przez UAC. Możesz go pobrać tutaj .

VEG
źródło