Просмотр исходного кода

added rate limit to compile endpoint

Henry Oswald 9 лет назад
Родитель
Сommit
0961a034ea
1 измененных файлов с 7 добавлено и 1 удалено
  1. 7 1
      services/web/app/coffee/router.coffee

+ 7 - 1
services/web/app/coffee/router.coffee

@@ -111,7 +111,13 @@ module.exports = class Router
 		webRouter.post '/project/:Project_id/settings', AuthorizationMiddlewear.ensureUserCanWriteProjectSettings, ProjectController.updateProjectSettings
 		webRouter.post '/project/:Project_id/settings/admin', AuthorizationMiddlewear.ensureUserCanAdminProject, ProjectController.updateProjectAdminSettings
 
-		webRouter.post '/project/:Project_id/compile', AuthorizationMiddlewear.ensureUserCanReadProject, CompileController.compile
+		webRouter.post '/project/:Project_id/compile', RateLimiterMiddlewear.rateLimit({
+			endpointName: "compile-project-http"
+			params: ["Project_id"]
+			maxRequests: 800
+			timeInterval: 60 * 60
+		}), AuthorizationMiddlewear.ensureUserCanReadProject, CompileController.compile
+
 		webRouter.post '/project/:Project_id/compile/stop', AuthorizationMiddlewear.ensureUserCanReadProject, CompileController.stopCompile
 
 		# Used by the web download buttons, adds filename header