Přeskočit na obsah

Reset hesla nefunguje — špatný klient a fake SMTP

import { Aside } from ‘@astrojs/starlight/components’;

Reset hesla nefunguje — uživatelé si nemůžou obnovit heslo, e-mail nedorazí nebo odkaz končí na 404.

Tři bugy současně: (1) kód volal neexistující serverový klient v daném kontextu, (2) redirect mířil na 404 URL, (3) flow spoléhal na vestavěné SMTP providera, které bylo nakonfigurované jako fake (nikdy reálně neodesílalo).

Generovat recovery odkaz administrátorským API → hashed token → vlastní callback URL → odeslat přes vlastní ověřené SMTP.

const { data } = await admin.auth.admin.generateLink({ type: 'recovery', email });
await sendMail({ to: email, subject: 'Obnova hesla', link: data.properties.action_link });

Jak se tomu vyvarovat v jiných systémech

Sekce “Jak se tomu vyvarovat v jiných systémech”
  • Detection: existuje E2E test, který reálně přijme reset e-mail a dokončí změnu hesla?
  • Anti-pattern: spoléhání na default e-mail providera bez ověření doručení; callback URL bez existující stránky.
  • Lepší přístup: vlastní ověřené SMTP + E2E test celého flow přes reálnou schránku.

Sister bugs / související

Sekce “Sister bugs / související”
Přidal aiarchitekt.cz · 25. 5. 2026 17:41
Provozuje aiarchitekt.cz