Kong Gateway kiiruse piiramise plugin.
Kehtesta kehtivad piirangureeglid aasta, kuu, päeva, tunni, minuti ja sekundi alusel ning mitmed piirangud jõustuvad samaaegselt.
Näiteks mitte rohkem kui 10 kõnet päevas, mitte rohkem kui 3 korda minutis.
Kui minutis on rohkem kui 3 visiiti, teatatakse neljandal korral veast.
Kui külastuste arv päevas ületab 10 korda, teatatakse veast üheteistkümnendal korral.
Stsenaarium: Pean piirama API liidese ühe IP-ga, mida saab taotleda ainult 3 korda minutis, kui ma plugina sisse lülitan, pole probleemi kongi väravale IP kaudu tavapäraselt ligi pääseda, kuid kongi ülemisel kihil on endiselt nginx koormusena, nii et kongi poolt saadud IP on alati nginx masina privaatne IP, nii et kõik IP-d pääsevad API liidesele ligi ainult 3 korda minutis, mitte ükski IP ei pääse liidesele ligi 3 korda minutis.
Nagu alloleval joonisel näidatud, lükatakse kõik külastajad tagasi, kui liidest küsitakse 3 korda minutis.
Paigaldasin http-log plugina, et salvestada päring ja vastav info, et saaksime seda siluda.
Kuna Kong ei saa tavaliselt client_ip aadressi, kuidas ma saan seda probleemi parandada?
Lahus
Muuda kongi konfiguratsioonifaili,
/etc/kong/kong.conf文件,增加trusted_ips = 0.0.0.0/0,::/0
real_ip_header = X-edasi suunatud
Viimaks ometiTaaskäivita Kong, käsk: kong taaskäivita
trusted_ips
Määratle usaldusväärsete IP-aadresside plokk, mis on teadaolevalt õige X-Forwarded-* päise saadavad. Usaldusväärsete IP-de päringud panevad Kongi suunama oma päise X-Forwarded-* ülesvoolu. Usaldamatud päringud panevad Kongi lisama oma X-Forwarded-* päise.
See omadus määrab ka direktiivi set_real_ip_fromNginx konfiguratsioonis. See aktsepteerib sama tüüpi väärtusi (CIDR-plokid), kuid komadega eraldatud loendid.
Usaldada kõiki /! \IP, palun määra see väärtus 0.0.0.0/0,::/0.
Kui unix: määrab erilise väärtuse, siis kõik UNIX domeeni soklid on usaldusväärsed. Viitedokumentatsioon:https://docs.konghq.com/0.14.x/configuration/#trusted_ips
Pärast muudatuse lõpetamist saab kong korrektselt hankida kliendi IP-aadressi, nagu alloleval joonisel näidatud:
(Lõpp)
|