Bezpečnost
Bezpečnost a práce s uživateli patří mezi základní systémové principy platformy NET Genium. NET Genium je navrženo pro provoz podnikových aplikací, kde je nutné jednoznačně určit:
- kdo s aplikací pracuje,
- k jakým datům a funkcím má přístup,
- jaké změny provedl,
- a kdy k nim došlo.
Platforma současně reflektuje aktuální bezpečnostní standardy a doporučení, zejména metodiky organizace OWASP Foundation.
Autentizace a zabezpečení přístupu
NET Genium podporuje moderní přístupy k autentizaci uživatelů s důrazem na bezpečnost a integraci s podnikovým prostředím.
- Podporováno je přihlášení pomocí Microsoft účtů (Azure AD / Microsoft Entra ID).
- Lze využívat MFA (Multi-Factor Authentication), které výrazně zvyšuje bezpečnost přístupu do aplikace.
- Autentizace může být centralizována a spravována na úrovni organizace.
Použití MFA je doporučeným standardem zejména u aplikací pracujících s citlivými nebo interními daty.
Přihlášení do portálu
Pokud uživatel zadá nesprávné heslo při přihlášení, systém počítá neplatné pokusy o přihlášení pod daným přihlašovacím jménem za poslední minutu, hodinu a den. V závislosti na počtu těchto pokusů dojde k následujícím opatřením:
- Po 3 neplatných pokusech během jedné minuty bude přihlašování daného uživatele zablokováno na 1 minutu.
- Po 9 neplatných pokusech během jedné hodiny bude přihlašování daného uživatele zablokováno na 1 hodinu.
- Po 18 neplatných pokusech během 24 hodin bude přihlašování daného uživatele zablokováno na 24 hodin.
- Úspěšné přihlášení počítadlo nenuluje. Za neplatný pokus se počítá i chybný kód druhého faktoru a chybné původní heslo ve formuláři pro změnu prošlého hesla. Z plochy serveru (IP adresa „127.0.0.1“) se blokování neuplatní.
- Období se počítají klouzavě: blokace trvá, dokud nejstarší z napočítaných pokusů z daného období nevypadne, takže uvedené doby jsou nejdelší možné. Pokusy o přihlášení během blokace se nezapočítávají; chybný kód druhého faktoru se započítá vždy. Neplatné pokusy z plochy serveru a z IP adres vyjmutých z blokování se rovněž započítávají, a protože se blokování vztahuje k přihlašovacímu jménu, prodlužují blokaci přihlašování z ostatních adres.
- Blokování se vztahuje k přihlašovacímu jménu, ne k IP adrese. Výjimku pro IP adresy administrátorů zapíná konfigurační soubor „DenyInvalidLogins.txt“ popsaný v příručce Nastavení NET Genia.
Odblokování účtu může provést správce systému tím, že v tabulce s neplatnými pokusy o přihlášení odstraní záznamy o neúspěšných přihlášeních daného uživatele (Nastavení/Nastavení/Neplatná přihlášení).
V případě zapomenutého hesla může uživatel resetovat své heslo kliknutím na odkaz „Zapomenuté heslo“, pokud tuto možnost povolil administrátor v nastavení (viz možnost „Povolit zasílání zapomenutých hesel na přihlašovací stránce“ v příručce Nastavení NET Genia). Na e-mailovou adresu uživatele dorazí jednorázový odkaz s platností 1 hodinu, po jehož otevření si uživatel nastaví nové heslo; není-li vyplněná adresa portálu, dorazí místo odkazu dočasné heslo se stejnou platností, kterým se uživatel přihlásí a heslo si vzápětí změní. O dokončené změně dostane uživatel oznámení dalším e-mailem.
Pokud není možnost resetovat heslo prostřednictvím odkazu „Zapomenuté heslo“, uživatel se pro změnu hesla obrátí na správce, který uživateli nastaví heslo nové (Nastavení/Nastavení/Uživatelé).
Uživatelé
NET Genium podporuje několik typů uživatelů, které se liší způsobem přístupu, rozsahem oprávnění a odpovědností za prováděné změny. Z hlediska platformy existují tři základní typy uživatelů:
- Běžný uživatel – pracuje s daty a funkcemi aplikace na základě svých oprávnění.
- Administrátor – má přístup ke všem datům a nástrojům platformy a vytváří nebo modifikuje aplikace pomocí integrovaného návrháře.
- Anonymní uživatel – vyplňuje údaje do webových formulářů, které se pomocí iframe stávají součástí webových prezentací.
Běžní uživatelé a administrátoři pracují v prostředí NET Genia vždy pod vlastním jednoznačným uživatelským účtem. Každá jejich činnost je dohledatelná a svázaná s konkrétní identitou.
Anonymní uživatelé do aplikace nevstupují jako přihlášení uživatelé. Jejich použití je omezeno na specifické scénáře, typicky sběr dat prostřednictvím veřejných formulářů. V těchto případech se neuplatňuje uživatelská identita ani licenční omezení přihlášených uživatelů.
Licenční model a uživatelé
Licenční model NET Genia je založen na maximálním počtu současně přihlášených uživatelů do aplikace.
- Každé přihlášení běžného uživatele nebo administrátora spotřebovává jednu uživatelskou licenci; člen skupiny „External Users“ spotřebovává externí licenci. Administrátorovi se přihlášení v prohlížeči neodepře ani při vyčerpaných licencích.
- Pod jedním uživatelským jménem se může uživatel do aplikace přihlásit vícekrát, přesto je čerpána pouze jedna licence.
- Licenci drží uživatel, který v poslední hodině otevřel nebo odeslal editační formulář, nahlížecí stránku nebo hlavní stránku. Po hodině bez takové akce se do počtu přihlášených nezapočítává, takže licenci uživatele, který zavřel prohlížeč bez odhlášení, může nejpozději po hodině využít někdo jiný.
- Celkový počet licencí může být kdykoliv rozšířen podle potřeb organizace.
- Anonymní uživatelé uživatelskou licenci nepotřebují.
Tento model umožňuje flexibilní provoz aplikací při zachování přehledné kontroly nad jejich využíváním.
Práva, uživatelské skupiny a skupiny oprávnění
Přístup uživatelů k aplikacím, datům a funkcím je v NET Geniu řízen pomocí práv. Každá stavební jednotka platformy (aplikace, editační formulář, nahlížecí stránka, ovládací prvek a další objekty) umožňuje samostatné nastavení práv. Do seznamu práv se vybírají buď:
- uživatelské skupiny,
- nebo konkrétní uživatelské účty.
Protože jeden uživatel může být členem více uživatelských skupin, může být u nově zakládaných uživatelů ruční výběr těchto skupin nepřehledný nebo náchylný k chybám. Z tohoto důvodu NET Genium podporuje skupiny oprávnění. Skupina oprávnění představuje předdefinovanou sadu uživatelských skupin, která odpovídá typickému způsobu práce konkrétního uživatele v aplikaci. Ve vlastnostech uživatelského účtu je možné vybrat konkrétní skupinu oprávnění. V takovém případě dojde k přepsání uživatelských skupin uživatele právě tou sadou skupin, která je definována vybranou skupinou oprávnění. Změna skupiny oprávnění podléhá stejným kontrolám jako ruční úprava seznamu uživatelských skupin. Seznam uživatelských skupin přiřazených uživateli lze dodatečně ručně upravovat podle konkrétních potřeb; ve formuláři uživatele se zobrazuje administrátorům, správcům uživatelských účtů a uživatelům s oprávněním ke změně členství ve skupinách.
Výchozí instalace NET Genia obsahuje tyto systémové uživatelské skupiny:
- Users – běžní uživatelé
- Administrators – administrátoři
- External Users – externí uživatelé, kteří čerpají externí licence; skupina se nezakládá v NET Genium Online
Používání uživatelských skupin je doporučeným postupem pro dlouhodobý provoz aplikací.
Historie a audit změn
Jednou z klíčových vlastností platformy NET Genium je automatická evidence historie změn. Každá změna dat v aplikaci:
- je přiřazena ke konkrétnímu uživateli,
- obsahuje časovou informaci,
- je dohledatelná zpětně.
Auditní stopa zajišťuje transparentnost práce s daty, podporuje interní kontrolní mechanismy a umožňuje zpětnou analýzu změn. Historie není určena pouze pro řešení chyb, ale je zásadním nástrojem pro odpovědné řízení podnikových aplikací.
Bezpečnostní testování a aktualizace
Bezpečnost platformy NET Genium je průběžně ověřována a zlepšována.
- Při spuštění větších projektů jsou prováděny penetrační testy celého frameworku.
- Identifikované nedostatky jsou řešeny formou centrálních aktualizací, které jsou distribuovány do všech instancí aplikací.
- Pravidelně jsou vydávány bezpečnostní i funkční aktualizace frameworku.
Tento přístup zajišťuje, že všechny instalace platformy dlouhodobě odpovídají aktuálním bezpečnostním požadavkům.
Bezpečnostní standardy
Při návrhu a vývoji platformy jsou dodržovány principy a doporučení organizace OWASP Foundation (Open Worldwide Application Security Project). To zahrnuje zejména:
- ochranu proti běžným typům útoků (např. injection, XSS, CSRF),
- bezpečné zacházení s autentizací a session,
- validaci a sanitizaci vstupů,
- důraz na bezpečný návrh architektury aplikací.
Dodržování těchto zásad je klíčové pro bezpečný provoz podnikových aplikací v prostředí NET Genia.
Odpovědnost administrátora
Administrátor aplikace nese odpovědnost za správné nastavení bezpečnostních principů v konkrétním řešení. To zahrnuje zejména:
- správu uživatelských účtů,
- návrh a údržbu práv,
- kontrolu přístupů k citlivým datům,
- pravidelnou revizi nastavení,
- využívání bezpečnostních mechanismů, jako je například MFA.
Správně navržená bezpečnostní struktura chrání nejen data, ale i samotné uživatele a organizaci jako celek.