improvement: trim and substring keys and default to realIp

This commit is contained in:
Scott Wilson
2025-06-04 20:00:53 -07:00
parent 9c149cb4bf
commit 135f425fcf
4 changed files with 5 additions and 4 deletions
@@ -82,7 +82,8 @@ export const registerInviteOrgRouter = async (server: FastifyZodProvider) => {
url: "/signup-resend", url: "/signup-resend",
config: { config: {
rateLimit: smtpRateLimit({ rateLimit: smtpRateLimit({
keyGenerator: (req) => (req.body as { membershipId: string }).membershipId keyGenerator: (req) =>
(req.body as { membershipId?: string })?.membershipId?.trim().substring(0, 100) ?? req.realIp
}) })
}, },
method: "POST", method: "POST",
@@ -81,7 +81,7 @@ export const registerPasswordRouter = async (server: FastifyZodProvider) => {
url: "/email/password-reset", url: "/email/password-reset",
config: { config: {
rateLimit: smtpRateLimit({ rateLimit: smtpRateLimit({
keyGenerator: (req) => (req.body as { email: string }).email keyGenerator: (req) => (req.body as { email?: string })?.email?.trim().substring(0, 100) ?? req.realIp
}) })
}, },
schema: { schema: {
+1 -1
View File
@@ -13,7 +13,7 @@ export const registerUserRouter = async (server: FastifyZodProvider) => {
url: "/me/emails/code", url: "/me/emails/code",
config: { config: {
rateLimit: smtpRateLimit({ rateLimit: smtpRateLimit({
keyGenerator: (req) => (req.body as { username: string }).username keyGenerator: (req) => (req.body as { username?: string })?.username?.trim().substring(0, 100) ?? req.realIp
}) })
}, },
schema: { schema: {
@@ -14,7 +14,7 @@ export const registerSignupRouter = async (server: FastifyZodProvider) => {
method: "POST", method: "POST",
config: { config: {
rateLimit: smtpRateLimit({ rateLimit: smtpRateLimit({
keyGenerator: (req) => (req.body as { email: string }).email keyGenerator: (req) => (req.body as { email?: string })?.email?.trim().substring(0, 100) ?? req.realIp
}) })
}, },
schema: { schema: {