From 0debc6b415baa466245901fb52c009d09ef3ba15 Mon Sep 17 00:00:00 2001 From: kamtschatka Date: Sat, 19 Oct 2024 22:24:26 +0200 Subject: feature: Log authentication failures to support fail2ban. Fixes #477 (#569) * How do I set the variable "user" or "system" for AI inference #262 changed from system to user * [Feature Request] Log failed login attempts for fail2ban implementation #477 added logging of failed logins * [Feature Request] Log failed login attempts for fail2ban implementation #477 added more logging for extension related logins * Propagte IP to trpc --------- Co-authored-by: Your Name --- packages/trpc/auth.ts | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'packages/trpc/auth.ts') diff --git a/packages/trpc/auth.ts b/packages/trpc/auth.ts index 39aebd3b..1efbdde6 100644 --- a/packages/trpc/auth.ts +++ b/packages/trpc/auth.ts @@ -4,6 +4,7 @@ import * as bcrypt from "bcryptjs"; import { db } from "@hoarder/db"; import { apiKeys } from "@hoarder/db/schema"; import serverConfig from "@hoarder/shared/config"; +import { authFailureLogger } from "@hoarder/shared/logger"; // API Keys @@ -102,3 +103,13 @@ export async function validatePassword(email: string, password: string) { return user; } + +export function logAuthenticationError( + user: string, + message: string, + ip: string | null, +): void { + authFailureLogger.error( + `Authentication error. User: "${user}", Message: "${message}", IP-Address: "${ip}"`, + ); +} -- cgit v1.2.3-70-g09d2