Logowanie do Studio WMS.net przebiega w dwóch etapach. Najpierw Windows weryfikuje nazwę i hasło, a potem aplikacja sprawdza, czy konto znajduje się na liście użytkowników w jej bazie i jakie ma uprawnienia. Oba etapy wymagają poprawnie skonfigurowanego serwera IIS i bazy Microsoft SQL Server.

Uwierzytelnianie Windows i autoryzacja w aplikacji

System uwierzytelniania jest złożonym procesem, dlatego aplikacja korzysta z mechanizmów dostępnych w środowisku Visual Studio i ASP.NET. Z kilku metod w programie wybiera się standardowe uwierzytelnianie Windows w IIS. Aplikacja jest skonfigurowana do pracy w sieci lokalnej oraz z dostępem przez Internet.

Uwierzytelnianie Windows oznacza, że trzeba założyć użytkowników systemu Windows i nadać im prawa do aplikacji w IIS albo do bazy SQL, a czasem do obu. Po uruchomieniu aplikacji serwer Windows prosi o nazwę użytkownika i hasło. Dopiero po poprawnej weryfikacji następuje logowanie do aplikacji, czyli sprawdzenie listy użytkowników w jej bazie.

EtapKto weryfikujeCo sprawdzaGdzie leży wynik
UwierzytelnienieWindows i serwer IISnazwę użytkownika i hasło kontasystem operacyjny lub domena
Autoryzacja w aplikacjiaplikacja WMSczy konto jest na liście użytkowników i jakie ma uprawnieniabaza danych aplikacji
Dostęp do bazySQL Serverparametry połączenia zapisane w Web.configplik w głównym folderze aplikacji
Ekran logowania Studio WMS.net - formularz z polem użytkownika i hasła na tle magazynu wysokiego składowania
Panel logowania Studio WMS.net z formularzem uwierzytelniania na tle zdjęcia magazynu wysokiego składowania

Podział na dwa etapy ma praktyczną konsekwencję. Konto Windows może istnieć i przejść uwierzytelnienie, a mimo to nie wejść do programu, bo nie ma go na liście użytkowników aplikacji. Odwrotny przypadek jest niemożliwy, ponieważ pierwszy etap zatrzymuje użytkownika bez konta. Szersze omówienie zasad bezpieczeństwa dostępu zawiera strona o logowaniu i autoryzacji w systemie WMS.

Dostęp anonimowy w domyślnej witrynie IIS

Domyślnie założona witryna w serwerze IIS może mieć włączony dostęp anonimowy. Skutek jest natychmiastowy: serwer nie pyta użytkownika o nazwę i hasło. Program uruchomiony w tym trybie pozwala korzystać z niego użytkownikowi nieokreślonemu, więc pierwszy etap logowania w ogóle nie działa.

Ostrzeżenie techniczne: po utworzeniu witryny dla Studio WMS.net należy wyłączyć dostęp anonimowy i włączyć uwierzytelnianie Windows. Sprawdzenie wymaga otwarcia witryny w przeglądarce z konta, które nie ma uprawnień. Jeśli strona otwiera się bez pytania o dane, dostęp anonimowy nadal jest włączony.

Sposób działania w sieci lokalnej i przez Internet opisuje strona o pracy w sieci lokalnej lub przez Internet. Przy dostępie z Internetu połączenie powinno być szyfrowane protokołem HTTPS, bo dane logowania przechodzą wtedy przez sieć publiczną.

Tworzenie witryny WWW w IIS

Do poprawnej pracy potrzebny jest serwer z systemem operacyjnym, serwerem stron WWW (IIS) i silnikiem bazy MS SQL. Instalacja aplikacji polega na utworzeniu witryny WWW i umieszczeniu aplikacji w wybranym, predefiniowanym katalogu. Programy SoftwareStudio Group Sp. z o.o. korzystają z technologii Microsoft, więc obowiązują zalecenia producenta dla zestawu IIS i SQL Server.

Witrynę tworzy się z konta administratora serwera. W Menedżerze usług internetowych wybiera się polecenie utworzenia nowej witryny sieci Web i przechodzi przez kreatora. Parametry, o które pyta kreator, zestawia tabela.

Parametr kreatoraCo ustawićUwaga
Opis witrynynazwa identyfikująca witrynęużywana tylko wewnętrznie w Menedżerze usług internetowych
Adres IPkonkretny adres albo Wszystkie (nieprzypisane)druga opcja udostępnia witrynę na wszystkich interfejsach i adresach IP
Port TCPnumer portu publikacjidomyślnie port standardowy, inny wymaga podania w adresie
Nagłówek hostanazwa, pod którą użytkownicy wchodzą na stronęmusi być rzeczywistą nazwą używaną do dostępu
Katalog macierzystyfolder z plikami aplikacjiwskazywany przyciskiem Przeglądaj
Uprawnienia dostępuprawa dostępu do witrynywybierane przed zakończeniem kreatora

Zmiana konfiguracji istniejącej witryny

Po instalacji IIS domyślną konfigurację witryny zmienia się we właściwościach witryny, dostępnych po kliknięciu jej nazwy prawym przyciskiem myszy. Zmiany obejmują dwie karty i kończą się zatwierdzeniem przyciskiem OK.

Nazwy kart i okien pochodzą ze starszych wersji IIS. W nowszych wersjach Windows Server te same ustawienia leżą w Menedżerze IIS, w oknie powiązań witryny i w ustawieniach jej katalogu. Zasada pozostaje ta sama: administrator ustala adres witryny i folder aplikacji.

Instalacja SQL Server i połączenie z bazą

Aby korzystać z baz Microsoft SQL Server, trzeba zainstalować i skonfigurować serwer bazodanowy. Instalator, na przykład w wersji Express, pobiera się ze strony producenta i uruchamia zgodnie z instrukcją. Zwykle instalacja przebiega w trybie standardowym z ustawieniami domyślnymi. Po jej zakończeniu instaluje się narzędzie Management Studio, które służy do zarządzania bazą.

Wybór edycji ma wpływ na limity bazy. Ograniczenia wersji Express opisuje strona o SQL Express, a zestawienie edycji i składników zawiera dokumentacja edycji SQL Server. Utrzymanie bazy po instalacji omawia strona o zarządzaniu bazą danych SQL.

Parametry połączenia w pliku Web.config

Połączenie z bazą jest zapisane w pliku Web.config w głównym folderze aplikacji. Użytkownik loguje się i autoryzuje do bazy w sposób jednolity dla wszystkich modułów, więc zmiana serwera bazy wymaga edycji jednego miejsca. Przykład poniżej jest ilustracyjny, a nazwy serwera i bazy są umowne.

<connectionStrings>
  <add name="WMS"
       connectionString="Server=SERWER\SQLEXPRESS;Database=WMS;Integrated Security=SSPI;"
       providerName="System.Data.SqlClient" />
</connectionStrings>

Parametr Integrated Security=SSPI oznacza, że aplikacja łączy się z bazą kontem Windows, na którym działa jej proces w IIS. Alternatywą jest login SQL z hasłem zapisanym w pliku, co wymaga ochrony tego pliku. Konto procesu aplikacji musi mieć w bazie odpowiednie prawa, które nadaje administrator.

CREATE LOGIN [DOMENA\svc_wms] FROM WINDOWS;
USE WMS;
CREATE USER [DOMENA\svc_wms] FOR LOGIN [DOMENA\svc_wms];
ALTER ROLE db_datareader ADD MEMBER [DOMENA\svc_wms];
ALTER ROLE db_datawriter ADD MEMBER [DOMENA\svc_wms];

Zestaw instrukcji tworzy login z konta Windows, powiązanego użytkownika w bazie i dwie role: odczytu i zapisu danych. Rzeczywisty zakres uprawnień zależy od aplikacji, a zasada brzmi: najmniejsze prawa, które wystarczą do pracy.

Reguła: hasło do bazy nie powinno leżeć w Web.config jawnym tekstem. Sekcję z parametrami połączenia można zaszyfrować narzędziem platformy ASP.NET, a przy logowaniu kontem Windows hasła w pliku nie ma wcale.

Diagnostyka najczęstszych problemów z logowaniem

Większość kłopotów po instalacji wynika z jednego z czterech miejsc, w których łańcuch logowania się zrywa. Objaw wskazuje, na którym etapie szukać przyczyny, więc diagnozę zaczyna się od pytania, co dokładnie zobaczył użytkownik.

ObjawNajczęstsza przyczynaDziałanie
Strona otwiera się bez pytania o nazwę i hasłowłączony dostęp anonimowy w witryniewyłączyć dostęp anonimowy, włączyć uwierzytelnianie Windows
Okno hasła wraca po każdej próbiekonto bez prawa do aplikacji w IISnadać prawa do katalogu i witryny
Konto przechodzi serwer, ale program odmawia wejściabrak konta na liście użytkowników aplikacjidopisać użytkownika i przypisać rolę
Błąd połączenia z bazą po wejściu do programulogin lub parametry w Web.configsprawdzić nazwę serwera, bazy i prawa konta procesu

Każdy z tych przypadków da się odtworzyć na koncie testowym. Warto więc przed uruchomieniem produkcyjnym założyć konto z minimalnymi prawami i przejść całą ścieżkę logowania, zamiast sprawdzać ją z konta administratora, które omija większość ograniczeń.

Konta Windows a role w aplikacji

Konto Windows otwiera drzwi do aplikacji, ale o tym, co użytkownik zobaczy w menu, decyduje lista użytkowników w bazie aplikacji. Administrator zakłada więc konto w systemie, a następnie dopisuje je w programie i przypisuje rolę. Podział ról, od magazyniera po administratora, opisuje strona o rolach i użytkownikach w systemie WMS.

Taki układ ułatwia pracę w firmie, która ma już domenę. Wyłączenie konta pracownika w domenie odcina go od programu bez zmiany w aplikacji. Całość konfiguracji opisuje strona o konfiguracji programu magazynowego, a sam charakter aplikacji strona o aplikacji internetowej WMS.

Pytania i odpowiedzi o logowanie do WMS i konfigurację IIS

W dwóch etapach. Najpierw serwer Windows prosi o nazwę użytkownika i hasło, a po poprawnej weryfikacji aplikacja sprawdza, czy konto jest na liście użytkowników w jej bazie i jakie ma uprawnienia.

Domyślnie założona witryna w IIS może mieć włączony dostęp anonimowy. W tym trybie serwer nie weryfikuje tożsamości, więc program pozwala korzystać z niego użytkownikowi nieokreślonemu. Trzeba wyłączyć dostęp anonimowy i włączyć uwierzytelnianie Windows.

System operacyjny, serwer stron WWW (IIS) i silnik bazy Microsoft SQL Server. Instalacja polega na utworzeniu witryny WWW i umieszczeniu aplikacji w predefiniowanym katalogu.

W pliku Web.config w głównym folderze aplikacji. Logowanie do bazy jest więc jednolite dla wszystkich modułów aplikacji.

Instalator może być w wersji Express, pobierany ze strony producenta. Trzeba jednak uwzględnić limity tej edycji, które zależą od ilości danych i liczby operacji w magazynie.

Glosariusz pojęć związanych z logowaniem do WMS

Uwierzytelnianie Windows
Metoda potwierdzania tożsamości, w której serwer Windows weryfikuje nazwę użytkownika i hasło konta.
Autoryzacja
Określenie, do jakich funkcji i danych ma dostęp uwierzytelniony użytkownik, na podstawie listy użytkowników w bazie aplikacji.
IIS
Serwer stron WWW firmy Microsoft, na którym działa witryna z aplikacją ASP.NET.
Dostęp anonimowy
Ustawienie witryny IIS, które pozwala wejść bez podawania nazwy użytkownika i hasła.
Witryna WWW
Konfiguracja w IIS z adresem IP, portem TCP, nagłówkiem hosta i katalogiem macierzystym aplikacji.
Nagłówek hosta
Nazwa, pod którą użytkownicy odwołują się do witryny, rozróżniająca kilka witryn na jednym adresie IP.
Web.config
Plik konfiguracyjny aplikacji ASP.NET w jej głównym folderze, który zawiera między innymi parametry połączenia z bazą.
SQL Server Management Studio
Narzędzie do zarządzania bazami Microsoft SQL Server, instalowane po silniku bazy.

Warto przeczytać

Stan na poziomie lokalizacji w magazynie wysokiego składowania - stany magazynowe w czasie rzeczywistym
Stany magazynowe w magazynie wysokiego składowania do lokalizacji i partii: stan na dowolny dzień, progi alarmowe, raport SNAPSHOT oraz FIFO i FEFO w T-SQL.
Czytaj artykuł →
Zapytaj asystenta AI, gdzie leży paleta w magazynie wysokiego składowania
Asystent AI w Studio WMS.net odpowiada, gdzie leży towar w regałach wysokiego składowania. Jak pytanie zamienia się w tabelę, jak sprawdzić odpowiedź i demo.
Czytaj artykuł →
Błędy w układzie regałów wysokiego składowania - szerokość alejki i nośność gniazda
Najczęstsze błędy w układzie regałów wysokiego składowania: szerokość alejki, strefy, nośność gniazda, audyt techniczny i brak rezerwy. Tabela skutków.
Czytaj artykuł →
Efektywne zarządzanie miejscami składowania i adresacja w magazynie wysokiego składowania z WMS
Jak przypisać towar do miejsca składowania: czynniki wyboru, stałe i wolne miejsca, parametry gniazda oraz kontrola odkładania skanem w Studio WMS.net.
Czytaj artykuł →
Dla kogo są automatyczne magazyny wysokiego składowania?
Dla jakich firm opłaca się automatyczny magazyn wysokiego składowania: sygnały decyzyjne, branże i wymagania wobec WMS. Zapytanie T-SQL do oceny profilu.
Czytaj artykuł →
Sieć radiowa i skan lokalizacji w alejkach magazynu wysokiego składowania - terminal Android
Terminal radiowy w Studio WMS.net: zasięg sieci w alejkach magazynu wysokiego składowania, skan lokalizacji i nośników SSCC, kolektor Android oraz monitoring.
Czytaj artykuł →