Průvodci

Jak přidat do aplikace dvoufaktorové ověření

Pro přidání dvoufaktorového ověření (2FA) do aplikace nechte uživatele propojit aplikaci pro ověřování naskenováním QR kódu a po hesle od nich vyžádejte šestimístný kód, který aplikace zobrazí. Plnou relaci na serveru vytvořte až ve chvíli, kdy je tento kód správný. Každému uživateli při zapnutí dejte jednorázové záložní kódy a omezte, kolik kódů může někdo uhodnout. Vypnutí 2FA vyžadujte jen s heslem a aktuálním kódem. Pokud používáte hostovaného poskytovatele autentizace, zapněte jeho vestavěné vícefaktorové ověření místo vlastního řešení.

Tento průvodce popisuje volby, přesný postup, prompty pro nástroj s AI a chyby, kvůli kterým 2FA vypadá jako funkční, ale ve skutečnosti nic nedělá. Pokud je koncept nový, začněte s co je dvoufaktorové ověření.

Předem: potřebujete funkční přihlášení

2FA je navrstvená nad existujícím přihlášením. Nejdřív potřebujete jedno z těchto:

  • Vlastní přihlášení, s uživateli a hashovanými hesly uloženými v databázi vaší aplikace.
  • Hostovaného poskytovatele autentizace, který uživatele spravuje za vás.

Pokud ještě žádné nemáte, začněte s jak přidat přihlášení do aplikace. Zbytek tohoto průvodce předpokládá, že krok s heslem už funguje.

Vyberte druhý faktor

MetodaÚsilí uživateleBezpečnostNáklady na provozDobrá výchozí volba?
Aplikace pro ověřování (TOTP)Jednou naskenovat QR kód, při přihlášení přepsat kódDobrá; lze ji phishingem, pokud falešný web kód vyžádáZdarmaAno, pro většinu aplikací
Passkey nebo bezpečnostní klíčKlepnutí nebo otisk prstuNejsilnější; odolává phishinguZdarmaAno, pokud jsou uživatelé ochotní ho používat
Kód e-mailemPři přihlášení zkontrolovat schránkuJen tak silný jako e-mailový účetNáklady na odesílání e-mailůJen jako záloha
Kód SMSČekat na textovou zprávuNejslabší; výměna SIM a phishingPoplatky za zprávyJen tehdy, když uživatelé nemohou použít aplikaci

TOTP znamená time-based one-time password, tedy standard (RFC 6238), který používají aplikace pro ověřování. Váš server a telefon uživatele sdílejí tajný klíč; každý z nich z tohoto klíče a aktuálního času vygeneruje stejný krátký kód, který se obvykle mění každých 30 sekund. Není potřeba síťové připojení ani poskytovatel SMS.

Passkeys nahrazují nebo doplňují hesla kryptografickým klíčem uloženým na zařízení uživatele. Jsou silnější, ale samostatně se hůř implementují, takže mnoho aplikací začíná s TOTP a passkeys přidává později, nebo je získá od poskytovatele autentizace.

Postavit to sami, nebo zapnout?

PřístupVýhodyNevýhody
Vícefaktorové ověření hostovaného poskytovateleMéně kódu; bezpečnostní detaily spravuje poskytovatelMěsíční náklady při větším počtu uživatelů; závislost na možnostech poskytovatele
Vlastní TOTP s knihovnouPlná kontrola; žádný poplatek za uživateleHraniční případy řešíte sami: zámky, obnova, ukládání tajných klíčů

Aktuální dokumentace vašeho poskytovatele ukáže, které faktory podporuje a na kterých tarifech. V obou případech nikdy nepište výpočet kódů sami; použijte široce používanou knihovnu.

Nejdřív rozhodněte o pravidlech

Před promptem si odpovězte na tyto otázky, protože mění návrh:

  1. Kdo musí 2FA používat? Volitelné pro všechny, povinné pro administrátory a zaměstnance, nebo povinné pro všechny. Vyžadovat ho u každého s administrátorskými pravomocemi je běžné. Viz řízení přístupu podle rolí.
  2. Jak často musí uživatelé znovu zadávat kód? Při každém přihlášení, nebo jednou za 30 dní na zařízení („zapamatovat toto zařízení“).
  3. Které akce vyžadují čerstvé ověření? Změna e-mailu, údajů o výplatě nebo vypnutí 2FA jsou dobří kandidáti. Říká se tomu step-up autentizace.
  4. Jaký je postup při ztrátě telefonu? Záložní kódy plus ruční záložní postup, který jste ochotní provádět.

Krok za krokem: TOTP 2FA u vlastního přihlášení

1. Ukládejte správná pole

Každý uživatel potřebuje: informaci, zda je 2FA zapnutá, tajný klíč TOTP (šifrovaný v úložišti, ne jako prostý text), čas zapnutí a seznam záložních kódů uložených hashovaně, stejně jako hesla. Přidejte také místo pro počítání neúspěšných pokusů.

2. Registrace

  1. Uživatel otevře Nastavení a klikne na Zapnout dvoufaktorové ověření.
  2. Server vygeneruje nový tajný klíč a vrátí ho jako QR kód, plus textovou verzi pro lidi, kteří nemohou skenovat.
  3. Uživatel ho naskenuje v aplikaci pro ověřování a zadá aktuální kód.
  4. Server kód zkontroluje. Teprve když je správný, uloží tajný klíč a označí 2FA jako zapnutou.
  5. Aplikace ukáže 8 až 10 záložních kódů jen jednou a požádá uživatele, aby je uložil.

Krok 4 je důležitý: zapnout 2FA dřív, než je kód potvrzen, zamkne každého, komu se naskenování nepovedlo.

3. Přihlášení s druhým krokem

  1. Uživatel odešle e-mail a heslo. Server je ověří.
  2. Pokud je 2FA zapnutá, server nevytvoří plnou relaci. Místo toho vytvoří krátkodobý stav „čeká na druhý faktor“.
  3. Aplikace zobrazí obrazovku pro kód. Server kód zkontroluje a povolí malou časovou toleranci kvůli posunu hodin.
  4. Teprve teď server vydá skutečnou relaci.

Každá chráněná stránka a API koncový bod musí stav „čeká na druhý faktor“ odmítnout. Obrazovka 2FA, která jen v prohlížeči skrývá stránky, se dá obejít přímým voláním API.

4. Limity a upozornění

Šestimístný kód má milion kombinací, což lze bez limitů uhodnout. Omezte počet pokusů, po opakovaných selháních zamkněte druhý krok na určitou dobu a uživateli pošlete e-mail. Viz omezení rychlosti požadavků a jak posílat e-maily z aplikace.

5. Obnova a vypnutí

  • Záložní kód funguje jednou a pak se smaže.
  • Vypnutí 2FA vyžaduje heslo a aktuální kód nebo záložní kód.
  • Vygenerování nových záložních kódů zneplatní starou sadu.
  • Při každém zapnutí nebo vypnutí 2FA pošlete uživateli e-mail.

Prompty pro váš nástroj s AI

Začněte základním postupem:

Přidej volitelné dvoufaktorové ověření pomocí aplikací pro ověřování (TOTP) k našemu stávajícímu přihlášení e-mailem a heslem. Použij známou TOTP knihovnu, algoritmus nepiš sám. V Nastavení ukaž QR kód a textový tajný klíč a 2FA zapni až poté, co uživatel zadá platný kód. Tajný klíč ulož zašifrovaný a nikdy ho znovu neukazuj po nastavení. Ukaž 10 jednorázových záložních kódů jen jednou a ulož je hashované.

Pak vynucení, kde generovaný kód nejčastěji selhává:

Vynucuj 2FA na serveru. Po správném heslu dostanou uživatelé se zapnutou 2FA krátkodobý stav „čeká na druhý faktor“, ne plnou relaci. Každá chráněná stránka a API trasa musí tento stav odmítnout. Omez pokusy o kód na 5, pak zamkni druhý krok na 15 minut a pošli uživateli e-mail.

Pak pravidla:

Vyžaduj 2FA pro administrátorské účty: admin bez 2FA je poslán na nastavení a do administrace se nedostane, dokud ho nedokončí. Pro vypnutí 2FA nebo změnu e-mailu účtu vyžaduj heslo a aktuální kód. Při zapnutí nebo vypnutí 2FA pošli uživateli e-mail.

Nakonec požádejte agenta, aby vysvětlil, co postavil:

Vypiš každou trasu, která kontroluje dokončení druhého faktoru, kde jsou uloženy tajný klíč TOTP a záložní kódy a jak jsou chráněné.

Časté chyby

  • Relace vytvořená po hesle. Nejzávažnější chyba. Pokud plná relace existuje dřív, než se kód ověří, je 2FA jen dekorace. Otestujte to tak, že po kroku s heslem zavoláte chráněné API.
  • Žádný limit pokusů. Neomezené pokusy znamenají, že kód lze brute-force uhodnout.
  • Tajné klíče nebo záložní kódy v prostém textu. Únik databáze pak prozradí druhý faktor každého uživatele.
  • Zapnutí před ověřením. Uživatelé, kteří se špatně naskenovali, jsou při příštím přihlášení zamčeni.
  • Žádná cesta k obnově. Každý ztracený telefon se stane tiketem podpory nebo ztraceným zákazníkem.
  • Snadné vypnutí. Pokud ukradená relace může 2FA vypnout bez kódu, ochrana zmizela.
  • Kódy v logách. Ujistěte se, že se kódy a tajné klíče nikdy neobjeví v serverových logách ani v chybových hlášeních.
  • Kontrola jen na přihlašovací stránce. Obnova hesla, přihlášení přes odkaz v e-mailu i přihlášení přes sociální síť musí 2FA respektovat, jinak se stanou únikovou cestou.

Kontrolní seznam testů

  • Registrace se dokončí jen po platném kódu
  • Přihlášení správným heslem bez kódu nedá přístup k žádné chráněné stránce ani API
  • Špatný kód je odmítnut; opakované špatné kódy spustí zámek a e-mail
  • Kód z několika minut zpět je odmítnut
  • Každý záložní kód funguje přesně jednou
  • Vypnutí 2FA vyžaduje heslo a aktuální kód
  • Obnova hesla nezaobchází 2FA
  • Administrátoři bez 2FA se nedostanou na administrační stránky (pokud je vyžadována)
  • Tajné klíče a záložní kódy jsou v databázi šifrované nebo hashované
  • V logách nejsou žádné kódy ani tajné klíče

Před spuštěním proveďte také celý kontrolní seznam zabezpečení pro aplikace vytvořené s AI.

Přidání 2FA v Mythexu

Mythex neobsahuje vestavěný systém přihlášení pro koncové uživatele vaší aplikace, takže 2FA je součástí toho přístupu k autentizaci, který zvolíte: vlastní přihlášení e-mailem a heslem s databází projektu, nebo hostovaný poskytovatel s podporou vícefaktorového ověření. V chatu popíšete, co chcete, prompty podobnými těm výše, a klíče poskytovatele vložíte do tajných údajů projektu (přes /secrets, v nastavení projektu nebo přes kartu s tajnými údaji, kterou agent zobrazí), nikoli do zprávy. Recept dokumentace Přidání přihlášení do aplikace obsahuje výchozí prompt a Bezpečnost aplikací, které stavíte popisuje návyky kolem klíčů a oprávnění. Až agent dokončí práci, otestujte každou položku kontrolního seznamu v Preview, než publikujete.

Otázky

Jaký je nejjednodušší způsob, jak přidat dvoufaktorové ověření do aplikace?

Pokud používáte hostovaného poskytovatele autentizace, zapněte jeho vestavěnou možnost vícefaktorového ověření; obvykle je to nejmenší množství kódu. Pokud provozujete vlastní přihlášení, přidejte kódy z aplikace pro ověřování (TOTP) pomocí známé knihovny, záložní kódy a kontrolu na serveru.

Mám pro 2FA používat SMS kódy?

SMS je lepší než žádný druhý faktor, ale je nejslabší z běžných možností, protože SMS lze přesměrovat výměnou SIM karty a kódy lze vylákat phishingem. Jako výchozí nabídněte aplikaci pro ověřování a passkeys, pokud jsou vaši uživatelé připraveni je používat.

Potřebuji databázi, abych přidal 2FA?

Pokud provozujete vlastní přihlášení, ano. Tajný klíč 2FA každého uživatele, informace, zda je 2FA zapnutá, a jejich hashované záložní kódy musí být uložené tam, kde je váš server může ověřit. Hostovaný poskytovatel autentizace to ukládá za vás.

Co se stane, když uživatel ztratí telefon?

Přihlásí se jedním z jednorázových záložních kódů, které jste mu ukázali při zapnutí 2FA, a pak 2FA nastaví znovu na novém zařízení. Bez záložních kódů potřebujete ruční ověření totožnosti, takže postup si určete ještě před spuštěním.

Mythex · Pricing · Vytvořte cokoli s AI · Šablony webů a aplikací · Mythex v porovnání · Slovník tvorby aplikací s AI · Bezplatné nástroje pro tvorbu aplikací s AI · English

English አማርኛ العربية Български বাংলা Bosanski Català Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)