Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 10942|Resposta: 0

Limitação de taxa de plugins Kong

[Copiar link]
Publicado em 15/02/2019 14:54:45 | | | |
Plugin de limitação de taxa de gateway Kong.

Estabeleça regras de limite atuais baseadas em ano, mês, dia, hora, minuto e segundo, e múltiplas restrições entram em vigor ao mesmo tempo.

Por exemplo, no máximo 10 chamadas por dia, no máximo 3 vezes por minuto.

Quando há mais de 3 visitas por minuto, um erro será reportado na quarta vez.

Quando o número de visitas ultrapassar 10 vezes em um dia, um erro será reportado na décima primeira vez.


Cenário: preciso limitar a interface da API a um único IP que só pode ser solicitado 3 vezes por minuto; quando ativo o plug-in, não há problema em acessar o gateway Kong pelo IP normalmente, mas a camada superior do Kong ainda tem o nginx como carga, então o IP obtido pelo Kong é sempre o IP privado da máquina nginx, de modo que todos os IPs só possam acessar a interface da API 3 vezes por minuto, nenhum IP acessa a interface 3 vezes por minuto.

Como mostrado na figura abaixo, desde que a interface seja solicitada 3 vezes por minuto, todos os visitantes serão rejeitados.



Instalei o plugin http-log para registrar a solicitação e as informações correspondentes, para que possamos depurá-las.



Como o Kong não está recebendo client_ip endereço normalmente, como posso corrigir esse problema?

Solução

Modificar o arquivo de configuração Kong,

/etc/kong/kong.conf文件,增加trusted_ips = 0.0.0.0/0,::/0

real_ip_header = X-Encaminhado-Para


EnfimReiniciar Kong, comando: Kong Reiniciar



trusted_ips

Defina um bloco de endereços IP confiáveis que sejam conhecidos por enviar o cabeçalho correto X-Forwarded-*. Solicitações de IPs confiáveis fazem com que o Kong encaminhe seu cabeçalho para X-Forwarded-* a montante. Solicitações não confiáveis fazem com que o Kong insira seu próprio cabeçalho X-Forwarded-*.

Essa propriedade também define a diretiva na configuração set_real_ip_fromNginx. Aceita valores do mesmo tipo (blocos CIDR), mas listas separadas por vírgulas.

Confiar em todos /! \IP, por favor, defina esse valor para 0.0.0.0/0,::/0.

Se unix: especificar um valor especial, todos os sockets de domínio UNIX serão confiáveis.
Documentação de Referência:https://docs.konghq.com/0.14.x/configuration/#trusted_ips

Após a conclusão da modificação, o kong pode obter corretamente o endereço IP do cliente, como mostrado na figura abaixo:



(Fim)






Anterior:Atributo de busca por localização
Próximo:Método JavaScript split()
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com