W przypadku większości aplikacji uprawnienia administratora potrzebne są jedynie do instalacji oprogramowania lub nie są potrzebne w ogóle. Czasami jednak zdarza się, że są one również potrzebne do poprawnego działania aplikacji przez cały czas, gdy pozostaje ona uruchomiona. Co w takiej sytuacji ? Jednym z rozwiązań jest nadanie użytkownikowi uprawnień lokalnego administratora. Takie podejście jest skuteczne, ale w mojej opinii nie jest ono idealnym rozwiązaniem z punktu widzenia bezpieczeństwa – atakujący uzyskując dostęp do takiego konta zyskuje bardzo szerokie uprawnienia bez konieczności ich wcześniejszej eskalacji. Można powiedzieć, że tracimy w ten sposób dodatkową warstwę zabezpieczenia, którą miałby do pokonania atakujący.
Naturalnie w każdej organizacji znajdzie się grono osób, dla których uprawnienia administratora, czy to lokalnego czy domenowego, są niezbędne do wykonywania pracy. Słowem kluczem w tym zdaniu jest „niezbędne” – zgodnie z powszechnie uznaną zasadą najmniejszych możliwych uprawnień każdy użytkownik powinien posiadać uprawnienia, które są dla niego niezbędne do wykonywania pracy. Ciężko jednak powiedzieć, że nadanie takich uprawnień jest konieczne w przypadku, gdy są one wymagane tylko do wykorzystywania konkretnych aplikacji.
Często jesteśmy w stanie stwierdzić, czy dana aplikacja do uruchomienia wymaga uprawnień administratora, na podstawie jej ikony. Koło takich aplikacji często pojawia się słynna niebiesko-żółta „tarcza” – symbol UAC (User Access Control), systemu kontrolującego uprawnienia dostępu użytkownika:
Próbując uruchomić taką aplikację, zależnie od skonfigurowanego poziomu restrykcji UAC, użytkownik może zobaczyć różne komunikaty. Domyślnie wyświetlony zostanie komunikat z prośbą o podanie poświadczeń do konta z uprawnieniami administratora:
Aby umożliwić użytkownikowi korzystanie z tych aplikacji, mimo braku posiadania odpowiednich uprawnień, możemy wykorzystać wbudowany w system Windows program runas.exe znajdującego się domyślnie w katalogu C:\Windows\System32.
Jednym ze sposobów jest utworzenie nowego skrótu. W tym celu z poziomu dowolnego konta klikamy PPM np. na pulpicie użytkownika, a następnie w New -> Shortcut:
W polu Type the location of the item wpisujemy następujące polecenie:
runas /user:<Nazwa komputera lub domeny>\<Nazwa konta użytkownika> /savecred “<ścieżka do pliku>“
- runas to odwołanie do wyżej wspomnianego programu o tej nazwie, znajdującego się w katalogu systemowym – C:\Windows\System32. Tworzony skrót będzie uruchamiał właśnie ten program
- przełącznik /user określa użytkownika, z uprawnieniami którego uruchamiana będzie aplikacjia. Niezbędne jest tutaj podanie konta z uprawnieniami administratora. Jeżeli chcemy podać nazwę konta lokalnego administratora podajemy początkowo nazwę komputera, a po „\” nazwę konta np. KOMPUTER\Administrator. Jeżeli chcemy podać tutaj nazwę konta domenowego zamiast nazwy urządzenia podajemy nazwę domeny np. DOMENA.PL\Administrator
- przełącznik /savecred umożliwia zapisanie wprowadzonych poświadczeń, dzięki czemu użytkownik nie będzie musiał podawać ich ponownie do uruchamiania aplikacji
- na końcu, w ” ” (cudzysłowie) podajemy ścieżkę do aplikacji, którą chcemy uruchamiać
W moim przypadku pełne polecenie będzie wyglądało następująco:
runas /user:OCEAN.LOCAL\Administrator /savecred „C:\npp.7.8.9.Installer.exe”
W następnym kroku określamy nazwę skrótu. Dla wygody użytkownika warto ustawić dokładnie taką samą nazwę jak aplikacja, którą chcemy uruchamiać. Można to zrobić już na tym etapie lub oczywiście zmienić nazwę skrótu później:
Skrót został utworzony we wskazanej lokalizacji:
Idąc dalej, dla wygody użytkownika warto również zmienić ikonę skrótu. W tym celu wchodzimy we właściwości klikając PPM na utworzony skrót, a następnie na Properties:
We właściwościach skrótu klikamy opcję Change icon…:
Następnie przechodzimy do wskazania odpowiedniej ikony:
W tym miejscu możemy wskazać plik .ico, ale jeżeli nie mamy do niego dostępu wystarczy wskazać aplikację, którą chcemy uruchamiać:
Ikona została pobrana ze wskazanego pliku, zatwierdzamy ją:
W tym momencie utworzony skrót wizualnie praktycznie nie różni się od oryginału – oczywiście widać na nim ikonę skrótu, natomiast nie powinien być to problem w jego identyfikacji dla użytkownika:
Teraz przechodzimy do najważniejszej kwestii – zapisania poświadczeń. Dla poprawnego działania niezbędne jest, aby operację wykonywać będąc zalogowanym na koncie użytkownika, który będzie korzystał z aplikacji – w innym przypadku nie zadziała to poprawnie. Przy pierwszym uruchomieniu aplikacji wyświetla się nam konsola, w której widzimy prośbę o podanie hasła do wskazanego wcześniej konta administratora:
Po podaniu poprawnego hasła wskazany plik zostaje prawidłowo uruchomiony z uprawnieniami administratora:
Od tego momentu użytkownik może już uruchamiać program za pomocą utworzonego skrótu bez konieczności podawania poświadczeń administratora. Dlaczego tak się dzieje ? Dzięki zastosowaniu przełącznika /savecred wprowadzone poświadczenia zostały zapisane na komputerze. Gdzie możemy je znaleźć ? Otwieramy Control Panel i przechodzimy do zakładki User Accounts:
Następnie przechodzimy do Credential Manager:
W zakładce Windows Credentials możemy znaleźć wprowadzone przed chwilą poświadczenia:
Nawet z poziomu zwykłego użytkownika możemy sprawdzić jakie poświadczenia zostały zapisane na komputerze oraz je edytować. Mimo to, nie jesteśmy w stanie odczytać zapisanego hasła. Ma ono oczywiście formę kropek, jego skopiowanie również nie jest możliwe:
W ten sposób, za każdym razem gdy użytkownik będzie uruchamiał oprogramowanie wykorzystując do tego utworzony skrót, program będzie uruchamiany z uprawnieniami administratora pobierając zapisane poświadczenia z Credential Managera. Z punktu widzenia użytkownika nie będzie to w zasadzie widoczne, a co najważniejsze będzie on mógł korzystać z oprogramowania bez posiadania uprawnień administratora na swoim koncie.
Coś jest dla Ciebie niezrozumiałe? Chciałbyś wyrazić opinię na temat artykułu? Znalazłeś jakiś błąd? Koniecznie daj mi o tym znać wysyłając maila lub wypełniając formularz!
Co jeśli w konsoli nie jestem w stanie nic wpisać
Przy próbie wpisania hasła administratora zamyka okno.
System Windows 10 Enterprise 21H2