You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Problem: The current IP rate limiter uses request.getRemoteAddr(), which returns the Load Balancer's IP in cloud environments, effectively sharing one rate limit across all global users.
Acceptance Criteria:
Update IpRateLimitFilter to extract the client IP using the X-Forwarded-For header.
Fallback to getRemoteAddr() only if the header is missing.
Write a unit test simulating requests with and without the X-Forwarded-For proxy header.
Problem: The current IP rate limiter uses
request.getRemoteAddr(), which returns the Load Balancer's IP in cloud environments, effectively sharing one rate limit across all global users.Acceptance Criteria:
IpRateLimitFilterto extract the client IP using theX-Forwarded-Forheader.getRemoteAddr()only if the header is missing.X-Forwarded-Forproxy header.