Kong gateway hız sınırlayıcı eklentisi.
Yıl, ay, gün, saat, dakika ve saniyeye göre mevcut limit kuralları belirleyin ve aynı anda birden fazla kısıtlama yürürlüğe girer.
Örneğin, günde 10 çağrıdan fazla olmamalı, dakikada 3 gezekten fazla olmamalıdır.
Bir dakikada 3'ten fazla ziyaret olduğunda, dördüncü kez hata bildirilir.
Günde ziyaret sayısı 10 kez aşıldığında, on birinci seferde hata bildirilir.
Senaryo: API arayüzünü sadece dakikada 3 kez istenebilecek tek bir IP ile sınırlamam gerekiyor, eklentiyi etkinleştirdiğimde kong geçidine IP üzerinden normal erişim sorunu olmuyor, ancak kong'un üst katmanında hâlâ nginx yük olarak var, bu yüzden kong tarafından elde edilen IP her zaman nginx makinesinin özel IP'si olur, böylece tüm IP'ler API arayüzüne dakikada sadece 3 kez erişebilir, tek bir IP ise dakikada 3 kez arayüze erişmez.
Aşağıdaki şekilde gösterildiği gibi, arayüz dakikada 3 kez istendiği sürece tüm ziyaretçiler reddedilecektir.
Isteği ve ilgili bilgileri kaydetmek için http-log eklentisini yükledim, böylece hata ayıklayabilelim.
Kong normal şekilde client_ip adres almadığı için bu sorunu nasıl düzeltebilirim?
Çözüm
Kong yapılandırma dosyasını değiştir,
/etc/kong/kong.conf文件,增加trusted_ips = 0.0.0.0/0,::/0
real_ip_header = X-Yönlendirilmiş İçin
SonundaKong'u Yeniden Başlat, komut: Kong yeniden başlat
trusted_ips
Doğru X-Forwarded-* başlığını gönderdiği bilinen güvenilir IP adreslerinden oluşan bir bloğu tanımlayın. Güvenilir IP'lerden gelen talepler, Kong'un başlığını X-Forwarded-* yukarı akışına yönlendirmesine neden olur. Güvenilmez istekler Kong'un kendi X-Forwarded-* başlığını eklemesini sağlar.
Bu özellik aynı zamanda set_real_ip_fromNginx yapılandırmasında direktifi de belirler. Aynı türden değerleri (CIDR blokları) kabul eder, ancak virgülle ayrılmış listeler.
Herkese güvenmek /! \IP, lütfen bu değeri 0.0.0.0/0,::/0 olarak ayarlayın.
Eğer unix: özel bir değer belirtirse, tüm UNIX alan soketleri güvenilir olacaktır. Referans Dokümantı:https://docs.konghq.com/0.14.x/configuration/#trusted_ips
Modifikasyon tamamlandıktan sonra, kong aşağıdaki şekilde gösterildiği gibi istemci IP adresini doğru şekilde elde edebilir:
(Son)
|