Licenční server PmLicServer je součástí instalačního souboru PROMOTIC 9.
Licenční server PmLicServer umožňuje
poskytovat licence PROMOTIC aplikacím buď
lokálně nebo
po síti. Odpadá tím nutnost, aby každá aplikace PROMOTIC měla licenci ve svém vlastním HW klíči. Takto lze také vyřešit problém s licencí v aplikaci PROMOTIC ve virtualizovaném prostředí, kde aplikace PROMOTIC ve virtálním stroji nemá přístup k fyzickému HW klíči na USB portu počítače.
Licenční server PmLicServer se obvykle
automaticky spouští po startu počítače
jako služba Windows.
Podmínkou správné funkce je, aby počítače s PROMOTIC aplikací (licenční klienti) měly síťový přístup protokolem
HTTP nebo
HTTPS k počítači s programem
Licenční server PmLicServer. Ke komunikaci mezi PROMOTIC aplikací a licenčním serverem dochází nejenom při spuštění aplikace PROMOTIC, ale opakovaně periodicky (s periodou 1 minuta nebo ještě pomaleji).
Síťové spojení s licenčním serverem musí být funkční po celou dobu běhu aplikace PROMOTIC.
Licence na licenčním serveru jsou tzv.
"plovoucí" Aplikace PROMOTIC mohou být spouštěny na různých počítačích (v síti), ale počet současně spuštěných aplikací nesmí překročit počet runtime licencí přítomných na licenčním serveru. Pokud jsou například na PROMOTIC licenčním serveru přítomny 2 runtime licence, pak lze spustit dvě aplikace současně. Další aplikace se již nespustí. Pokud bude některá ze spuštěných aplikací zastavena a nebude komunikovat s licenčním serverem po dobu
10 minut, pak bude na licenčním serveru tato licence uvolněna a připravena pro použití další aplikací. Nyní již bude možné tuto další aplikaci spustit - aplikace použije tuto uvolněnnou licenci.
Lokální režim pro nosiče licencí hwkey a swkey
V tomto režimu
Licenční server PmLicServer není chráněn vlastním HW klíčem. Licenční server poskytuje
lokálně PROMOTIC aplikacím licence z nosičů
hwkey a
swkey (SWK soubor).
Pro nosiče licencí
swkey je získávaní licence přes licenční server povinné, tzn. aplikace PROMOTIC tuto licenci přímo nevyčítá.
Pro nosiče licencí
hwkey je získávaní licence přes licenční server volitelné, tzn. aplikace PROMOTIC tuto licenci umí získat i přímo. Výhodou získání licence v HW klíči pomocí licenčního serveru je funkčnost tohoto řešení i v režimu vzdálené plochy (
Remote Desktop)
Windows, kdy služba má k HW klíči přístup (licenční server), zatímco normální aplikace PROMOTIC tento přístup nemá. Licenční server periodicky přečte všechny dostupné HW klíče, takže při požadavku na licenci v HW klíči vrací naposledy načtený obsah příslušného klíče.
Příklad nastavení licenčního serveru bez ochrany HW klíčem (lokální režim):
[Config]
Medium=none
Síťový režim pro nosiče licencí netkey
V tomto režimu
Licenční server PmLicServer je chráněn vlastním HW klíčem, kde číslo HW klíče musí být uvedeno v konfiguračním souboru
PmLicServer.ini. Přítomnost chránicího HW klíče se periodicky kontroluje. Licenční server poskytuje po síti PROMOTIC aplikacím síťovou licenci z nosiče
netkey (SWK soubor). Síťová licence v podobě nosiče
netkey (SWK soubor) je vygenerována pro konkrétní chránicí HW klíč licenčního serveru. Licence nebude v PROMOTIC aplikacích fungovat, pokud licenční server není nakonfigurován nebo chránicí HW klíč chybí nebo má jiné číslo.
Příklad nastavení licenčního serveru s chránícím HW klíčem 1234 (síťový režim):
[Config]
Medium=hwkey:k1234
Instalace, odinstalace licenčního serveru a konfigurace služby
Program je součástí instalace PROMOTIC a lze ho instalovat samostatně na počítači, který má být licenčním serverem. Pomocí
PmManager může být nakonfigurován tak, aby se automaticky spouštěl jako služba
Windows při startu počítače. Službu
Licenční server PmLicServer lze konfigurovat, zastavovat a spouštět standardními prostředky OS
Windows (správce služeb
services.msc).
Program (služba) lze ovládat i z příkazového řádku pomocí parametrů. Okno příkazového řádku musí být spuštěno s povýšenými právy jako
Správce. Příkazy mohou mít smysl v některých speciálních případech například v povelových (*.bat) souborech OS
Windows. Obvykle není nutno příkazy používat, protože během instalace programu se nakonfiguruje i služba OS
Windows a při odinstalaci se služba odebere. Konfigurace, zastavování a spouštění se dělá standardními prostředky OS
Windows. Jednotlivé příkazy:
PmLicServer -i - Přidá službu Windows pro program Licenční server PmLicServer.
Služba bude nakonfigurována, aby se automaticky spouštěla se spuštěním počítače. Během instalace programu se provede automaticky.
PmLicServer -u - Odstraní službu Windows pro program Licenční server PmLicServer. Při odinstalaci programu se provede automaticky.
PmLicServer -s - Spustí službu Windows pro program Licenční server PmLicServer.
PmLicServer -k - Zastaví službu Windows pro program Licenční server PmLicServer.
PmLicServer - Spustí program Licenční server PmLicServer jako běžnou aplikaci, ne jako službu Windows. Ikona aplikace se objeví v systémové liště OS Windows mezi ikonama vpravo. Může být výhodné pro testování.
Konfigurace licenčního serveru
Program se konfiguruje pomocí konfiguračního souboru
PmLicServer.ini. Tento soubor se vytvoří automaticky během instalace a je umístěn ve složce
\GCfg.
Popis klíčů v sekci
[Config]:
WebServer - Klíč umožňuje změnit port a protokol (
HTTP nebo
HTTPS) na kterém bude naslouchat interní Web server programu
Licenční server PmLicServer.
Pokud není nastaveno, pak se použije výchozí hodnota
http://+:5656/, to znamená, že se použije protokol
HTTP na portu
5656.
Znak
";" na začátku řádku udělá z řádku komentář a řádek nebude brán v úvahu.
Příklad1:
Příklad konfiguračního souboru PmLicServer.ini pro protokol HTTP, localhost, a port 5656. Pro licenční server pracující pouze v lokálním režimu, je dobré z bezpečnostních důvodů omezit poslouchání Web serveru pouze na localhost rozhraní (127.0.0.1 nebo ::1).
[Config]
WebServer=http://127.0.0.1:5656/
Příklad2:
Příklad konfiguračního souboru PmLicServer.ini pro protokol HTTP a port 81
[Config]
WebServer=http://+:81/
Příklad3:
Příklad konfiguračního souboru PmLicServer.ini pro protokol HTTPS a implicitní port 443
[Config]
WebServer=https://+:443/
LogRefresh - Klíč umožňuje nastavit, zda se do Log souboru má (hodnota
1) nebo nemá (hodnota
0) zapisovat i informace o obnovení licence klientem (přednastaveno s periodou 1 minuta pro každého klienta).
Je vhodný při ladění problémů se síťovou licencí, ale z dlouhodobého hlediska vymaže z kruhových souborů důležité informace o získání a uvolnění licencí klientem.
Pokud není nastaveno, pak zápis informace o obnovení licence klientem do Log souboru je vypnutý (hodnota
0).
Příklad:
Příklad konfiguračního souboru PmLicServer.ini pro povolení zápisu periodického obnovování licence klienty do Log souboru
[Config]
LogRefresh=1
Medium - Klíč určuje, zda licenční server bude v lokálním nebo síťovém režimu.
hwkey:none (přednastaveno) - Lokální režim. Pouze pro čtení nosičů licencí
hwkey a
swkey z lokálního počítače (aplikace a licenční server musí být na stejném počítači).
hwkey:k1234 - Síťový režim s HW klíčem chránicím licenční server. Nosiče licencí
netkey lze číst i ze sítě. Nosiče licencí
hwkey a
swkey lze číst pouze z lokálního počítače (aplikace a licenční server musí být na stejném počítači).
Příklad:
Příklad konfiguračního souboru PmLicServer.ini pro nastavení konkrétního HW klíče s číslem licence 1234 pro ochranu vlastního licenčního serveru (síťový režim).
[Config]
Medium=hwkey:k1234
Zprovoznění protokolu HTTPS licenčního serveru:
K implementaci licenčního serveru (Web server) se využívá "HTTP služba" OS
Windows. Konfigurace protokolu
HTTPS se provádí úplně stejně, jako v případě protokolu
HTTPS objektu
PmaWeb, tzn. pomocí nástroje
PmHttpConfig.exe (je nutno nastavit práva, importovat certifikát počítače serveru a spojit ho s daným Web serverem).
Sledování činnosti licenčního serveru
Program umožňuje sledovat jednak aktuální stav přidělených síťových licencí a také historii přihlašování a odhlašování síťových licenčních klientů. Sledování lze pomocí Web rozhraní.
Licenční server PmLicServer obsahuje interní Web server, který na své IP adrese, protokolu a portu nabízí stránku
info.html a
log.html. Například
http://localhost:5656/info.html a
http://localhost:5656/log.html.
Log soubor se vytvoří automaticky ve složce
\GTemp.
Chování aplikace PROMOTIC při ztrátě spojení s licenčním serverem
Pokud dojde k trvalému selhání periodické komunikace s licenčním serverem nebo
pokud se ztratí spojení s nosičem licence obecně (HW klíč je nedostupný pro licenční server nebo přímo pro aplikaci), pak
spuštěná aplikace PROMOTIC prochází postupně následujícími stavy:
1) informování - nejprve se v globálních chybách objeví informace o ztrátě komunikace s licenčním serverem. Do tohoto stavu se aplikace dostane už při prvním selhání periodické komunikace. Tento stav trvá asi 10 minut.
2) upozornění - potom je zobrazeno upozorňovací okno (opakovaně, pokud ho obsluha zavře) a v globálních chybách se objeví upozornění o ztrátě komunikace s licenčním serverem. Tento stav trvá asi 48 hodin.
3) chyba - nakonec je situace vyhodnocena jako chybová, aplikace je okamžitě zastavena a v globálních chybách objeví chyba licence.
Stavy 1) a 2) okamžitě končí při první úspěšné periodické komunikaci s licenčním serverem nebo při dostupnosti nosiče licence. Pokud dojde k trvalé ztrátě komunikace s licenčním serverem, pak po asi 48 hodinách je aplikace zastavena.
Ke zjištění času trvání chyby komunikace s licenčním serverem lze použít metodu
Pm.LicenceInfo(10).
Při nefunkčním spojení s licenčním serverem nebo při nedostupnosti nosiče licence nelze aplikaci PROMOTIC vůbec spustit. Ochrana časovou prodlevou, před vlastním zastavením aplikace, při nefukčním spojení s licenčním serverem nebo nosičem licence se týká pouze už spuštěné aplikace.
Zprovoznění licenčních SWK souborů na licenčním serveru a licenčním klientu
a) Licenční server - Licenční soubor je nutno zkopírovat do složky "
?:\Promotic\Licences".
[Licence]
Medium=netkey:http://192.168.1.99:5656/Pm1234.swk
nebo
Medium=swkey:Pm1234.swk
, kde
netkey znamená síťovou licenci,
http nebo
https určuje protokol, následuje IP adresa nebo název počítače, port interního Web serveru a název licenčního SWK souboru.
Upozornění:
Přihlášený
Windows uživatel musí mít povolená oprávnění zapisovat do následujících souborů:
Zpřístupnění licence obsažené v HW klíči prostřednictvím lokálního licenčního serveru:
Vhodné pro použití v režimu vzdálené plochy (
RDP).
Systém PROMOTIC a vzdálená plocha Windows (RDP).
PmLicServer.ini:
[Config]
Medium=none
ini soubor aplikace:
[Licence]
UseLicServerHwk=1
Medium=hwkey:k1234