mirror of
https://github.com/netbirdio/netbird.git
synced 2026-09-22 06:39:08 +02:00
Add rate limit for upload url requests
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
package server
|
||||
|
||||
import (
|
||||
"os"
|
||||
|
||||
log "github.com/sirupsen/logrus"
|
||||
|
||||
"github.com/netbirdio/netbird/management/server/http/middleware"
|
||||
)
|
||||
|
||||
const defaultUploadBurst = 100
|
||||
|
||||
func newRateLimiter() *middleware.APIRateLimiter {
|
||||
cfg, _ := middleware.RateLimiterConfigFromEnv()
|
||||
if os.Getenv(middleware.RateLimitingBurstEnv) == "" {
|
||||
cfg.Burst = defaultUploadBurst
|
||||
}
|
||||
|
||||
limiter := middleware.NewAPIRateLimiter(cfg)
|
||||
if os.Getenv(middleware.RateLimitingEnabledEnv) == "false" {
|
||||
limiter.SetEnabled(false)
|
||||
}
|
||||
|
||||
log.Infof("Upload URL rate limiting: enabled=%t rate=%.0f/min burst=%d trusted_proxies=%q",
|
||||
limiter.Enabled(), cfg.RequestsPerMinute, cfg.Burst, os.Getenv(middleware.RateLimitingTrustedProxiesEnv))
|
||||
|
||||
return limiter
|
||||
}
|
||||
Reference in New Issue
Block a user