Używanie NGINX do proxy do klastra węzłów RIAK *. Mam regułę przepisywania jak
rewrite ^/bucket-([a-z]+)/object-([a-zA-Z0-9]+)/(.+)$ /riak/$1/$2 break;
i blok lokalizacji
location /riak/ {
proxy_pass http://riak_servers/riak/;
}
Który przekieruje na jeden z serwerów RIAK. Problem polega na tym, że użytkownicy mogą uzyskać bezpośredni dostęp do http: // server / riak / i uzyskać bezpośredni dostęp do informacji o klastrze i segmencie RIAK. Chcę umożliwić dostęp tylko użytkownikom żądającym zasobów za pośrednictwem przepisanego adresu URL. Wolałbym unikać jakichkolwiek bloków if
lub wielu location
bloków, aby złapać wszystko. Prawdopodobnie brakuje mi czegoś oczywistego.
NGINX 1.0.11
* Jest to ogólnie zły pomysł, ponieważ każdy, kto ma dostęp do serwera NGINX, może put
/ może post
wpakować się do klastra RIAK. Powinieneś zapobiegać wszystkim typom żądań oprócz, GET
a HEAD
także prawdopodobnie dobrym pomysłem jest usunięcie X-*
nagłówków Andy wstawianych przez RIAK. Nie sądzę, aby ujawnienie wartości VClock było problemem bezpieczeństwa, ale najlepiej dla bezpieczeństwa.