Promotic

Komponent SafeOper

Komponenty oraz ustawienie SafeOper służy do zabezpieczenia aplikacji przed niepożądaną ingerencją użytkownika, na przykład uruchamianie innych aplikacji, zakończenie biegu aplikacji PROMOTIC, itd.

Funkcjonalność jest założona na możliwości konfiguracji SO Windows 10/7/Embedded/2003-12Server przy pomocy wartości w rejestrach Windows (bazie danych rejestrów) tak, żeby uruchomiona aplikacja PROMOTIC była zabezpieczona przed niepożądaną ingerencją użytkownika. Pliki konfiguracyjne i skrypty są ulokowane w folderze \Promotic\Tools\SafeOper. Wszystko dla SO Windows 7 jest ważne również dla SO Windows 11/10. W zasadzie to nie jest komponent PROMOTIC, ale chodzi tylko o ustawienia w SO Windows.

Zachowanie w ten sposób ustawionego systemu

a) Po uruchomieniu komputera zostanie automatycznie uruchomiona aplikacja PROMOTIC (do systemu Windows zostanie automatycznie zalogowany użytkownik o nazwie Promotic i uruchomi się wsadowy plik AutoStart.bat, w którym zostanie uruchomiona aplikacja PROMOTIC).
b) Nie jest uruchomione środowisko graficzne Windows (desktop) ani pasek zadań (TaskBar) i również nie jest dostępny menedżer zadań (TaskManager).
c) Nie działają klawisze Ctrl+Esc, itd.
d) Klawisze Alt+Tab, Alt+F4, itd. działają i umożliwiajłą manipulację z wcześniej otwartymi oknami i aplikacjami.
e) Jeżeli aplikacja PROMOTIC zostaje zminimalizowana, wtedy również nie działa prawy przycisk myszki w środowisku graficznym ekranu poza aplikacją PROMOTIC. Zminimalizowanie i zakończenie aplikacji dodatkowo można zakazać w konfiguratorze obiektu PmaRoot w karcie "Aplikacja" oraz Wygląd.
f) Interaktwynymi środkami SO Windows nie można uruchomić żadne zadanie.
Dla SO Windows Vista i nowszych po naciśnięciu klawiszy Ctrl+Alt+Del nie można zabronić odlogowania użytkownika lub wyłączenia komputera.
g) Ze skryptów aplikacji można uruchomić dowolną aplikację przy pomocy metod Pm.CreateProcess lub Pm.ShellExecute (a to również w kontekście innego użytkownika Windows, na przykład Admin, przy pomocy programu użytkowego RunAs).
h) Wylogowanie użytkownika lub wyłączenie komputera można wykonać w aplikacji przy pomocy metody Pm.ShutDown (najlepiej wywoływać ją podczas zatrzymania aplikacji w zdarzeniu PmaRoot.onAppStopBegin).

Charakterystyka pracy z systemem PROMOTIC i z aplikacją

Cała instalacja i upgrade systemu PROMOTIC jak również samej aplikacji odbywa się pod kontem wytworzonego użytkownika Windows Admin (grupa Administrators). To konto nie jest w żaden sposób zabezpieczone i umożliwia pełną pracę z SO Windows i z aplikacją PROMOTIC. To ustawienie odpowiada zwykłemu, niezabezpieczonemu trybowi pracy.
Sama zabezpieczona aplikacja PROMOTIC uruchamia się pod kontem wytworzonego użytkownika Windows Promotic (grupa Users i podczas konfiguracji z powodu zapisu do rejestru systemu Windows także przejściowo Administrators). Do foldera \Promotic z zainstalowanym systemem PROMOTIC aplikacja posiada prawa tylko do odczytu.
Ponieważ aplikacja jest zainstalowana pod kontem użytkownika Admin a wykorzystywana jest pod kontem użytkownika Promotic, muszą być wszystkie pliki i foldery aplikacji dostępne użytkownikowi Promotic do odczytu i zapisu. Ten warunek jest spełniony w przypadku systemu plików FAT32, w którym nie jest możliwe ustawianie praw dostępu do plików i folderów, lecz w systemie NTFS jest konieczne zapewnić spełnienie tego waruknu (domyślnie ten warunek nei byłby spełniony).
Po zainstalowaniu SO Windows na samodzielny komputer (poza domenę), SO Windows wykorzystuje uproszczony tryb zabezpieczenia. Dla plików i folderów nie można ręcznie ustawiać prawa dostępu użytkowników, lecz istnieje współdzielony folder Windows (C:\Users\Public\Documents dla SO Windows Vista, Win Serwer 2008 i wyższy), który ma ustawione prawa dostępu tak, że do plików i folderów w nim umieszczonych użytkownicy Windows posiadają prawo do odczytu i zapisu. Z tego powodu jest zalecane ulokować aplikację włącznie z plikami danych aplikacji do tego współdzielonego foldera.
Jeżeli SO Windows należą do domeny, wtedy można aplikację ulokować gdziekolwiek, lecz jest konieczne dla folderów i plików aplikacji udzeilić użytkownikowi Promotic prawa do odczytu i zapisu. W przypadku konieczności można uproszczony tryb zabezpieczenia współdzielenia plików w SO Windows XP, które nie znajdują się w domenie wylączyć przy pomocy 'Miejscowych zasad zabezpieczenia' komputera.
Podczas konfiguracji komponentu SafeOper jest konieczne działać ściśle według instrukcji. Ważnym jest, że można przy pomocy klawisza Shift, przytrzymanego podczas całego startu SO Windows, zakazać automatyczne zalogowanie użytkownika Promotic i następujące uruchomienie aplikacji i zamiast tego zalogować się jako użytkownik Admin i wykonać ewentualne zmiany w konfiguracji SafeOper, w aplikacji lub w systemie PROMOTIC. W skrajnym przypadku można usunąć użytkownika Promotic i rozpocząć caly proces instalacji od punktu 7).
Uruchamiać pliki REG (SafeOperStart.reg oraz SafeOperStop.reg) można wyłącznie pod kontem użytkownika Promotic a to tylko w momencie, kiedy jest na przejściowy okres zaszeregowany także do grupy Administrators. W zasadzie jest konieczne uruchomienie pliku SafeOperStart.reg tylko raz podczas instalacji, podczas gdy plik SafeOperStop.reg zazwyczaj nie jest konieczne uruchamiać nigdy.

Opis poszczególnych czynności podczas instalacji na SO Windows

Przy niewłaściwej instalacji może w skrajnym przypadku dojść do sytuacji, kiedy nie można się poprwanie zalogować do zainstalowanego systemu. Z tego powodu zalecane dotrzymanie ciągu następujących czynności:
1) Zaloguj się jako użytkownik Administrator.
2) Wytwórz nowego użytkownika Admin, członka grupy Administrators (ważny krok, nie pomiń go).
3) Wyloguj się i zaloguj jako użytkownik Admin.
4) Instalacja systemu PROMOTIC do foldera "C:\Promotic".
5) Instalacja aplikacji do nowego foldera w folderze współdzielonym C:\Users\Public\Documents (dla SO Windows Vista, Serwer 2008 i wyższy).
6) Edytuj pliki SafeOper w folderze \Promotic\Tools\SafeOper (AutoStart.bat uruchamia aplikację PROMOTIC, SafeOperStart.reg ustawia użytkownika Promotic do trybu SafeOper oraz SafeOperStop.reg ustawia użytkownika Promotic z powrotem do trybu zwykłego).
6.1) AutoStart.bat, w pliku zedytuj polecenie uruchomienia aplikacji PROMOTIC (plik możesz również skopiować na inne miejsce, gdzie nie dojdzie do jego przepisania podczas upgrade systemu PROMOTIC).
6.2) SafeOperStart.reg, w pliku zedytuj klucz ze ścieżką do pliku AutoStart.bat (Shell), nazwa komputera (DefaultDomainName) oraz hasło użytkownika Promotic (DefaultPassword).
7) Wytwórz nowego użytkownika Promotic, członka grupy Users oraz Administrators.
8) Wyloguj się i zaloguj jako użytkownik Promotic.
9) Uruchom (wczytaj) plik SafeOperStart.reg w folderze \Promotic\Tools\SafeOper (folder WinXP lub Win7).
10) Wyjmij użytkownika Promotic z grupy Administrators.
11) Zrestartuj komputer.

Przykłady

Przykład1:
Zakończenie biegu SO Windows równocześnie z zakończeniem biegu aplikacji przez wywołanie metody Pm.ShutDown w zdarzeniu PmaRoot.onAppStopBegin.
VBScriptWybierz oraz skopiuj do schowka

Pm.ShutDown 2, true
Przykład2:
Uruchomienie wiersza poleceń w kontekście zalogowanego użytkownika Windows (Promotic) w skrypcie przy pomocy metody Pm.CreateProcess.
VBScriptWybierz oraz skopiuj do schowka

Pm.CreateProcess "cmd.exe", ""
Przykład3:
Uruchomienie wiersza poleceń w kontekście innego użytkownika Windows (Admin) w skrypcie przy pomocy metody Pm.CreateProcess. Tego polecenia nie powinno zabraknąć w menu serwisowym aplikacji zabezpieczonej przez komponent SafeOper, ponieważ wiersz poleceń umożliwia uruchamianie dowolnego innego oprogramowania, edycję użytkowników Windows i ich praw dostępu, kopiowanie i kasowanie plików, itd.
VBScriptWybierz oraz skopiuj do schowka

Pm.CreateProcess "runas /user:Admin cmd.exe", ""
Przykład4:
Uruchomienie edycji konkretnego pliku w kontekście innego użytkownika Windows z tym, że przy każdym uruchomieniu będzie konieczne wprowadzenie hasła danego użytkownika (hasło nie może być puste).
VBScriptWybierz oraz skopiuj do schowka

Pm.CreateProcess "runas /user:Admin ""notepad.exe C:\Promotic\Apps\Aplikacja1\XY.ini""", ""
Przykład5:
Uruchomienie aplikacji w pliku wsadowym AutoStart.bat przy pomocy programu użytkowego RunLater (wykorzystanie tego programu jest konieczne, żeby po uruchomieniu aplikacji na ekranie nie pozostało okno z wierszem poleceń).
C:\Pm\RunLater.exe /t=1 /f=C:\Documents and Settings\All Users\Dokumenty\Demo\demo.pra

Przydatne polecenia wiersza poleceń

Przykład1:
Uruchomienie nowego wiersza poleceń w kontekście innego użytkownika Windows (Admin) z wiersza poleceń (który jest na przykład w kontekście Promotic).
runas /user:Admin cmd.exe
Przykład2:
Uruchomienie narzędzia do edycji użytkowników Windows (możliwość przydzielenia praw administratorskich użytkownikowi Promotic).
Nie dostępne dla SO Windows Home edycji (SO Windows 11/10 Home, SO Windows 7 Home Basic/Premium, ...)
Modyfikacje można wykonywać tylko w kontekście użytkownika Windows z uprawnieniami administratorskimi (Admin).
lusrmgr.msc
Przykład3:
Uruchomienie narzędzia programowego do Local Security Policy Editor
Nie dostępne dla SO Windows Home edycji (SO Windows 11/10 Home, SO Windows 7 Home Basic/Premium, ...)
Modyfikacje można wykonywać tylko w kontekście użytkownika Windows z uprawnieniami administratorskimi (Admin).
secpol.msc
Przykład4:
Polecenie uruchomienia środowiska okien, paska narzędziowego z przyciskiem Start SO Windows (jeżeli jest aktywny SafeOper i środowisko okien jest wyłączone). Później jest konieczne restart komputera dlatego, żeby SafeOper ponownie zaczął w pełni działać
explorer.exe
Przykład5:
Uruchomienie pliku REG SafeOperStart.reg lub SafeOperStop.reg (w folderze \Promotic\Tools\SafeOper (ForWin) aktywującego lub deaktywującego komponent SafeOper. Można wykonać wyłącznie w kontekście Windows użytkownika Promotic a to wyłącznie w chwili, kiedy jest na okres przejściowy zaszeregowany również do grupy Administrators.
SafeOperStart.reg
SafeOperStop.reg
Przykład6:
Edycja pliku tekstowego.
notepad "C:\Promotic\Tools\SafeOper\ForWin\AutoStart.bat"
notepad "C:\Promotic\Tools\SafeOper\ForWin\SafeOperStart.reg"
© MICROSYS, spol. s r.o.