Skip to content

Commit

Permalink
Increase rate limits for API
Browse files Browse the repository at this point in the history
  • Loading branch information
dangtony98 committed Jan 16, 2023
1 parent 37ee814 commit 89697df
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 22 deletions.
2 changes: 1 addition & 1 deletion backend/src/controllers/v1/workspaceController.ts
Original file line number Diff line number Diff line change
Expand Up @@ -317,7 +317,7 @@ export const getWorkspaceServiceTokens = async (
let serviceTokens;
try {
const { workspaceId } = req.params;

// ?? FIX.
serviceTokens = await ServiceToken.find({
user: req.user._id,
workspace: workspaceId
Expand Down
22 changes: 9 additions & 13 deletions backend/src/helpers/rateLimiter.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import rateLimit from 'express-rate-limit';

// 300 requests per 15 minutes
// 450 requests per 15 minutes
const apiLimiter = rateLimit({
windowMs: 15 * 60 * 1000,
max: 450,
Expand All @@ -11,28 +11,24 @@ const apiLimiter = rateLimit({
}
});

// 5 requests per hour
const signupLimiter = rateLimit({
windowMs: 60 * 60 * 1000,
// 10 requests per minute
const authLimiter = rateLimit({
windowMs: 60 * 1000,
max: 10,
standardHeaders: true,
legacyHeaders: false
});

// 10 requests per hour
const loginLimiter = rateLimit({
windowMs: 60 * 60 * 1000,
max: 25,
standardHeaders: true,
legacyHeaders: false
});

// 5 requests per hour
const passwordLimiter = rateLimit({
windowMs: 60 * 60 * 1000,
max: 10,
standardHeaders: true,
legacyHeaders: false
});

export { apiLimiter, signupLimiter, loginLimiter, passwordLimiter };
export {
apiLimiter,
authLimiter,
passwordLimiter
};
8 changes: 5 additions & 3 deletions backend/src/routes/v1/auth.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@ const router = express.Router();
import { body } from 'express-validator';
import { requireAuth, validateRequest } from '../../middleware';
import { authController } from '../../controllers/v1';
import { loginLimiter } from '../../helpers/rateLimiter';
import { authLimiter } from '../../helpers/rateLimiter';

router.post('/token', validateRequest, authController.getNewToken);

router.post(
'/login1',
loginLimiter,
authLimiter,
body('email').exists().trim().notEmpty(),
body('clientPublicKey').exists().trim().notEmpty(),
validateRequest,
Expand All @@ -18,7 +18,7 @@ router.post(

router.post(
'/login2',
loginLimiter,
authLimiter,
body('email').exists().trim().notEmpty(),
body('clientProof').exists().trim().notEmpty(),
validateRequest,
Expand All @@ -27,11 +27,13 @@ router.post(

router.post(
'/logout',
authLimiter,
requireAuth({
acceptedAuthModes: ['jwt']
}),
authController.logout
);

router.post(
'/checkAuth',
requireAuth({
Expand Down
10 changes: 5 additions & 5 deletions backend/src/routes/v1/signup.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,19 +3,19 @@ const router = express.Router();
import { body } from 'express-validator';
import { requireSignupAuth, validateRequest } from '../../middleware';
import { signupController } from '../../controllers/v1';
import { signupLimiter } from '../../helpers/rateLimiter';
import { authLimiter } from '../../helpers/rateLimiter';

router.post(
'/email/signup',
signupLimiter,
authLimiter,
body('email').exists().trim().notEmpty().isEmail(),
validateRequest,
signupController.beginEmailSignup
);

router.post(
'/email/verify',
signupLimiter,
authLimiter,
body('email').exists().trim().notEmpty().isEmail(),
body('code').exists().trim().notEmpty(),
validateRequest,
Expand All @@ -24,7 +24,7 @@ router.post(

router.post(
'/complete-account/signup',
signupLimiter,
authLimiter,
requireSignupAuth,
body('email').exists().trim().notEmpty().isEmail(),
body('firstName').exists().trim().notEmpty(),
Expand All @@ -42,7 +42,7 @@ router.post(

router.post(
'/complete-account/invite',
signupLimiter,
authLimiter,
requireSignupAuth,
body('email').exists().trim().notEmpty().isEmail(),
body('firstName').exists().trim().notEmpty(),
Expand Down

0 comments on commit 89697df

Please sign in to comment.