www.tres.pl - Baza wiedzy Trawers ERP - Spis treści


Zarządzanie sesjami programu Trawers ERP 1. Opis ogólny 1.1 Wstęp 1.2 Pojęcia 2. Logowanie 3. Aktywne sesje Ekran informacyjny Aktywne funkcje 4. Zamykanie sesji 4.1 Zamykanie sesji aktywnej 4.2 Zamykanie sesji zerwanych 5. Blokowanie logowania Blokowanie Zwolnienie blokady 6. Sesje tego samego wydania programu 7. Skrypt: tr-killuser 8. Logowanie do serwera bez hasła 9. Tematy powiązane 1. Opis ogólny 1.1 Wstęp Sesja to każdorazowe uruchomienie (wywołanie, logowanie, dostęp) programu. Uruchomienie programu (instancja) działające w danej chwili na komputerze użytkownika lub na serwerze, np. SOA. Zarządzanie sesjami * Identyfikowanie sesji. Sesję identyfikuje systemowy numer procesu PID PID Process IDentifier IdProces identyfikator wykonywanej funkcji * Przeglądanie sesji aktywnych * Zamykanie sesji * Blokowanie logowania * Kontrola limitu sesji określonych w kluczu licencyjnym * Przeglądanie i analiza kroniki sesjii (logów) IdProces (en: IDprocess) Identyfikator wykonywanej funkcji. Wewnętrzny (systemowy), unikalny identyfikator funkcji. Każda wykonywana funkcja ma unikalny IdProces. Np. NA > Rejestrowanie faktur sprzedaży --> [NA_DFA10]. Patrz szczegóły: IdProces. Identyfikatory funkcji programu Patrz też: Funkcje w menu (drzewo) 1.2 Pojęcia data wydania Kolejne wydania programu Trawers oznaczone są datą. Np. Data wydania 20xx.10.27 Aktualizacja programu Identyfikacja programu Trawers logowanie (en: Log-in, de: Log-in) Od: log in - wejście do systemu. Podanie identyfikatora użytkownika i hasła w celu uzyskania dostępu do programu. Można użyć zmienne środowiskowe, aby zautomatyzować logowanie. Zmienne środowiskowe logowania blokowanie (en: Lock Out the System, Disable logins) Zabronienie logowania do programu innym operatorom. Aby zapewnić administratorowi wyłączny dostęp do bazy danych, np. podczas aktualizacji zbiorów danych sesja (en: Session) Uruchomnienie (wywołanie, logowanie) programu Trawers. Liczba sesji jest kontrolowana. Nie można uruchomić programu wiecej razy niż liczba sesji (limit sesji) określona w kluczu licencyjnym. Komunikat: ---------------------------------------------------- Nie można uaktywnić kolejnej sesji Liczba aktywnych sesji: ... i na tyle sesji jest licencja (proszę dokupić sesje) ---------------------------------------------------- Patrz opis warunków liencji i reguły ustalania liczby sesji: Warunki licencji sesje zdalnego dostępu (en: Remote Access Sessions) Sesje zdalnego dostępu, np. partnerów firmy użytkownika w module RA Limit sesji w module RA może być inny niż limit sesji pozostałych modułów Sesje modułu RA zajmują jedną sesję z ogólnej puli sesji, tzn. uruchomienie dowolnej liczby sesji RA wymaga jednej wolnej sesji w puli (sesji AD) Na zestawieniu: Aktywne sesje, sesje zdalne oznaczone są w kolumnie [Z] RA Zdalny dostęp kontrahentów sesje aktywne (en: Active Sessions) Lista zalogowanych użytkowników. Zawiera symbol użytkownika, datę i czas zalogowania, identyfikację stacji roboczej (terminala) oraz identyfikator wykonywanej funkcji (IdProces). Program tworzy zestawienie aktywnych sesji. Patrz: Aktywne sesje > Ekran informacyjny [AD_PAS20]. Kronika zalogowań i wylogowań poszczególnych operatorów znajduje się w logu. Kronika operacji (log) sesje nieaktywne (en: Non-Active Sessions) Sesje, w których, przez określony czas, nie było aktywności operatora. Tzn. operator nie naciskał klawiszy i nie poruszał myszką. 1. Program może automatycznie zamknąć sesje nieaktywne, tj. wylogować operatora po określonym czasie nieaktywności (en: Time Out) Patrz parametr w systemie AD (dotyczy wszystkich operatorów): Zamknij nieaktywną sesję po .. minutach (0 - nie kończ) Parametry systemu AD 2. Program może automatycznie zablokować sesje nieaktywne, tj. wstrzymać możliwość wykonywana operacji. Komunikat: [Blokada dostępu]. Aby wznowić, trzeba podać hasło. Patrz parametr pracy operatora (dotyczy konkretnego operatora) Blokuj nieaktywną sesję po ... minutach (0 - nie blokuj) Parametry pracy operatorów sesji limit Liczba sesji określona jest w kluczu licencyjnym i jest kontrolowana. Nie można uruchomić programu wiecej razy niż podano w licencji. Także funkcje AutoRun i funkcje SOA (wykonywane w AutoRun i via Server SOA), pobierają sesje z puli podanej w licencji. Wybrane funkcje, zgromadzone w systemie RA Zdalny dostęp kontrahentów można uruchamiać więcej razy niż podano w licencji konfiguracji podstawowej Zdalny dostęp kontrahentów sesji limit jednego operatora Parametr pracy operatora pozwala ograniczyć liczbę jego jednocześnie aktywnych sesji: Max ilość aktywnych sesji: nn (MaxSess) AD > Operatorzy i role > Parametry pracy operatora: xx [AD_PPO30] Podaje się max liczbę sesji, które może wywołać ten operator. Jeżeli ilość = 0, to operator może logować się tym samym loginem wiele razy, aż do wyczerpania limitu sesji wyznaczonego w kluczu licencyjnym. Domyślna ilość sesji jednego operatora = 1. Parametry pracy operatorów sesji limit procesu AutoRun Można ustalić ilość sesji przeznaczona (zarezerwowana) dla procesów AutoRun, np. 2 sesje Można ograniczyć ilość sesji, które może pobrać AutoRun z puli podanej w licencji. Np. 1 : 0 Jedna sesja zarezerwowana dla AutoRun 1 : 3 Jedna sesja zarezerowana dla AutoRun, można uruchomić co najwyżej 3 procesy AutoRun Parametry systemu AD sesji zamykanie (en: ShutDown) Spowodowanie zakończenia pracy w programie. Sesję może zamknąć program lub inny użytkownik 2. Logowanie Logowanie (od log in), to wejście do programu (uruchomienie) programu. Po wywołaniu programu z powłoki systemu operacyjnego, program oczekuje podania identyfikatora operatora, np. AA oraz hasła. Bezpieczeństwo. Mechanizmy Do programu Trawers można logować sie automatycznie wykorzystując zmienne środowiskowe. Zmienne środowiskowe 3. Aktywne sesje (którzy użytkownicy są on-line) Pokazuje kto aktualnie jest zalogowany i jak długo trwa jego sesja. AD > Aktywne sesje Sterowanie [AD_PAS20] Ekran informacyjny Sesje używane --o o-- Sesji w puli (wg licencji) | | | | o-- Sesje używane przez RA Zdalny dostep | | | | | | o -- Sesje używane prze DC | | | | v v v v v-- Sesje dla AutoRun ------------------------------------------------------------------------------ AKTYWNE SESJE: (12/35) (RA:3) (DC:0) (AutoRun:0/0:0) 20xx.09.28 Godz 15:56:10 ----------------------------------------------------------------------------- Op Sy Fi ---- Logowanie ---- Praca - PID - ------ IP ----- IDPROCES *Z JD/00 AD TR 20xx.09.28 09:56:28 05:59 17604 192.168.1.116 AD_PAS20 * PZ/00 RZ TR 20xx.09.28 11:03:41 04:52 18632 192.168.1.122 RZ_DZA10 JW/00 MG HA 20xx.05.20 07:21:00 02:17 29023 192.168.0.149 AD_PZS20 RD/00 MG HA 20xx.05.20 07:49:51 01:48 31464 192.168.0.216 MG_ZSP10 CK/00 NA HA 20xx.05.20 07:51:51 01:46 31964 192.168.0.118 NA_PSZ10 AP/00 ZA HA 20xx.05.20 08:06:18 01:32 1026 192.168.0.183 ZA_DZA20 AR/00 NZ HA 20xx.05.20 08:52:46 00:45 5409 192.168.0.108 LK/02 NA HA 20xx.05.20 08:53:12 00:45 5453 192.168.0.115 NZ_ZSA20 ------------------------------------------------------------------------------ --o-- o o ---------o--------- --o-- --o--- -----o------ ----o--- oo | | | | | | Nr IP IdProces || | | | Data i godzina | PID || | | Firma zalogowania Czas Sesja bieżąca [*]-->-o| | System trwania (operatora wyświetlającego) | Operator sesji | oddział Sesja zdalna [Z]--->-o Sesja AutoRun[A]--->-o Aktywne funkcje ------------------------------------------------------------------------- Y/F9-zamknij sesje F10-wyślij wiadomość --o--------------------o------------------------------------------------- | | | v | Wysyła wiadomość do jednego | lub wielu aktywnych operatorów | Powiadomienia, wiadomości | v Zamyka sesje innego operatora Home-odśwież Pokazuje aktualne (bieżące) dane 4. Zamykanie sesji innych operatorów (en: Kill user) 4.1 Zamykanie sesji aktywnej Zamykanie sesji innego operatora Podczas przeglądania aktywnych sesji, można zamknąć sesje innego operatora klawiszem: F9-zamknij sesję Sesje należy zamknąć, aby wykonać funkcje wymagające wyłącznego dostępu do danych, np. aktualizację, weryfikację. Wyłączny dostęp do bazy danych Można także zamknąć sesje operatora, który nie pracuje, bo np. zapomniał wylogować się. Automatyczne zamykanie sesji NOTE: W parametrach AD można ustalić czas bezczynności. Sesja bieżącego operatora zostanie automatycznie zakończona, jeżeli przez podaną liczbę minut, ten operator nie naciskał klawiszy Parametry systemu AD Zamknięcie sesji pozwala udostępnić sesje z limitowanej puli sesji innym operatorowm czekającym na zalogowanie. Powiadomienie operatora Przed zamknięciem, można wysłać (F10) wiadomość operatorowi, że jego sesja będzie zamknięta. Dodatkowo, już po uruchomieniu funkcji zamykania, operator 'zamykany' otrzyma komunikat (przez 30 sekund): o-- Sesja AB ---------------------------o | | | Sesja zostanie zakończona za 24 s | | | |---------------------------------------| | F10-przerwij | o---------------------------------------o Sesje ma prawo zamykać administrator, który ma oznaczony parametr 1107 [1] Param operat 05xx 06xx ... W parametrach pracy operatora można podać maksymalną liczbę jednocześnie aktywnych sesji operatora. Param pracy operatorów 4.2 Zamykanie sesji zerwanych Klawisz: F9-zamknij sesję, zamyka tylko sesje aktywne, tzn. gdy terminal nadal połączony jest z serwerem. Nie zamyka sesji tzw. zerwanych (en: Session is terminated, disconnected). NOTE: Dot systemu Linux: Sesje zerwane można zamknąć klawiszem: Y-zamknij sesję a) Sesja zerwana należy do aktywnego operatora Program wykona polecenie: kill b) Sesja zerwana należy do innego operatora Program wykona polecenie: sudo kill (należy odpowiednio ustawić uprawnienia użycia sudo w Linux) Przed wykonaniem: kill i sudo kill program nie wysyła żadnych informacji do zamykanego operatora Polecenie: kill używać gdy nie można zamknąć sesji klawiszem: F9 Sesje ma prawo zamykać administrator, który ma oznaczony parametr 1107 [1] P. Automatyczne zamykanie sesji Jak zapewnić, żeby program Trawers automatycznie zamknął te sesje, które zostały zerwane, np. przez wyłączenie prądu w oddziale lub przerwanie łącza transmisyjnego ? O. Sam program Trawers nie potrafi automatycznie zamknąć zerwanych sesji. Należy zbudować mechanizm w systemie operacyjnym Linux. Warianty: a. Odpowiednio ustalić parametry SSH (TCPKeepAlive, ClientAlive itp.), które zapewnią automatyczne odłączenie terminala i zamknięcie sesji. Zamknięcie sesji przez Linux jest sygnałem dla Trawersa, aby usunąć sesję z wewnętrznego rejestru wykorzystanych sesji, oddać do puli wolnych sesji i pozwolić zalogować się kolejnemu użytkownikowi. b. Zamknąć sesje ręcznie Użyć polecenia: kill lub bardziej masowo: użyć skryptu tr-killuser.sh (poniżej treść skryptu) c. Zamkniecie wszystkich sesji killall <nazwa programu> np. killall tr5x.exe P. Jak wymusić logowanie ? Jak zalogować się do programu, gdy sesja administratora została zerwana a inni operatorzy są zablokowani ? Sytuacja: Administrator zabronił logowania innym operatorom gdyż rozpoczął prace serwisowe. Sesja administratora została zerwana. Nikt nie może zalogować się do programu. O. Zamknąć zerwaną sesje, np. poleceniem kill Zabezpieczenie przed zerwaniem sesji P. Jak unikać zerwania sesji ?$?B$ O. Na pewne sytuacje nie mamy wpływu, np. utrata łącza terminala. Mamy jednak wpływ na sposób zamykania programu. Np. w programie wywołanym funkcją AD_PIN10 (wykonanie programu dodatkowego) nie zamykać okna Putty krzyżykiem [x] Zawsze naturalnie zamykać aplikacje, np. powłokę bash poleceniem: exit Program: screen i X2Go W firmie Tres skutecznym mechanizmem okazał się program: screen. Trawers5 TUI uruchamiany jest zawsze w screen. To powoduje, że po zerwaniu sesji program nadal pozostaje aktywny (PZ 2022/02) Po ponownym zalogowaniu przywracana jest sesja użytkownika. Jeżeli użytkownik nie zaloguje się ponownie w czasie bezczynności ustalonym w parametrach AD, to Trawers sam sie zamyka. Parametry systemu AD Zerwaną sesję można też zamknąć zdalnie przez F9. Od momentu wdrożenia screen w firmie Tres nie ma problemu wiszących sesji. W Trawers6 GUI problem rozwiązuje program:X2Go, który zachowuje się tak jak screen. Po zerwaniu połączenia albo zamknięciu krzyżykiem i ponownym zalogowaniu na serwer, przywracana jest poprzednia sesja programu. 5. Blokowanie logowania Funkcja pozwala zabronić logowania do programu innym operatorom. Aby zapewnić administratorowi wyłączny dostęp do bazy danych, np. podczas aktualizacji zbiorów danych Funkcje: * Blokowanie logowania [AD_TBL10] (en: Lock out, Disable logins) Zablokować można na czas wykonywania funkcji wymagających wyłącznego dostępu do zbiorów, np. na czas aktualizacji zbiorów Wyłączny dostęp do bazy danych Gdy logowanie jest zablokowane, to menu programu jest wyświetlone innymi kolorami (inverse). To jest sygnał dla operatora, aby po zakończeniu prac zwolnić blokadę * Zwolnienie blokady [AD_TBL20] (en: Enable logins) Po zakończeniu prac, np. aktualizacji, trzeba zwolnić blokadę Gdy logowanie jest zablokowane, to operatorzy otrzymują komunikat: o--------------------------------------------------------[X]o | Firma TR: Program niedostępny od 20xx.06.30 godz 18:38 | | Dostęp zablokował: JD Jan Dworaczek Oddział: [00] | | Trwają prace serwisowe - kontakt tel. 87 21 321 324 | o-----------------------------------------------------------o 6. Sesje tego samego wydania programu Użytkowany musi być zawsze program najnowszy, tzn. z najwyższą datą wydania. Kolejne wydania mogą bowiem wprowadzić, np. zmiany w strukturze bazy danych Nie można jednocześnie (z różnych stanowisk) wywoływać sesji różnych wydań programu, tj. wydań z różnymi datami wydania (różne daty .exe). Administrator jest zobowiązany do usunięcia programów .exe poprzednich wydań Aktualizacja programu Polityka aktualizacji 7. Skrypt: tr-killuser -------------------------------------------------------------------------- #!/bin/sh #========================================================================= # # *** tr-killuser *** # # (C) 2011 Dobroslaw Wolanowski # serwis@tres.pl # # Zastosowanie: # Skrypt likwiduje wszystkie procesy wskazanego uzytkownika #========================================================================= echo echo -e "\n*** Usuwanie wszystkich procesow wskazanego uzytkownika *** \n" # Kontrola id uzytkownika wykonujacego skrypt User=`expr "\`id\`" : "uid=\([[:digit:]]*\).*"` if [ "$User" != "0" ]; then echo -e "Operacja musi byc przeprowadzana przez uzytkownika root \n" exit fi # Okreslenie uzytkownika, ktorego procesy maja byc usuniete echo echo -n "Prosze podac nazwe uzytkownika: " read uid echo echo -e "\nUsuwanie procesow uzytkownika: $uid" echo # Listowanie procesow uzytkownika i usuwanie wg id procesu (PID) ps -u $uid | grep -v PID | while read pid reset; do kill -9 $pid; done echo echo -e "\nWszystkie procesy uzytkownika: $uid zostaly usuniete" echo # koniec -------------------------------------------------------------------------- 8. Logowanie do serwera bez hasła P: Jak logować się do serwera bez podawania hasła, gdy na stacji roboczej oraz na serwerze jest system Linux? O: Wykorzystać autoryzację za pomocą pary kluczy 1) Na stacji roboczej i serwerze założyć użytkownika: trawers 2) Na stacji roboczej zalogować się jako: trawers i wygenerować klucze poleceniem: ssh-keygen -t rsa Program zapyta o: - nazwę pliku, w którym zapisać klucze: pozostawić domyślną - passphrase: pozostawić puste. Wygenerowane klucze są w katalogu /home/trawers/.ssh /home/trawers/.ssh/id_rsa - klucz prywatny /home/trawers/.ssh/id_rsa.pub - klucz publiczny 3) Klucz publiczny umieścić na serwerze w katalogu /home/trawers/.ssh i zmienić jego nazwę z id_rsa.pub na authorized_keys Teraz już można logować się do serwera z tej stacji roboczej bez podawania hasła: ssh trawers@serwer 9. Tematy powiązane Platformy systemowe Kronika operacji (log) ChangeLog. Kronika zmian w danych Warunki licencji Polityka aktualizacji AutoRun Procesy automatyczne F12 Menu wewnętrzne Funkcje w menu (drzewo) Param pracy operatorów Param operat 05xx 06xx ... Słowa kluczowe #Admin-Bezpieczeństwo #Admin-Uprawnienia #Raporty-KronikaLog #Raporty-ErrorLog


www.tres.pl - Baza wiedzy Trawers ERP - Spis treści

Polityka prywatności Ustawienia Cookies