fix: bound auth admission at nginx (WealthLedger/frontend#155)
This commit is contained in:
@@ -17,12 +17,21 @@ http {
|
|||||||
default $http_x_forwarded_proto;
|
default $http_x_forwarded_proto;
|
||||||
'' $scheme;
|
'' $scheme;
|
||||||
}
|
}
|
||||||
|
# One shared budget: the external proxy's client-IP forwarding is not verified.
|
||||||
|
map "$request_method:$uri" $auth_admission_key {
|
||||||
|
default "";
|
||||||
|
POST:/api/v1/auth/login auth;
|
||||||
|
POST:/api/v1/auth/register auth;
|
||||||
|
}
|
||||||
|
limit_req_zone $auth_admission_key zone=auth_admission:1m rate=2r/s;
|
||||||
|
limit_req_status 429;
|
||||||
server {
|
server {
|
||||||
listen 8080;
|
listen 8080;
|
||||||
server_name _;
|
server_name _;
|
||||||
root /usr/share/nginx/html;
|
root /usr/share/nginx/html;
|
||||||
resolver 127.0.0.11 valid=5s ipv6=off;
|
resolver 127.0.0.11 valid=5s ipv6=off;
|
||||||
location /api/ {
|
location /api/ {
|
||||||
|
limit_req zone=auth_admission burst=5 nodelay;
|
||||||
set $backend http://backend:3000;
|
set $backend http://backend:3000;
|
||||||
proxy_pass $backend$request_uri;
|
proxy_pass $backend$request_uri;
|
||||||
proxy_set_header Host $http_host;
|
proxy_set_header Host $http_host;
|
||||||
|
|||||||
Reference in New Issue
Block a user