Promotic
WikipediaLinkedInYoutubeTwitterFacebook

Serwer licencyjny PmNetKey

Serwer licencyjny PmNetKey umożliwia oferowanie licencji dla aplikacji PROMOTIC po sieci. Przez to odpada konieczność, kiedy każda aplikacja PROMOTIC miała licencję we własnym kluczu sprzętowym. W ten sposób można również rozwiązać problem z licencją w aplikacjach PROMOTIC w środowisku wirtualnym, gdzie aplikacja PROMOTIC w komputerze wirtualnym nie ma dostępu do fizycznego klucza na łączu USB komputera. Serwer licencyjny PmNetKey jest zabezpieczony przez własny klucz sprzętowy. Serwer licencyjny PmNetKey jest typowo automatycznie uruchamiany po uruchomieniu komputera jako usługa SO Windows.
 
Warunkiem poprawnego funkcjonowania jest, aby komputery z aplikacją PROMOTIC (klienci licencji) miały dostęp sieciowy poprzez protokół HTTP lub HTTPS do komputera z oprogramowaniem Serwer licencyjny PmNetKey. Do komunikacji pomiędzy aplikacją PROMOTIC i serwerem licencyjnym dochodzi nie tylko podczas uruchamiania aplikajci PROMOTIC, lecz komunikacja jest cyklicznie powtarzana (z periodem 1 minuta lub jeszcze wolniej). Sieciowe połączenie z serwerem licencyjnym musi funkcjonować przez cały czas biegu aplikacji PROMOTIC.
 
Licencje w serwerze lincencyjnym są tzw. "pływające": Aplikacje PROMOTIC mogą zostać uruchomione na różnych komputerach (w ramach sieci), ale ilość jednocześnie uruchomionych aplikacji nie może przekroczyć ilość licencji runtime zawartych w serwerze licencyjnym. Jeżeli na przykład w serwerze licencyjnym PROMOTIC znajdują się 2 licencje runtime, wtedy można jednocześnie uruchomić/użytkować dwie aplikacje. Następna aplikacja nie zostanie uruchomiona. Jeżeli dowolna z uruchomionych aplikacji zostanie zatrzymana i przez okres 10 minut nie będzie komunikować się z serwerem licencyjnym, wtedy dana licencja w serwerze licencyjnym zostanie zwolniona oraz przygotowana do wykorzystania przez inną aplikację. Teraz już można uruchomić następną aplikację - aplikacja zostanie uwierzytelniona zwolnioną licencją.
 
Licencje sieciowe aplikacji PROMOTIC dla Serwer licencyjny PmNetKey są dostarczane w formie pliku licencyjnego (patrz Plik licencyjny SWK związany z usługą Serwer licencyjny PmNetKey). Plik licencyjny funkcjonuje tylko z tym serwerem licencyjnym, dla którego został wytworzony. Nie będzie funkcjonować z innym serwerem.
 

Instalacja, deinstalacja serwera licencyjnego i ustawienei usługi

Oprogramowanie posiada własny plik instalacyjny, ponieważ często jest instalowany na komputerze, na którym nie jest zainstalowany PROMOTIC. Pakiet instalacyjny można pobrać z sekcji download https://www.promotic.eu/pl/promotic/download/download.htm (np. PmNetKey XXYYZZ.msi). Oprogramowanie należy zainstalować na komputerze, który ma funkcjonować jako serwer licencyjny. Podczas instalacji oprogramowanie jest ustawione jako usługa SO Windows z automatycznym uruchomieniem podczas uruchomienia komputera. Usługę Serwer licencyjny PmNetKey można ustawiać, zatrzymywać i uruchamiać przy pomocy standardowych środków SO Windows (administrator usług services.msc).

Serwer licencyjny PmNetKey jest zabezpieczony własnym kluczem sprzętowym. Bez klucza sprzętowego oprogramowanie nie działa. Klucz sprzętowy musi być specjalnie wytworzony do tego celu i nie można zastosować klucza sprzętowego dla aplikacji PROMOTIC. Klucz sprzętowy musi być ciągle dostępny w łączu USB komputera, na którym działa Serwer licencyjny PmNetKey.

 
Programem (usługą) można władać również z wiersza poleceń przy pomocy parametrów. Okno wiersza poleceń musi być uruchomione z wyższymi uprawnieniami jako Administrator. Polecenia mogą mieć sens w niektórych specjalnych przypadkach na przykład w plikach wsadowych (*.bat) SO Windows. W innych przypadkach nie jest konieczne ich powszechne stosowanie, ponieważ podczas instalacji programu jest również ustawiona usługa SO Windows i prze deinstalacji usługa jest usunięta. Konfigurację, zatrzymywanie i uruchamianie można wykonywać przy pomocy standardowych środków SO Windows. Jednotlivé polecenia:
 
PmNetKey -i - Wykona dodanie usługi SO Windows dla oprogramowania Serwer licencyjny PmNetKey. Usługa zostanie ustawiona tak, żeby uruchamiała się automatycznie przy uruchomieniu komputera. Podczas instalacji oprogramowanie zostanie wykonane automatycznie.
PmNetKey -u - Usunie usługę SO Windows dla oprogramowania Serwer licencyjny PmNetKey. Podczas deinstalacji oprogramowania zostanie wykonane automatycznie.
PmNetKey -s - Wykona uruchomienie usługi SO Windows dla oprogramowania Serwer licencyjny PmNetKey.
PmNetKey -k - Wykona zatrzymanie usługi SO Windows dla oprogramowania Serwer licencyjny PmNetKey.
PmNetKey - Uruchomi oprogramowanie Serwer licencyjny PmNetKey jako zwykłą aplikacja a nie jako usługę. Ikona aplikacji pojawi się pasku systemowym SO Windows pomiędzy ikonami po prawej. Może być dogodne w celu testowania.

Konfiguracja serwera licencyjnego

Oprogramowanie ustawia się przy pomocy pliku konfiguracyjnego PmNetKey.ini. Plik ten powstanie automatycznie podczas instalacji i jest ulokowany przy oprogramowaniu PmNetKey.exe (typowo w katalogu C:\Program Files\Promotic lub C:\Program Files (x86)\Promotic).

Opis kluczy w sekcji [Config]:

 
WebServer - Klucz umożliwia zmienić port i protokół (HTTP lub HTTPS) na którym będzie nasłuchiwać wewnętrzny Web serwer oprogramowania Serwer licencyjny PmNetKey. Jeżeli nie jest ustawione, wtedy zostanie zastosowana wartość domyślna http://+:81/, to znaczy, że zostanie zastosowany protokół HTTP i port 81. Znak ";" na początku wiersza zmieni wiersz na komentarz i wiersz nie jest wtedy brany poduwagę.
Przykład1:
Przykład pliku konfiguracyjnego PmNetKey.ini dla protokołu HTTP i portu 83
[Config]
WebServer=http://+:83/
Przykład2:
Przykład pliku konfiguracyjnego PmNetKey.ini dla protokołu HTTPS i domyślnego portu 443
[Config]
WebServer=https://+:443/
 
LogDir - Klucz umożliwia zmienić folder, w którym zostanie umieszczony plik Log. Jeżeli nie jest ustawione, wtedy plik Log zostanie umieszczony w folderze, w którym znajduje się PmNetKey.exe, który często powinien być tylko do odczytu.
Przykład:
Przykład pliku konfiguracyjnego PmNetKey.ini dla umieszczenia pliku Log do foldera C:\Windows\Temp
[Config]
LogDir=C:\Windows\Temp
 
LogRefresh - Klucz umożliwia ustawić, czy dopliku Log należy (wartość 1) lub nie należy (wartość 0) zapisywać również informacja o odświeżeniu licenji przez klienata (domyślnie z periodem 1 minuta dla każdego klienta). Przydatne podczas weryfikowania problemów z licencją sieciową, ale w dłuższej perspektywie usunie ważne informacje o uzyskiwaniu i zwalnianiu licencji przez klienta z plików kołowych. Jeżeli nie jest ustawione, wtedy zapis informacji o odświeżeniu licencji klienta do pliku Log jest wyłączony (wartość 0).
Przykład:
Przykład pliku konfiguracyjnego PmNetKey.ini w celu zezwolenia zapisu periodycznego odświeżania licencji klienta do pliku Log
[Config]
LogRefresh=1
 
Medium - Klucz umożliwia określić konkretny klucz sprzętowy, przy pomocy którego jest chroniony sam serwer licencyjny PmNetKey. Może zawierać listę kluczy sprzętowych (oddzielonych przecinkiem), która jest kolejno sprawdzana aż zostanie odnaleziony pierwszy podłączony klucz sprzętowy (np hwkey:k1234,hwkey:k1111). Jeżeli nie jest ustawione, wtedy zostanie zastosowana wartość domyślna "hwkey", oznaczająca dowolny klucz sprzętowy. W przypadku większej ilości kluczy sprzętowych po każdym ponownym uruchomieniu komputera serwer licencyjny może zostać powiązany przypadkowo z innym kluczem sprzętowym.
Przykład:
Przykład pliku konfiguracyjnego PmNetKey.ini, ustawienie konkretnego klucza sprzętowego o numerze 1234 w celu ochrony samego serwera licencyjnego.
[Config]
Medium=hwkey:k1234
 
Uruchomienie protokołu HTTPS serwera licencyjnego:
Do implementacji serwera licencyjnego (Web serwer) jest wykorzystana usługa HTTP SO Windows. Ustawienie protokołu HTTPS jest takie samo, jak w przypadku protokołu HTTPS dla obiektu PmWeb, tzn. przy pomocy naszego własnego narzędzia konfiguracyjnego dla usługi HTTP PmHttpConfig.exe, opis patrz PmHttpConfig.exe - konfiguracja usługi HTTP dla Web serwerów PROMOTIC (HTTP i HTTPS) (jest konieczne ustawienie praw, import certyfikatu serwera i jego połączenie z danym Web serwerem).

Monitoring funkcjonowania serwera licencyjnego

Oprogramowanie umożliwia monitorowanie zarówno bieżącego stanu przydzielania licencji sieciowych, jak również historii logowania i wylogowywania sieciowych klientów licencyjnych. Monitoring jet możliwy również przy pomocy Web interfejsu. Serwer licencyjny PmNetKey zawiera wbudowany Web serwer, które pod swoim adresem, protokołem i portem oferuje stronę info.html i log.html. Na przykład http://localhost:81/info.html i http://localhost:81/log.html.

Funkcjonowanie aplikacji PROMOTIC podczas utraty połączenia z serwerem licencyjnym

Jeżeli dojdzie do trwałej awarii cyklicznej komunikacji z serwerem licencyjnym, wtedy uruchomiona aplikacja PROMOTIC przechodzi kolejno do nastętpujących stanów:
1) informowanie - najpierw w błędach globalnych pojawia się informacja o utracie komunikacji z serwerem licencyjnym. Aplikacja przejdzie do tego stanu już podczas pierwszej awarii komunikacji cyklicznej. Ten stan trwa około 10 minut.
2) ostrzeżenie - potem zostaje wyświetlony dialog ostrzegawczy (jeżeli zostanie zamknięty przez obsługę to powtórnie) i w globalnych błędach pojawia się ostrzeżenie o utracie komunikacji z serwerem licencyjnym. Ten stan trwa około 48 godzin.
3) błąd - w końcu sytuacja jest podsumowana jako błą, aplikacja jest natychmiastowo zatrzymana i w błędach globalnych pojawi się błąd licencji.
 
Stany 1) i 2) bezzwłocznie zakończą się przy pierwszej pomyślnej komunikacji cyklicznej z serwerem licencyjnym. Jeżeli dojdzie do trwałej utraty komunkacji z serwerem licencyjnym, wtedy aplikacja zostanie zatrzymana po upywie 48 godzin. W celu stwierdzenia czasu trwania błędu komunikacji z sewerem licencyjnym można zastosować metodę Pm.LicenceInfo(10).
 
Przy niedziałającym połączeniu z serwerem licencyjnym aplikacji PROMOTIC w ogóle nie można uruchomić. Zabezpieczenie zwłoką w czasie przed samym zatrzymaniem aplikacji, przy niedziałającym połączeniu z serwerem licencyjnym dotyczy tylko wcześniej uruchomionej aplikacji.

Uruchomienie plików licencyjnych SWK na serwerze licencyjnym i u klienta

a) Serwer licencyjny - Plik licencyjny trzeba skopiować do folderu, w którym znajduje się plik PmNetKey.exe.
b) Klient licencyjny - W INI pliku aplikacji (dla runtime - PmRt) lub w INI pliku PROMOTIC (dla środowiska deweloperskiego - PmDev i PmDevSchool - od wersji 8.3.) należy wytworzyć sekcję [Licence] a w niej klucz Medium w następujący sposób (odniesienie do Serwer licencyjny PmNetKey oraz do konkretnego Plik licencyjny SWK związany z usługą Serwer licencyjny PmNetKey):
[Licence]
Medium=netkey:http://192.168.1.99:81/Pm1234.swk
 
, gdzie netkey oznacza licencję sieciową, http lub https oznacza protokół, następuje adres IP lub nazwa komputera, port wewnętrznego Web serwera i nazwa licencyjnego pliku SWK.
 
Uwaga:
 
Zalogowany Windows użytkownik musi posiadać zezwolone uprawnienia zapisu do następujących plików:
- do pliku PmNetKeyA.log Serwera licencyjnego PmNetKey
- do plików app.ini aplikacji PROMOTIC związanych z usługą Serwer licencyjny PmNetKey
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice