8. července 2026

Přidejte 2FA ke starší webové aplikaci – bez zásahu do jejího kódu

Předřaďte starší webové aplikaci reverzní proxy se SAML a podmiňte každé přihlášení potvrzením na telefonu, bez zásahu do kódu aplikace.

Každá firma nějakou má: interní webovou aplikaci, na které stojí půlka byznysu, jejíž dodavatel dávno zmizel nebo do jejíhož zdrojového kódu se nikdo neodváží sáhnout, a kterou teď auditor chce vidět za vícefaktorovým ověřováním.

Nemusíte ji upravovat. Nemusíte ani vědět, v jakém jazyce je napsaná. Trik spočívá v tom, že s aplikací zacházíte jako s černou skříňkou a ověřování postavíte před ni: reverzní proxy, která mluví protokolem SAML a opírá se o SSO službu Notakey, takže každý uživatel musí své přihlášení potvrdit klepnutím na telefonu dřív, než k aplikaci dorazí jediný požadavek.

Jak to funguje

Browser ──▶ reverse proxy (Apache + mod_auth_mellon) ──▶ legacy app

                 └──SAML──▶ Notakey SSO (IdP) ──▶ push ──▶ user's phone
  1. Prohlížeč požádá o chráněnou URL. Proxy nevidí žádnou SAML relaci a přesměruje uživatele na poskytovatele identity, SSO službu, která je součástí zařízení Notakey.
  2. Uživatel zadá své uživatelské jméno; autentizační server odešle na jeho telefon push notifikaci s žádostí o potvrzení.
  3. Po schválení se prohlížeč vrátí s podepsanou SAML assertion. Proxy ověří podpis a teprve potom začne požadavky propouštět k aplikaci.

Samotná aplikace se přitom nijak nemění. Pokud má vlastní přihlašovací obrazovku, zůstává, jak je. Tohle přidává bránu před ni, nenahrazuje to, co je za ní.

Jediné pravidlo, na kterém stojí bezpečnost

Proxy ochrání jen to, co se nedá obejít. Starší aplikace musí být dosažitelná výhradně přes proxy. Pravidlo na interním firewallu, nebo vyhrazená dockerová síť, pokud aplikace běží v kontejneru, je nedílnou součástí instalace, ne volitelným doplňkem. Pokud se uživatelé stále dostanou na IP adresu aplikace napřímo, je 2FA jen na ozdobu.

Co budete potřebovat

  • Notakey Authentication Appliance se spuštěnou přibalenou SSO službou a uživatele zaregistrované v aplikaci Notakey Authenticator
  • Docker na libovolném hostiteli, který se k aplikaci dostane po síti
  • DNS a TLS certifikáty pro nový vstupní hostname

Nastavení v pěti krocích

Kompletní návod krok za krokem, s konfiguračními soubory Apache a každým příkazem připraveným ke zkopírování, najdete v našem repozitáři blackbox-webapp-2fa-howto. V hrubých obrysech:

  1. Vygenerujte SAML SP certifikáty a metadata skriptem mellon_create_metadata.sh (jediný příkaz v Dockeru).
  2. Stáhněte metadata IdP ze své SSO služby.
  3. Upravte ukázkovou konfiguraci Apache: váš hostname, URL vašeho backendu, cesty k certifikátům.
  4. Spusťte kontejner s proxy a zkontrolujte jeho logy.
  5. Zaregistrujte proxy jako service provider na federační stránce SSO; zařízení převede SP metadata na hotový příkaz ntk cfg set.

Otevřete novou adresu aplikace, potvrďte push – a díváte se na svou nedotčenou starší aplikaci, tentokrát za silným ověřováním.

Repozitář popisuje i volitelnou variantu: proxy běžící přímo na uzlech zařízení, s využitím jejich stávajících TLS certifikátů nebo ACME konfigurace, takže samostatného hostitele vůbec nepotřebujete.

Kam tento postup zapadá

Tohle je vzor pro všechno, co mluví HTTP. Zbývající dveře staršího prostředí pokryje totéž zařízení jinými cestami:

← Všechny články

První přihlášení bez hesla už tento týden

30minutový rozhovor s inženýrem, žádná prodejní prezentace. Společně naplánujeme, jak ve vašem prostředí s VPN, SSO nebo Windows spustit funkční pilotní projekt.