Bläddra i källkod

Merge pull request #6379 from weseek/feat/101762-users-per-ip-rate-limit

feat: Users can set users per ip from env var at API Rate Limit
Yuki Takei 3 år sedan
förälder
incheckning
5406365b4c
1 ändrade filer med 3 tillägg och 0 borttagningar
  1. 3 0
      packages/app/src/server/util/rate-limiter.ts

+ 3 - 0
packages/app/src/server/util/rate-limiter.ts

@@ -20,8 +20,10 @@ const generateApiRateLimitConfigFromEndpoint = (envVar: NodeJS.ProcessEnv, targe
     }
     }
     const methodKey = `API_RATE_LIMIT_${target}_METHODS`;
     const methodKey = `API_RATE_LIMIT_${target}_METHODS`;
     const maxRequestsKey = `API_RATE_LIMIT_${target}_MAX_REQUESTS`;
     const maxRequestsKey = `API_RATE_LIMIT_${target}_MAX_REQUESTS`;
+    const usersPerIpProspectionKey = `API_RATE_LIMIT_${target}_USERS_PER_IP`;
     const method = envVar[methodKey] ?? 'ALL';
     const method = envVar[methodKey] ?? 'ALL';
     const maxRequests = Number(envVar[maxRequestsKey]);
     const maxRequests = Number(envVar[maxRequestsKey]);
+    const usersPerIpProspection = Number(envVar[usersPerIpProspectionKey]);
 
 
     if (endpoint == null || maxRequests == null) {
     if (endpoint == null || maxRequests == null) {
       return;
       return;
@@ -30,6 +32,7 @@ const generateApiRateLimitConfigFromEndpoint = (envVar: NodeJS.ProcessEnv, targe
     const config = {
     const config = {
       method,
       method,
       maxRequests,
       maxRequests,
+      usersPerIpProspection,
     };
     };
 
 
     apiRateLimitConfig[endpoint] = config;
     apiRateLimitConfig[endpoint] = config;