Book Contents

Book Index

Nasazení eshopu na IIS

Tento dokument se zabývá problematikou nasazení eshopu na IIS a instalací jeho součástí a testování.

Před samotnou instalací Eshopu, je nutné mít připraveno a nainstalováno:

  1. IIS (Správce internetové informační služby)
  2. Aplikační server
  3. Server webových služeb
  4. PHP verze 5.6 (pro responzivní e-shop), PHP verze 7.4 (64 bit) pro šablonovací e-shop

Instalace a nastavení jednotlivých součástí budou podrobně popsány v dalších kapitolách.

Book Contents

Book Index

K2 aplikační server

Tento instalační balíček slouží k instalaci aplikačního serveru IS K2 verze 3. Aplikační server pak slouží pro obsluhu webových klientů, kteří se na aplikační server připojují.

Softwarové požadavky

Prvním požadavkem instalátoru aplikačního serveru je nutnost mít spuštěnou instalaci s administrátorským oprávněním. Jelikož tuto podmínku musí splňovat již K2 instalátor samotný, je tímto zajištěno, že se toto oprávnění přenese i na všechny instalace spouštěné z K2 instalátoru. Pro jistotu toto oprávnění testuje každá instalace, takže v případě nedostatečného oprávnění by instalátor zobrazil hlášení.

Druhým požadavkem je nutnost mít nainstalovaný IS K2, a to verze, která odpovídá verzi aplikačního serveru, minimálně na úrovni verzi releasu verze, to znamená např. 3.135.3.

Pokud jsou výše zmíněné podmínky splněny, pak můžeme spustit instalaci.

Instalace

Po spuštění instalace se zobrazí první dialog, který uživatele informuje, že je spuštěn instalátor pro produkt K2 Aplikační server a navíc zobrazí číslo verze, která bude nainstalována, viz Obr.: Start instalace AS.

pim_1124_01

Obr.: Start instalace AS

Po stisknutí tlačítka Další přejdeme k druhému dialogu, který obsahuje licenční ujednání, která po přečtení musíme akceptovat, abychom mohli pokračovat dále. Ujednání akceptujeme, zatrhnutím volby S podmínkami licenční smlouvy souhlasím, viz Obr.: Licenční ujednání AS.

pim_1125_01

Obr.: Licenční ujednání AS

Tlačítkem Další se dostaneme na třetí dialog, kde je uživatel vyzván k zadání cesty k nainstalované K2, viz Obr.: Cesta k IS K2. Tlačítkem Změnit můžete procházet klasickým dialogem adresáře na fyzických discích, případně na síti.

pim_1126_01

Obr.: Cesta k IS K2

Pokud ve vybraném adresáři není nainstalován IS K2, pak je při pokusu o pokračování v instalaci zobrazeno varovné hlášení, které nedovolí pokračovat v instalaci, dokud není vybraná platná cesta, viz Obr.: IS K2 nenalezen

pim_1127

Obr.: IS K2 nenalezen

Pokud je v adresáři nalezena platná instalace IS K2, instalace po stisknutí tlačítka Další pokračuje k dalšímu dialogu, který slouží k výběru instalační cesty. Tedy cesty kde se bude aplikace instalovat. Tlačítkem Změnit můžete procházet klasickým dialogem adresáře na fyzických discích.

pim_1128_01

Obr.: Instalační adresář

Po výběru instalačního adresáře a stisku tlačítka Další se zobrazí dialog, který vyzve uživatele, aby zadal název aplikačního serveru, včetně popisu (určen pro jednodušší rozpozdnání aplikačního serveru) a mandanta, viz Obr.: Název aplikačního serveru K2. Tato hodnota slouží jako jedinečná identifikace konkrétního aplikačního serveru mezi více instalacemi těchto aplikačních serverů. Pomocí této identifikace se pak budou připojovat weboví klienti ke správným aplikačním serverům.

pim_1353

Obr.: Název aplikačního serveru K2

Vyplníme pole Název instance a Popis aplikačního serveru. Do pole Mandant zadáme mandanta, pro kterého má být aplikační server výchozí.

pim_1354

Obr.: Název instance

Volba Zapnout notifikace zapíná notifikace na AS, tzn. do souboru "K2.INI" je doplněn parametr "NSUSERS=K2". Pomocí volby Zapnout plánovač se zapíná plánovač na AS a do souboru "K2.INI" je přidán parametr "SCHEDULESERVICE=1".

Jestliže, je zatržena volba Konfigurovat aplikační server i pro server webových služeb, pak následuje dialog, viz Obr: Nastavení aplikačního serveru, který vyzve k zadání prefixu anonymního uživatele, počtu uživatelů a hesla uživatelů. Tito uživatelé musí být vytvořeni v IS K2 před instalací AS a měli by být číslováni vzestupně např. AN1, AN2 atd. kde AN je prefix a za ním pořadové číslo. Všichni tito uživatelé musí mít stejné heslo.

Pokud je zatržena volba Konfigurovat pro eshop, zobrazí se jako další krok instalace dialog pro Nastavení aplikačního serveru pro Eshop, viz obr. Číslo výchozí kontaktní osoby pro EShop. Zde zadáváme číslo kontaktní osoby, prostřednictvím které je realizováno přihlášení anonymního uživatele eshopu. Tato kontaktní osoba musí mít přiřazenou registraci. Do "K2.INI" aplikačního serveru se rovněž zařadí parametr "AS3ContactPerson".

V případě, že je zatržena volba Konfigurovat pro kontaktní centrum, zobrazí se v rámci instalace aplikačního serveru také dialog, viz obr. K2 uživatel pro kontaktní centrum. Na této obrazovce zadáváme jméno uživatele, pod kterým běží v IS K2 kontaktní centrum a také heslo. Zde zadané hodnoty se pak doplní do "K2.INI" aplikačního serveru jako parametry "CCUSER" a "CCPASWORD". Do "K2.INI" se doplní také parametr "CONTACTCENTERSERVICE=1".

pim_1197_01

Obr.: Nastavení aplikačního serveru

pim_1298_01

Obr.: Číslo výchozí kontaktní osoby pro EShop

pim_1299_01

Obr.: K2 uživatel pro kontaktní centrum

Dalším dialogem v instalaci je zadání jména a hesla uživatele, pod kterým bude běžet služba aplikačního serveru. Může být použit místní systémový účet viz obr. Místní systémový účet - AS anebo účet Windows uživatele, který vyžaduje heslo, viz obr.: Windows uživatel 2 - AS.

pim_1130_01

Obr.: Místní systémový účet - AS

Také může být použit doménový uživatel i s heslem, viz Obr.: Windows uživatel 2 - AS

pim_1131_01

Obr.: Windows uživatel 2 - AS

Po stisku tlačítka Další se kontroluje shoda hesel. Pokud nejsou shodné, je uživatel vyzván k opravě. Dalším dialogem v instalaci je zadání K2 uživatele, pod kterým se bude aplikační server připojovat k IS K2. Je možné využít již vytvořeného uživatele nebo vytvořit speciálního uživatele, který bude sloužit jen pro připojení k AS. Pro uživatele, kterým se bude připojovat k AS, není potřeba mít vyhrazenou licenci, viz Obr.: K2 uživatel - AS

pim_1132_01

Obr.: K2 uživatel - AS

Po stisku tlačítka Další se kontroluje shoda hesel. Pokud nejsou shodné, je uživatel vyzván k opravě.

Pokud jsou hesla shodná, pak se zobrazí dialog, který uživatele informuje o připravenosti instalace. Kliknutím na tlačítko Nainstalovat se pak spustí samotný průběh instalace.

pim_1133_01

Obr.: Potvrzení instalace

Po úspěšné instalaci je zobrazen uživateli poslední dialog o úspěšné instalaci, viz Obr.: Konec instalace

pim_1134_01

Obr.: Konec instalace

Na závěr instalace, případně reinstalace Aplikačního serveru se může zobrazit textový soubor se seznamem uživatelů. Důvodem je zpřísněná politika bezpečnosti uživatelských účtů IS K2.

Jednotlivým uživatelům je možné zakázat přístup z webu do IS K2 a všichni uživatelé mají po reinstalaci tento přístup zakázán. V textovém souboru, se na závěr instalace, zobrazí seznam všech uživatelů, kteří mají propojení na kontaktní osobu a zároveň mají zakázán přístup přes web. Tito nebudou moci používat některé funkce, jako je např. schvalování wkfl z emailu. Pro tyto uživatele je nutné nastavit přístup z webu v knize Uživatelé - nastavení hesel.

pim_1362

Obr.: Textový soubor se seznamem uživatelů

Book Contents

Book Index

Popis

Tento instalační balíček slouží k instalaci aplikačního serveru IS K2 verze 3. Aplikační server pak slouží pro obsluhu webových klientů, kteří se na aplikační server připojují.

Book Contents

Book Index

Softwarové požadavky

Book Contents

Book Index

Instalace

Book Contents

Book Index

Instalace IIS

K2 EShop musí být v ostrém provozu nasazen na serverový operační systém – Microsoft Windows Server. Podporované verze tohoto systému jsou dostupné v dokumentu „Systémové požadavky“ dle verze IS K2. Instalace na klientský operační systém je možná, ale pouze v rámci testu nebo prohlídky DEMO instalace. Tento dokument se zabývá popisem serverové instalace IIS a všech ostatních komponent systému nezbytných pro běh K2 Eshopu.

Dalším krokem je instalace IIS (Správce internetové informační služby. Nejdříve je potřeba spustit Správce serveru a následně možnost Přidat role a funkce.

pic_4331

Obr.: Správce serveru

Prvním krokem jsou instrukce před samotnou instalací, po jejich prostudování se tlačítkem Další posuneme k dalšímu kroku.

pic_4332

Obr.: Průvodce přidáním

V dalším kroku vybereme typ instalace - Instalace na základě rolí nebo základě funkcí.

pic_4333

Obr.: Typ instalace

Výběr serveru, kde má být IIS nainstalováno.

pic_4334

Obr.: Výběr serveru

V dalším kroku kromě defaultně zatržených funkcí je potřeba zaškrtnout volbu „Web server (IIS)“.

pic_4335

Obr.: Role serveru

Další krokem je definice funkcí. Nastavíme Net Framework dle instalace a volby. Zde je potřeba ponechat výchozí nastavení a přidat vývoj aplikací (.NET 4.5, ASP.NET 4.5), Nástroje pro správu (včetně kompatibility IIS 6) a Nezatrhávat „Publikování WebDAV“.

Přidat: ASP.NET 4.6 a pod HTTP Activation (pod WCF Services).

pim_1305

Obr.: Funkce

V dalším kroku zatrhnout CGI (pod Application development) – pro eshop je to nutnost, pro K2 API není nutné.

pim_1306

Obr.: Služby rolí

V tom samém kroku Služby rolí je potřeba nastavit ještě IIS 6 Metabase Compatibility.

pim_1307

Obr.: Služby rolí

V posledním kroku uživatel již jen potvrdí předchozí nastavení.

pim_1308

Obr.: Potvrzení instalace

Book Contents

Book Index

Instalace K2 API

Server webových služeb K2 (K2 API) je webová aplikace běžící na webovém serveru Microsoft Internet Information Services (IIS). Prostřednictvím aplikačního serveru K2 zpřístupňuje data informačního systému K2 a umožňuje spouštění skriptů a sestav. Webové služby jsou založeny na technice REST, tzn., komunikace probíhá pomocí protokolu HTTP a standardních metod GET (čtení dat), POST (vytváření dat), PUT (modifikace existujících dat).

Data je možné číst a posílat buď ve formátu XML nebo JSON.

Po zadání kořenové URL adresy K2 API do prohlížeče je možné procházet základní popis služeb a prostředků/operací pomocí dynamické nápovědy.

Instalace a základní nastavení

Prerekvizity:

Doporučené nasazení pro přístup k K2 API z internetu:

K2 aplikační server by měl být vždy instalován na serveru dostupném pouze ve vnitřní síti. K2 API a případné další webové aplikace) je doporučeno instalovat na samostatný server, který je dostupný z internetu a má omezený přístup do interní sítě povolující pouze komunikace s K2 AS.

Instalace K2 API:

Provádí se pomocí K2 instalátoru. Instalační program K2 API před začátkem instalace kontroluje dostupnost základních vyžadovaných součástí, případně upozorní na chybějící součásti a instalace je zastavena.

Během instalace je potřeba zadat několik údajů:

Nejčastější problémy při instalaci a konfiguraci K2 API:

pim_1309

Obr.: Chybějící oprávnění

Oprávnění je nutné přidat těmto uživatelům.

pim_1310

Obr.: Uživatelé

Ve většině případů pomůže logování K2 API případně AS. Zapnutí logování K2 API se provádí v konfiguračním souboru web.config, parametry LogPath (cesta k log souboru), LogLevel (typy zpráv, které mají být zaznamenávány, pro ladění doporučeno alespoň Info), LogRequests (umožňuje sledovat zpracovávání jednotlivých požadavků na K2 API i v případě souběhu více požadavků najednou).

Book Contents

Book Index

Instalace PHP

Pomocí „WEB platform Instaler“ nainstalujeme PHP. Pro eshop je nutné PHP verze 5.6 a vyšší. Pro některé OS, se nemusí podařit nainstalovat PHP manažera. Není to nutný doplněk, ale je vhodný a doporučený. (Pozn. Pro šablonovací e-shop je vyžadována verze PHP 7.4 (64bit)).

Pokud se nepodaří nainstalovat PHP manager, v níže uvedeném odkazu je popsán postup, jak ho nainstalovat.

Odkaz jak nainstalovat PHP manager:

https://answers.microsoft.com/en-us/windows/forum/windows_10-other_settings/php-manager-for-iis-on-windows-10/33ef32f0-6a86-4803-abc1-6de81110f9a8?auth=1

Pomocí Web platform instaler najdeme PHP 5.6 a dáme instalovat

pim_1311

Obr.: Instalace PHP verze 5.6

pim_1312

Obr.: Instalace PHP verze 5.6

Pokud je nainstalovaný PHP manager, je možné ověřit, jestli se instalace zdařila, pomocí funkce Checkphpinfo.

pim_1313

Obr.: Ověření instalace

Pokud je PHP správně nainstalováno, zobrazí se níže uvedená stránka.

pim_1314

Obr.: Ověření instalace

Book Contents

Book Index

K2 E-shop

Tento instalační balíček slouží k instalaci internetového obchodu K2. Aplikace K2 E-shop běží v rámci Internetové informační služby. K2 E-shop využívá pro připojení do IS K2 webové služby a ty pak aplikační server. Instalace K2 E-shopu proto již předpokládá jejich existenci.

Sofwarové požadavky

První podmínkou instalace K2 E-shopu je instalace Internetové informační služby, dále jen IIS, verze 6.0 a vyšší. Pokud není IIS nainstalována, zobrazí se na začátku instalace varovné hlášení. V rámci IIS je nutné mít zatrženou možnost CGI (Common Gateway Interface) v sekci Webové služby - Funkce pro vývoj aplikací. Tato volba je nutná pro funkčnost PHP v rámci IIS.

Druhým požadavkem pro funkčnost K2 E-shopu je rozšíření IIS o URL Rewrite. Instalace tohoto rozšíření zajišťuje překlad URL adres do čitelné podoby. Pokud není toto rozšíření nainstalováno, zobrazí instalátor hlášení s odkazem ke stažení. Instalace URL Rewrite je zařazena také na záložce Ostatní instalace odkud ji lze stáhnout a nainstalovat.

pim_1265

Obr.: Hlášení instalátoru (chybějící URL Rewrite)

Posledním požadavkem je instalace podpory PHP verze 5.6 do IIS. Pokud tato podpora nainstalována není, informuje o tom instalátor zobrazeným hlášením. Instalace podpory PHP je k dispozici na záložce Ostatní instalace. Pro PHP verze 5.6 však neexistuje instalátor. Je nutné nainstalovat nejprve verzi 5.3 (dostupnou v instalátoru na záložce Ostatní instalace), následně stáhnout PHP 5.6 a povýšit na tuto verzi. Odkaz ke stažení PHP 5.6 je http://windows.php.net/.

pim_1266

Obr.: Hlášení instalátoru (chybějící podpora PHP)

Instalace

Po spuštění instalace a splnění výše uvedených softwarových požadavků se zobrazí první dialog, který uživatele informuje, že je spuštěn instalátor pro produkt K2 E-shop, viz Obr.: Start instalace K2.

pim_1267

Obr.: Start instalace K2 E-shop

Po stisknutí tlačítka Další přejdeme k druhému dialogu, který obsahuje licenční ujednání.

Tlačítkem Další se dostaneme na třetí dialog, který slouží k výběru instalační cesty pro K2 E-shop, viz Obr.: Cílový adresář. Tlačítkem Změnit můžete procházet klasickým dialogem adresáře na fyzických discích, případně na síti. K2 E-shop zpravidla instalujeme do domovského adresáře IIS (výchozí adresář IIS je C:\inetpub\wwwroot). Název adresáře pak určuje finální podobu URL adresy e-shopu, která se skládá z adresy IIS a názvu adresáře s instalací produktu K2 E-shop.

pim_1268

Obr.: Cílový adresář

Po výběru instalační cesty následuje dialog, ve kterém určujeme webové služby pro E-shop. Pomocí těchto webových služeb, se K2 E-shop připojuje k IS K2. V tomto dialogu vybíráme Typ protokolu (Http nebo Https), Název IIS serveru (obvykle název počítače, kde jsou webové služby nainstalovány) a Název aplikace na IIS (pojmenování webových služeb pro K2 E-shop). Tyto tři hodnoty tvoří kompletní URL adresu, pro připojení k serveru webových služeb.

pim_1269

Obr.: Webové služby pro E-shop

Další dialogové okno zobrazíme znovu stisknutím tlačítka Další. Zde je pak nutné nastavit přihlašovací údaje pro anonymní přístup do eshopu. Jedná se o přihlašovací údaje nastavené na kontaktní osobě.

pim_1270

Obr.: Přihlášení pro neregistrovaného uživatele

Posledním instalačním dialogem je Nastavení e-shopu. Zde je nutné v poli Číslo e-shopu z K2 zadat RID internetového obchodu z IS K2 pro jeho jednoznačné určení. Dále je zde pole pro určení URL adresy pro přístup k obrázkům.

pim_1271

Obr.: Nastavení e-shopu

Po vyplnění všech údajů pak pokračujeme dále tlačítkem Další. Zobrazí se dialog, který uživatele informuje o připravenosti instalace. Pomocí tlačítka Nainstalovat pak spustíme vlastní instalaci produktu.

pim_1272

Obr.: Připravena instalace K2 E-shop

Po úspěšné instalaci se zobrazí poslední dialog s informací o výsledku.

pim_1273

Obr.: Dokončení instalace

Book Contents

Book Index

Popis

Tento instalační balíček slouží k instalaci internetového obchodu K2. Aplikace K2 E-shop běží v rámci Internetové informační služby. K2 E-shop využívá pro připojení do IS K2 webové služby a ty pak aplikační server. Instalace K2 E-shopu proto již předpokládá jejich existenci.

Book Contents

Book Index

Softwarové požadavky

První podmínkou instalace K2 E-shopu je instalace Internetové informační služby, dále jen IIS, verze 6.0 a vyšší. Pokud není IIS nainstalována, zobrazí se na začátku instalace varovné hlášení. V rámci IIS je nutné mít zatrženou možnost CGI (Common Gateway Interface) v sekci Webové služby - Funkce pro vývoj aplikací. Tato volba je nutná pro funkčnost PHP v rámci IIS.

Druhým požadavkem pro funkčnost K2 E-shopu je rozšíření IIS o URL Rewrite. Instalace tohoto rozšíření zajišťuje překlad URL adres do čitelné podoby. Pokud není toto rozšíření nainstalováno, zobrazí instalátor hlášení s odkazem ke stažení. Instalace URL Rewrite je zařazena také na záložce Ostatní instalace odkud ji lze stáhnout a nainstalovat.

pim_1265

Obr.: Hlášení instalátoru (chybějící URL Rewrite)

Posledním požadavkem je instalace podpory PHP verze 5.6 do IIS. Pokud tato podpora nainstalována není, informuje o tom instalátor zobrazeným hlášením. Instalace podpory PHP je k dispozici na záložce Ostatní instalace. Pro PHP verze 5.6 však neexistuje instalátor. Je nutné nainstalovat nejprve verzi 5.3 (dostupnou v instalátoru na záložce Ostatní instalace), následně stáhnout PHP 5.6 a povýšit na tuto verzi. Odkaz ke stažení PHP 5.6 je http://windows.php.net/.

pim_1266

Obr.: Hlášení instalátoru (chybějící podpora PHP)

Book Contents

Book Index

Instalace

Po spuštění instalace a splnění výše uvedených softwarových požadavků se zobrazí první dialog, který uživatele informuje, že je spuštěn instalátor pro produkt K2 E-shop, viz Obr.: Start instalace K2.

pim_1267

Obr.: Start instalace K2 E-shop

Po stisknutí tlačítka Další přejdeme k druhému dialogu, který obsahuje licenční ujednání.

Tlačítkem Další se dostaneme na třetí dialog, který slouží k výběru instalační cesty pro K2 E-shop, viz Obr.: Cílový adresář. Tlačítkem Změnit můžete procházet klasickým dialogem adresáře na fyzických discích, případně na síti. K2 E-shop zpravidla instalujeme do domovského adresáře IIS (výchozí adresář IIS je C:\inetpub\wwwroot). Název adresáře pak určuje finální podobu URL adresy e-shopu, která se skládá z adresy IIS a názvu adresáře s instalací produktu K2 E-shop.

pim_1268

Obr.: Cílový adresář

Po výběru instalační cesty následuje dialog, ve kterém určujeme webové služby pro E-shop. Pomocí těchto webových služeb, se K2 E-shop připojuje k IS K2. V tomto dialogu vybíráme Typ protokolu (Http nebo Https), Název IIS serveru (obvykle název počítače, kde jsou webové služby nainstalovány) a Název aplikace na IIS (pojmenování webových služeb pro K2 E-shop). Tyto tři hodnoty tvoří kompletní URL adresu, pro připojení k serveru webových služeb.

pim_1269

Obr.: Webové služby pro E-shop

Další dialogové okno zobrazíme znovu stisknutím tlačítka Další. Zde je pak nutné nastavit přihlašovací údaje pro anonymní přístup do eshopu. Jedná se o přihlašovací údaje nastavené na kontaktní osobě.

pim_1270

Obr.: Přihlášení pro neregistrovaného uživatele

Posledním instalačním dialogem je Nastavení e-shopu. Zde je nutné v poli Číslo e-shopu z K2 zadat RID internetového obchodu z IS K2 pro jeho jednoznačné určení. Dále je zde pole pro určení URL adresy pro přístup k obrázkům.

pim_1271

Obr.: Nastavení e-shopu

Po vyplnění všech údajů pak pokračujeme dále tlačítkem Další. Zobrazí se dialog, který uživatele informuje o připravenosti instalace. Pomocí tlačítka Nainstalovat pak spustíme vlastní instalaci produktu.

pim_1272

Obr.: Připravena instalace K2 E-shop

Po úspěšné instalaci se zobrazí poslední dialog s informací o výsledku.

pim_1273

Obr.: Dokončení instalace

Book Contents

Book Index

Obrázky pro Eshop

K internetovému obchodu neodmyslitelně patří obrázky. Složka, ze které internetový obchod bude načítat obrázky, musí být vytvořena na stejném místě jako samotný IO. Na této složce je nutné nastavit v části "Procházení adresáře" Povolit jeho procházení.

pim_1318

Obr.: Nastavení procházení složky obrázků pro Eshop

Book Contents

Book Index

Bezpečné nastavení IIS pro K2 Eshop

Abychom zajistili co nejbezpečnější provoz K2 Eshopu, připravili jsme webovou stránku, která po zadání URL adresy instalovaného prostředí IIS nebo přímo Eshopu ověří, zda je prostředí nastaveno dle naší doporučené konfigurace.

Webová stránka je dostupná na http://demo.k2.cz/iissecuritychecker/. Po otevření se zobrazí webová stránka, viz obrázek „Test nastavení pro K2 Eshop“. Do vstupního pole vložíme adresu serveru, který chceme prověřit na bezpečné nastavení. Například můžeme prověřit nastavení demo instalace eshopu K2 – https://demo.k2.cz/eshop/.

Na obrázku je vidět test počítače, na kterém běží IIS a nemá nastaveno ani jedno naše doporučení.

pim_1315

Obr.: Test nastavení pro K2 Eshop – chybné nastavení

Na obrázku je vidět test https://demo.k2.cz , které máme správně nastaveno dle našeho doporučení bezpečné konfigurace.

pim_1316

Obr.: Test nastavení pro K2 Eshop 2 – správné nastavení

Test provádí kontrolu šesti bodů nastavení, které považujeme za vhodné, aby takto byly nastaveny. Zvyšují bezpečný provoz eshopu na IIS. Jednotlivými body, včetně návodu na nastavení se zabývá následující text tohoto dokumentu.

Book Contents

Book Index

Nastavení IIS

Pro každý testovaný bod je zde popsán jeho význam včetně popisu proč je vhodné mít nastaveno a čím je aplikace ohrožena v případě, když není. Text je zároveň i návodem jak každý z bodů správně nastavit.

Poznámka:

Nastavení IIS serveru se předává z vyšší úrovně na nižší. Můžete si tedy nastavit úvodní stránku IIS a všechny ostatní, které pod tuto stránku spadají, toto nastavení přeberou a budou automaticky používat.

Například máme na webu https://demo.k2.cz definovánu konfiguraci, pak pokud neurčíme jinak, všechny weby pod tímto, například https://demo.k2.cz/eshop budou mít toto nastavení také. Pokud provozujete více eshopů, je vhodné nastavení provést na vyšší úrovni, aby jej použily všechny instalované eshopy na IIS.

Téměř všechna nastavení, která zde budeme popisovat, se týkají nastavení hlaviček HTTP odpovědí. Do jejich nastavení se přepneme výběrem webu ve stromu na levé straně nastavení, viz obrázek. Pro vybraný web pak vybíráme ikonu v pravé části formuláře – „Hlavičky HTTP odpovědí“, viz obrázek.

pim_1319

Obr.: Nastavení hlavičky HTTP odpovědí

Po otevření nastavení se zobrazí formulář, který je vidět na dalším obrázku.

pim_1320

Obr.: Hlavičky HTTP odpovědi

Do této sekce pak budeme vkládat jednotlivá nastavení. To provedeme stisknutím pravého tlačítky myši a výběrem „Přidat“ z kontextové nabídka otevřeme formulář pro založení nového záznamu, viz obrázek.

pim_1321

Obr.: Přidání nového záznamu

Book Contents

Book Index

Nastavení jednotlivých částí IIS

Book Contents

Book Index

X-Frame-Options Header Not Set

Popis zranitelnosti

V hlavičce HTTP požadavku chybí parametr "X-Frame-Options" s patřičným nastavením, který zabrání útokům typu "ClickJacking".

Stránka využívající clickjacking má na pozadí neškodný obsah – např. vtipné obrázky a vedle nich odkaz, který o sobě tvrdí, že vede na další stránku obrázků. Dále je však do stránky vložen rám se zcela jinou stránkou a ten je zobrazen přes obsah na pozadí, avšak se zapnutou průhledností, takže o něm uživatel neví. Když se následně uživatel pokusí kliknout na odkaz, který má vést na další stránku, ve skutečnosti kliká na neviditelnou stránku navrchu. Tím může na cílové stránce provést prakticky libovolnou akci, aniž by o tom věděl a souhlasil [zdroj: Wiki].

Tedy EShop je možné vložit do rámu na libovolné stránce a zneužít.

Nastavení pro IIS:

pim_1322

Obr.: Nastavení pro IIS

Změna nastavení vyžaduje restart IIS.

Book Contents

Book Index

X-Content-Type-Options Header Missing

Popis zranitelnosti

Chybí volba „nosniff“ v parametru „X-Content-Type-Options“ požadavku. Tato zranitelnost umožňuje starším verzím IE a Chrome provést „MIME-sniffing“, což umožní interpretovat a zobrazit odesílaná data jako typ obsahu, který je jiný než deklarovaný.

Opatření k nápravě

Nastavit Internetovou informační službu tak, aby doplňovala do parametru „X-Content-Type-Options“ HTTP hlavičky hodnotu „nosniff“. Nastavení je následující.

Nastavení pro IIS:

pim_1323

Obr.: Nastavení pro IIS

Změna nastavení vyžaduje restart IIS.

Book Contents

Book Index

Set-Cookie – HTTPOnly a SecureFlag

Book Contents

Book Index

HTTPONLY

Popis zranitelnosti HTTPOnly

Cookie je nastaveno bez návěští „HttpOnly“, což znamená, že mohou být přístupné pomocí JavaScriptů. Může tedy docházet k neoprávněným přístupům k informacím.

Opatření k nápravě

Nastavit Internetovou informační službu tak, aby doplňovala do HTTP hlavičky "Set-Cookie" potřebný příznak „HttpOnly“. Konfigurace pro Internetovou informační službu je následující.

Nastavení pro IIS:

pim_1324

Obr.: Nastavení IIS

Změna nastavení vyžaduje restart IIS.

Book Contents

Book Index

SECUREFLAG

Popis zranitelnosti SecureFlag

Cookies nemají nastaveny bezpečnostní příznak "Secure", což znamená, že mohou být přístupné přes nešifrované spojení.

Opatření k nápravě

Nastavit Internetovou informační službu tak, aby doplňovala do HTTP hlavičky

"Set-Cookie" potřebný příznak „Secure“.

V případě, že je přistupováno k aplikaci pomocí protokolu HTTPS, pak bude fungovat vše v pořádku. K problémům může dojít v případě, že vyprší certifikát a cookie tak nepůjde přečíst ani z HTTPS požadavku. V případě použití HTTP bude hodnota cookie prázdná a EShop tak nebude v kombinaci s tímto nastavením fungovat. Obecně platí, že webové aplikace by měli běžet na protokolu HTTPS což je i doporučení K2 atmitec. V případě ladění a testování na protokolu HTTP je potřeba vzít v úvahu, že „Secure“ nemůže být nastaveno v Set-Cookie.

Nastavení pro IIS:

pim_1325

Obr.: Nastavení IIS

Změna nastavení vyžaduje restart IIS.

Zmíněná nastavení můžeme zkombinovat.

Výslednou hodnotou nastavení je:

Book Contents

Book Index

XSS Protection

Popis zranitelnosti

Není nastavena XSS – „Cross-site scripting“ ochrana webového prohlížeče, nebo je zakázána špatnou konfigurací funkce „X-XSS-Protection“ v HTTP odpovědní hlavičce na webovém serveru.

Opatření k nápravě

Nastavit Internetovou informační službu tak, aby doplňovala do HTTP hlavičky odpovědi parametr "X-XSS-Protection" Nastavení internetové informační služby je následující.

Nastavení pro IIS:

pim_1326

Obr.: Nastavení IIS

Změna nastavení vyžaduje restart IIS.

Book Contents

Book Index

Použití či přesměrování HTTPS

Provádí kontrolu, zda nedochází k přesměrování na HTTP z HTTPS.

Book Contents

Book Index

Stav 200 OK

Kontrola, zda ověřovaná stránka vrátila HTTP 200 OK, tedy stránka existuje a je vrácen její obsah.

Book Contents

Book Index

Souhrn bezpečného nastavení v IIS

Správné nastavení všech zmiňovaných bodů by měl potvrdit zmíněný test. Ve formuláři na obrázku je vidět souhrn všech bodů, které se týkají nastavení hlavičky HTTP odpovědí.

pim_1317

Obr.: Nastavení parametrů