diff --git a/backend/src/routes/v1/auth.ts b/backend/src/routes/v1/auth.ts index b633f82ea..f373567f2 100644 --- a/backend/src/routes/v1/auth.ts +++ b/backend/src/routes/v1/auth.ts @@ -11,7 +11,7 @@ router.post("/token", validateRequest, authController.getNewToken); router.post( // TODO endpoint: deprecate (moved to api/v3/auth/login1) "/login1", authLimiter, - body("email").exists().trim().notEmpty(), + body("email").exists().trim().notEmpty().toLowerCase(), body("clientPublicKey").exists().trim().notEmpty(), validateRequest, authController.login1 @@ -20,7 +20,7 @@ router.post( // TODO endpoint: deprecate (moved to api/v3/auth/login1) router.post( // TODO endpoint: deprecate (moved to api/v3/auth/login2) "/login2", authLimiter, - body("email").exists().trim().notEmpty(), + body("email").exists().trim().notEmpty().toLowerCase(), body("clientProof").exists().trim().notEmpty(), validateRequest, authController.login2 diff --git a/backend/src/routes/v2/auth.ts b/backend/src/routes/v2/auth.ts index bf348c279..e2d45f452 100644 --- a/backend/src/routes/v2/auth.ts +++ b/backend/src/routes/v2/auth.ts @@ -8,7 +8,7 @@ import { authLimiter } from "../../helpers/rateLimiter"; router.post( // TODO: deprecate (moved to api/v3/auth/login1) "/login1", authLimiter, - body("email").isString().trim().notEmpty(), + body("email").isString().trim().notEmpty().toLowerCase(), body("clientPublicKey").isString().trim().notEmpty(), validateRequest, authController.login1 @@ -17,7 +17,7 @@ router.post( // TODO: deprecate (moved to api/v3/auth/login1) router.post( // TODO: deprecate (moved to api/v3/auth/login1) "/login2", authLimiter, - body("email").isString().trim().notEmpty(), + body("email").isString().trim().notEmpty().toLowerCase(), body("clientProof").isString().trim().notEmpty(), validateRequest, authController.login2 diff --git a/backend/src/routes/v3/auth.ts b/backend/src/routes/v3/auth.ts index 12afb5113..ba6f30335 100644 --- a/backend/src/routes/v3/auth.ts +++ b/backend/src/routes/v3/auth.ts @@ -9,7 +9,7 @@ const router = express.Router(); router.post( "/login1", authLimiter, - body("email").isString().trim(), + body("email").isString().trim().toLowerCase(), body("providerAuthToken").isString().trim().optional({nullable: true}), body("clientPublicKey").isString().trim().notEmpty(), validateRequest, @@ -19,7 +19,7 @@ router.post( router.post( "/login2", authLimiter, - body("email").isString().trim(), + body("email").isString().trim().toLowerCase(), body("providerAuthToken").isString().trim().optional({nullable: true}), body("clientProof").isString().trim().notEmpty(), validateRequest, diff --git a/frontend/src/views/Login/components/InitialStep/InitialStep.tsx b/frontend/src/views/Login/components/InitialStep/InitialStep.tsx index 3f7abcba4..7bab7414e 100644 --- a/frontend/src/views/Login/components/InitialStep/InitialStep.tsx +++ b/frontend/src/views/Login/components/InitialStep/InitialStep.tsx @@ -51,7 +51,7 @@ export const InitialStep = ({ // attemptCliLogin const isCliLoginSuccessful = await attemptCliLogin({ - email, + email: email.toLowerCase(), password, }) @@ -78,7 +78,7 @@ export const InitialStep = ({ } } else { const isLoginSuccessful = await attemptLogin({ - email, + email: email.toLowerCase(), password, }); if (isLoginSuccessful && isLoginSuccessful.success) { diff --git a/frontend/src/views/Org/MembersPage/components/OrgMembersTable/OrgMembersTable.tsx b/frontend/src/views/Org/MembersPage/components/OrgMembersTable/OrgMembersTable.tsx index 5a0a6fd83..2955f5b51 100644 --- a/frontend/src/views/Org/MembersPage/components/OrgMembersTable/OrgMembersTable.tsx +++ b/frontend/src/views/Org/MembersPage/components/OrgMembersTable/OrgMembersTable.tsx @@ -60,7 +60,7 @@ type Props = { }; const addMemberFormSchema = yup.object({ - email: yup.string().email().required().label("Email").trim() + email: yup.string().email().required().label("Email").trim().lowercase() }); type TAddMemberForm = yup.InferType;