Jak Studio WMS.net nadaje dostęp do modułów i transakcji: wzorzec uprawnień dla modułu oraz wyjątki ustawiane w kolumnie DOSTĘP dla każdego użytkownika.
Program StudioSystem, na którym działa Studio WMS.net, ma mechanizm kontroli dostępu oparty na uprawnieniach per użytkownik. Administrator przydziela konkretne role i poziomy dostępu każdemu pracownikowi, a zakres dostępu dopasowuje do struktury organizacyjnej firmy.
Ta strona opisuje mechanikę nadawania dostępu: skąd bierze się wzorzec uprawnień i gdzie ustawia się wyjątek dla jednej osoby. Osobna sekcja pokazuje, co dzieje się z uprawnieniami, gdy pracownik zmienia stanowisko albo odchodzi. Zasady dostępu w magazynie, także fizycznego do towaru, omawia strona o polityce dostępu w magazynie, a ochronę danych jako całość strona o bezpieczeństwie danych. Ryzyka na hali, takie jak przeciążony regał, opisuje strona o bezpieczeństwie w magazynie.
Jak system nadaje dostęp: od wzorca modułu do wyjątku?
Dostęp składa się z czterech warstw. Dwie pierwsze ustawia się raz dla modułu, dwie kolejne dla konkretnej osoby. Schemat pokazuje, w którym miejscu programu leży każda z nich, a pod schematem opisujemy je po kolei.
Jak działa system standardowych uprawnień dla modułów i użytkowników?
W systemach informatycznych zarządzanie uprawnieniami upraszczają predefiniowane szablony. Administrator nadaje uprawnienia dla poszczególnych modułów systemu według wcześniej zdefiniowanych wzorców, a program kopiuje te standardowe parametry dostępu, gdy powstaje konto nowego użytkownika.
Cała konfiguracja wzorców odbywa się w specjalnym skorowidzu systemu. Administrator znajdzie ją w sekcji SYSTEMOWE modułu administratora pod oznaczeniem PRX = USERS, a na zrzucie poniżej to pozycja USERS - Uprawnienia użytkowników. Dzięki temu nadawanie standardowych uprawnień jest szybkie i spójne dla wszystkich użytkowników systemu. Czym jest sam skorowidz, wyjaśnia strona o skorowidzach w programie StudioSystem.
Po wybraniu tej pozycji wyświetlane jest okno pozwalające na konfigurację domyślnych uprawnień dla użytkowników.
Skorowidz wyświetla dane pogrupowane wg kolumny PROGRAM, aby łatwiej było ustawiać domyślne parametry dla poszczególnych modułów (programów).
Na zrzucie z instalacji demonstracyjnej wzorzec ma trzynaście pozycji w trzech grupach programów. Każdy wiersz to jedna transakcja z opisem, na przykład dpmag_grid dla dokumentów magazynowych albo knkon_grid dla kartotek kontrahentów. Najwięcej pozycji ma grupa WMS, bo osobne transakcje obsługują tam dokumenty PZ, WZ, PW i RW.
Kolumny Aktywne i Domyślne mają pola wyboru, ale strony produktu nie opisują różnicy między nimi. Ustawienie wzorca warto więc uzgodnić z wdrożeniowcem, zanim posłuży do zakładania kont.
Jak nadać albo odebrać uprawnienie jednemu użytkownikowi?
Indywidualne uprawnienia użytkownika
Z poziomu rejestru użytkowników dostępna jest funkcja pozwalająca dla wskazanego użytkownika programu przypisać uprawnienie do uruchamiania określonej transakcji. Domyślnie każda transakcja udostępniona w menu jest dla użytkownika danej roli (modułu) dostępna.
Po wybraniu użytkownika w tabeli należy z menu UPRAWNIENIA wybrać moduł, dla którego chcemy zmienić prawa dostępu - zwykle wyłączyć dostęp do określonej transakcji.
Lista modułów jest ustawiana programowo na podstawie zdefiniowanych w systemie ról - zapis w tabeli _role. Na zrzucie widać, że w instalacji demonstracyjnej lista obejmuje dziewięć modułów, a magazyn wysokiego składowania ma w niej oznaczenie WMS.
Wskazanie pozycji menu UPRAWNIENIA spowoduje wyświetlenie okna z listą parametrów domyślnych plus ewentualnie parametrami indywidualnie dodanymi dla tego użytkownika.
StudioSystem umożliwia też tworzenie odrębnych schematów uprawnień dla różnych działów w organizacji. Dzięki temu użytkownik dostaje takie uprawnienia, jakich potrzebuje do codziennych obowiązków, a szerszy obraz ochrony danych pokazuje strona o bezpieczeństwie danych.
Zmiana uprawnień
W celu wprowadzenia zmiany uprawnień użytkownika dostępu do określonej transakcji należy zmienić dla danej pozycji zawartość kolumny DOSTĘP, oznaczenie na TAK w kolorze zielonym skutkuje prawem użytkownika do uruchomienia danej transakcji, oznaczenie na NIE spowoduje wyświetlenie pozycji w kolorze czerwonym i brak dostępu (możliwość uruchomienia) danej transakcji.
Przykładowo na liście parametrów zmieniamy ustawienie dla transakcji dpmag_grid wówczas zmienia się kolor na czerwony co oznacza brak dostępu dla wybranego użytkownika.
Na zrzucie wszystkie trzy pozycje mają jeszcze dostęp, bo kolumna Dostęp jest zielona z zaznaczonym polem. Jedna z nich to dpmag_grid z grupy DOKUMENTY, a dwie pozostałe to kartoteki magazynowe i kartoteki kontrahentów. Zmiana dotyczy wyłącznie wybranego użytkownika, bo okno pokazuje parametry domyślne razem z tymi dodanymi dla jego konta.
Aby przywrócić dostęp do tej transakcji należy zmienić wartość w kolumnie DOSTĘP.
Dodawanie niestandardowych uprawnień
W trakcie wdrażania indywidualnych rozwiązań można wprowadzać niestandardowe własne kody uprawnień do uruchamiania specyficznych funkcji lub transakcji. W tym celu tabela uprawnień dla użytkownika posiada wiersz dopisywania innych parametrów. Własny sposób rejestrowania informacji opisuje transakcja x_cecha.
Taki własny kod dopisuje się w skorowidzu uprawnień specjalnych (typ USERS), a przykład z rolą MEXP i transakcją x_zalacznik opisuje strona o uprawnieniach specjalnych. Czy dana transakcja uwzględni dopisany parametr, zależy od programisty: może go uwzględnić, ale nie musi.
Per użytkownik, rola czy grupa - co potwierdza dokumentacja?
W tym samym systemie słowo rola pada w dwóch znaczeniach. Rola przy koncie to wartość wybierana z listy rozwijanej w formularzu użytkownika, a rola jako moduł to pozycja z tabeli _role, dla której ustawia się transakcje. Strony produktu piszą o roli (modułu), więc pytanie o rolę pracownika warto doprecyzować: chodzi o jego konto czy o moduł.
W modelu opartym na rolach, czyli RBAC, uprawnienie przypisuje się do roli, a nie do każdej osoby z osobna. Wzorzec dla modułu działa podobnie, bo ustawia się go raz i kopiuje nowym kontom, a menu UPRAWNIENIA pozwala odstąpić od niego dla jednej osoby. Strona o uprawnieniach użytkowników magazynu wspomina też o grupach użytkowników o podobnych uprawnieniach, ale nie opisuje, jak je założyć, więc ten element trzeba potwierdzić na wdrożeniu.
| Cecha | Wzorzec dla modułu | Wyjątek per użytkownik |
|---|---|---|
| Gdzie się ustawia | Skorowidz PRX = USERS w sekcji SYSTEMOWE modułu administratora | Menu UPRAWNIENIA w rejestrze użytkowników |
| Kogo dotyczy | Nowe konta, którym program kopiuje wzorzec | Jedno wskazane konto |
| Co zmienia | Domyślne uprawnienia do transakcji w module | Wartość w kolumnie DOSTĘP przy wybranej transakcji: TAK albo NIE |
| Na co uważać | Opis mówi o kopiowaniu przy zakładaniu konta, więc czy zmiana wzorca obejmuje konta założone wcześniej, trzeba sprawdzić | Wyjątek zostaje przy koncie, więc wymaga okresowego przeglądu |
Wzorzec wystarcza, gdy wiele osób robi to samo. Wyjątek jest potrzebny, gdy jedna osoba odbiega od reszty: zastępuje kolegę z innego stanowiska albo dostała zadanie ponad zwykły zakres.
Jak może wyglądać macierz uprawnień dla stanowisk w magazynie?
Macierz poniżej jest ilustracją, a nie ustawieniem domyślnym programu. Kolumny to transakcje widoczne na zrzutach wzorca, a stanowiska i wartości TAK albo NIE dobraliśmy jako przykład. W prawdziwym wdrożeniu macierz ustala się z kierownikiem magazynu podczas analizy przedwdrożeniowej.
| Stanowisko | Dokumenty PZ | Dokumenty WZ | Dokumenty PW i RW | Kartoteki magazynowe | Kartoteki kontrahentów | Raporty (RAP) |
|---|---|---|---|---|---|---|
| Magazynier przyjęć | TAK | NIE | NIE | TAK | NIE | NIE |
| Magazynier wydań | NIE | TAK | NIE | TAK | NIE | NIE |
| Kierownik magazynu | TAK | TAK | TAK | TAK | TAK | TAK |
| Handlowiec w biurze | NIE | NIE | NIE | TAK | TAK | TAK |
Poziom szczegółowości to transakcja. Kolumna DOSTĘP otwiera albo zamyka całą pozycję menu, więc macierz mówi, kto może uruchomić listę dokumentów PZ, a nie kto zatwierdza konkretny dokument. Rozróżnienie osoby zatwierdzającej od wykonującej trzeba więc ustalić osobno: uprawnieniem specjalnym, które transakcja uwzględnia, albo procedurą magazynu.
Dobrze to widać na przyjęciu. Przyjęcia zewnętrzne i wewnętrzne obejmują rozładunek, identyfikację, sortowanie, kontrolę jakościową i przygotowanie towaru do składowania. Przy przyjęciu pracuje zwykle kilka osób, więc dostęp do transakcji PZ dostają wszystkie, a to, kto wykonuje którą czynność, rozstrzyga w pierwszej kolejności procedura.
Jak zastosować zasadę najmniejszych uprawnień w tym systemie?
Zasada najmniejszych uprawnień mówi, że osoba dostaje tylko taki dostęp, jakiego potrzebuje do pracy. W Studio WMS.net domyślny kierunek jest odwrotny: transakcje z menu modułu są dostępne, więc ograniczenie wymaga świadomego wyłączania. Cztery nawyki ułatwiają tę pracę:
- Zaczynaj od wzorca modułu. Zawężony wzorzec działa na każde nowe konto, więc wyłączeń nie trzeba powtarzać przy każdej osobie.
- Wyjątek zapisuj z powodem. Kartoteka użytkownika ma zakładkę UWAGI, a pola KTO i DATA UTWORZENIA wypełnia system po zapisaniu, więc notatka pokazuje, kto i kiedy uzasadnił odstępstwo.
- Oddziel konto administratora od konta codziennej pracy. Strona o użytkownikach programu wskazuje, że administrator nie powinien pracować na koncie administratora przy zwykłych operacjach.
- Przeglądaj konta w stałych odstępach, na przykład co kwartał (to przykład ilustracyjny). Przegląd wyłapuje wyjątki, które przestały być potrzebne.
Które pary czynności nie powinny trafić do jednego konta, wyjaśnia strona o magazynach i uprawnieniach. Tutaj widać, w którym miejscu programu takie rozdzielenie się ustawia.
Jak uprawnienia zmieniają się razem z kontem pracownika?
Konto ma cykl życia, a uprawnienia muszą nadążać za każdym jego etapem. Sam sposób zakładania kont opisuje strona o użytkownikach programu. Tabela pokazuje wyłącznie to, co dzieje się z uprawnieniami.
| Zdarzenie | Co robi administrator | Gdzie w programie | Na co uważać |
|---|---|---|---|
| Nowy pracownik | Zakłada konto, wybiera rolę i prawa w formularzu, a program kopiuje wzorzec modułu | Rejestr UŻYTKOWNICY, funkcja DOPISZ | Konto dziedziczy wzorzec, więc najpierw dopilnuj wzorca |
| Zmiana stanowiska | Zmienia rolę i wyłącza transakcje zbędne na nowym stanowisku | Edycja konta, menu UPRAWNIENIA | Nie zakładaj, że zmiana roli wyczyści dawne wyjątki, i przejrzyj kolumnę DOSTĘP |
| Zastępstwo czasowe | Dodaje wyjątek na czas zastępstwa, a potem go cofa | Menu UPRAWNIENIA, notatka w zakładce UWAGI | Cofnięcie łatwo zapomnieć, więc zapisz datę w notatce |
| Odejście z firmy | Odbiera dostęp w dniu odejścia | Konto domenowe: zamknięcie konta w domenie. Konto z formularza: blokada w programie | Procedurę odejścia ustal na wdrożeniu, bo strony produktu nie opisują osobnej funkcji dezaktywacji |
Najczęściej pomija się ostatni etap, bo nikt z zainteresowanych o niego nie zabiega. Przy koncie domenowym (uwierzytelnianie Windows z IIS) zamknięcie konta w domenie zamyka też dostęp do magazynu, a różnice między metodami logowania zestawia strona o logowaniu do systemu WMS.
Co zostaje w zapisie, gdy ktoś zmienia uprawnienia?
Pytanie o ślad dzieli się na dwa: co system zapisuje o pracy użytkownika i co zapisuje o zmianach samych uprawnień. Na pierwsze dokumentacja odpowiada, na drugie nie.
| Pytanie | Co potwierdzają strony produktu | Co ustalić we wdrożeniu |
|---|---|---|
| Kto wykonał operację na dokumencie i kiedy | System rejestruje operację z czasem i osobą, a administrator przegląda historię działań użytkownika | Jak długo zapis jest przechowywany |
| Kto dopisał notatkę do kartoteki użytkownika | Pola KTO i DATA UTWORZENIA wypełnia system po zapisaniu zmian | Czy notatki w zakładce UWAGI mają być obowiązkową procedurą |
| Kto zmienił DOSTĘP w menu UPRAWNIENIA | Strony produktu nie opisują osobnego zapisu takiej zmiany | Czy dziennik zdarzeń z panelu administracji obejmuje zmiany uprawnień |
| Kto się logował | Zdarzenie logowania trafia do dziennika, a przebieg opisuje strona o logowaniu | Zakres i okres przechowywania dziennika |
W panelu administracji, w grupie Pomoc, jest pozycja Dziennik zdarzeń (widać ją na zrzutach wyżej). Czy rejestruje ona zmiany uprawnień, trzeba sprawdzić na konkretnej instalacji. Do czasu potwierdzenia ślad zmian zapewnia procedura: polecenie na piśmie i wpis w zakładce UWAGI.
Gdzie w bazie danych leżą ustawienia uprawnień?
Opis techniczny
Skorowidz domyślnych ustawień użytkownika zapisywany jest w tabeli x_skorowidze oznaczone PRX=USERS
Ustawienia użytkownika zapisywane są w tabeli _user_cfg. Dane dostępowe do bazy StudioSystem ustawia się w konfiguracji x_grid.
Obie tabele leżą w bazie MS SQL Server, z której korzysta cały system WMS, więc kopia zapasowa bazy obejmuje też wzorce i ustawienia kont. Zmiany uprawnień wprowadza się w oknach programu opisanych wyżej, a nazwy tabel przydają się przy diagnozie i w rozmowie z wdrożeniowcem.
Jak działa program magazynowy jako całość, pokazuje osobna strona.
Którą stronę o uprawnieniach i dostępie otworzyć dalej?
Ta strona odpowiada na pytanie, jak dostęp jest nadawany w programie. Sąsiednie strony odpowiadają na inne pytania, więc tabela wskazuje, którą otworzyć.
| Strona | Na jakie pytanie odpowiada |
|---|---|
| Użytkownicy programu | Jak założyć konto, jakie pola ma formularz i jakie role pełnią osoby w magazynie |
| Uprawnienia specjalne | Jak dopisać własny kod uprawnienia, na przykładzie roli MEXP |
| Uprawnienia użytkowników magazynu | Jak profile i grupy wiążą się z rolami w magazynie |
| Magazyny i uprawnienia | Które czynności rozdzielić między konta |
| Polityka dostępu w magazynie | Jakie zasady obowiązują przy dostępie do funkcji programu i do towaru fizycznie |
| Logowanie do systemu WMS | Jak system uwierzytelnia użytkownika, zanim nada mu uprawnienia |
| Bezpieczeństwo danych | Jak uprawnienia wpisują się w warstwy ochrony: konto, baza, kopia i serwer |
| Rola administratora magazynu | Czym zajmuje się osoba, która konta zakłada i zmienia |