shoc-backend/Api.SeaHavenIndustries/DTOs
Alexandre Brandizzi c841e130be fix(auth): harden password reset codes against guessing and email enumeration
Forgot Password answers every address the same way and emails a code only
to an active account. Codes are stored as salted SHA-256 hashes, expire 15
minutes after issue, are replaced by a newer request, and are checked only
against the email they were issued to. Five failed checks delete the code;
attempts are reserved with one conditional UPDATE so concurrent guesses
cannot exceed the budget. VerificationCode requires the email, and email and
code are accepted in the JSON body so they stay out of URLs.

The three anonymous endpoints are rate limited to 10 requests per 15
minutes per client IP. Forwarded headers are trusted only through loopback
and private hops, since the API sits behind the EB load balancer and nginx.
The migration adds hash, salt, expiry and attempt columns and deletes the
old plaintext rows.
2026-09-25 12:21:29 -03:00
..
Account_DTO.cs added new controllers 2026-01-21 15:41:19 -06:00
Asset_DTO.cs fix 2026-03-30 06:49:40 -05:00
Category_DTO.cs Initial commit 2024-09-28 14:58:36 -04:00
Comments_DTO.cs Make Comments_DTO fields nullable for JSON endpoint compatibility 2026-04-16 18:24:04 -04:00
Contact_DTO.cs backend architectural template 2026-05-06 10:49:33 -05:00
Dispatch_DTO.cs feat(vendors): complete operations roadmap backend 2026-07-23 19:18:06 -03:00
DispatchSignoff_DTO.cs Add dispatch sign-offs with signature capture 2026-04-17 15:51:20 -04:00
DropdownOption_DTO.cs refactor: enforce backend boundaries and optimize dispatch (#30) 2026-07-24 17:35:34 -03:00
EditAsset_DTO.cs fix 2026-03-30 06:49:40 -05:00
EditContact_DTO.cs backend architectural template 2026-05-06 10:49:33 -05:00
EditEvent_DTO.cs Add calendar/events backend API (#8) 2026-06-22 18:46:46 -04:00
EditLocation_DTO.cs feat(locations): manage ordered site contacts 2026-09-15 19:03:54 -03:00
EditQuote_DTO.cs Initial commit 2024-09-28 14:58:36 -04:00
Employee_DTO.cs added new controllers 2026-01-21 15:41:19 -06:00
Event_DTO.cs Add calendar/events backend API (#8) 2026-06-22 18:46:46 -04:00
FollowUp_DTO.cs added new controllers 2026-01-21 15:41:19 -06:00
ForgetPassword_Dto.cs fix(auth): harden password reset codes against guessing and email enumeration 2026-09-25 12:21:29 -03:00
LineItem_DTO.cs Initial commit 2024-09-28 14:58:36 -04:00
Location_DTO.cs feat(locations): manage ordered site contacts 2026-09-15 19:03:54 -03:00
LocationAccountIdMapping.cs fix(locations): reject unparseable accountId and forward cancellation 2026-08-26 14:18:38 -03:00
Pagination_DTO.cs Initial commit 2024-09-28 14:58:36 -04:00
PMSchedule_DTO.cs added new controllers 2026-01-21 15:41:19 -06:00
Quote_DTO.cs Initial commit 2024-09-28 14:58:36 -04:00
Reporting_DTO.cs Initial commit 2024-09-28 14:58:36 -04:00
Roles_DTO.cs Initial commit 2024-09-28 14:58:36 -04:00
TaskListTemplate_DTO.cs Add Task List Templates with CRUD controller 2026-04-17 14:57:18 -04:00
UpdateDispatch_DTO.cs feat(vendors): complete operations roadmap backend 2026-07-23 19:18:06 -03:00
User_DTO.cs !fix(work-orders): fail-closed media account scope with org_scope claim [SH-221] 2026-08-06 10:26:04 -03:00
Vendor_DTO.cs feat(vendors): confirm-to-deactivate with open work orders (SH-254) 2026-08-19 13:31:16 -03:00
Workorder_DTO.cs fix(work-orders): apply account scope across create and reads [SH-221] 2026-08-11 10:45:37 -03:00