Przejdź do głównej zawartości

customer_accounts

Stan per użytkownik dla Klientów: logowanie, zarządzanie hasłem, opcjonalne 2FA, rola w ramach ich Organization. Wspierane przez współdzieloną usługę sesji auth; ten moduł jest właścicielem powierzchni tożsamości po stronie klienta.

Publiczne API​

Verb + PathCel
POST /api/v1/auth/loginE-mail + hasło (+ krok TOTP, gdy włączone 2FA)
POST /api/v1/auth/logoutZniszczenie sesji
POST /api/v1/me/passwordZmiana hasła (odrzuca błędne currentPassword)
POST /api/v1/auth/password-reset/requestRozpoczęcie przepływu resetu hasła
POST /api/v1/auth/password-reset/confirmRealizacja tokenu resetu hasła

Encje​

CustomerAccount (email, passwordHash, role), PasswordResetToken. Rola to enum organization_admin | regular_user.

Punkty rozszerzenia​

  • Polityka haseł — password-hasher.ts opakowuje argon2id; parametry kosztu dostosowujesz tam.
  • Kody zapasowe i drugie czynniki — nie należą do tego modułu. 2FA klienta i admina obsługuje moduł mfa, nad mfa_enrolments, wystawione pod /api/v1/account/mfa/*; kody odzyskiwania to jednorazowe wiersze tam. Zastąpione rusztowanie, na które ten punkt wcześniej wskazywał (totp-enrolment-service.ts), usunięto 2026-08-25 — nigdy nie umożliwiało ukończenia pojedynczego enrolmentu.
  • Ograniczanie logowania — opiera się na @fastify/rate-limit Fastify na poziomie serwera; blokada per konto dodałaby się tutaj.