Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(Delphi) - Como eu obtenho o IP da pessoa qual realizou a requisição? #407

Open
lotexiu opened this issue Oct 11, 2024 · 5 comments
Open

Comments

@lotexiu
Copy link

lotexiu commented Oct 11, 2024

Eu estou começando a usar o Horse e estou aprendendo ao poucos como utilizar e queria descobrir o ip de quem realizou a requisição para estar gerando Logs e dependendo estar bloqueando a requisição caso seja alguem com intenções maliciosas.

@lotexiu
Copy link
Author

lotexiu commented Oct 11, 2024

Estou peguntando aqui como issue pois é mais facil de alguem ver e não cheguei a encontrar uma discussão falando sobre

@aoshiminamoto
Copy link

Boa Noite Colega,

Existe um Middleware que pode te ajudar a obter o IP da requisição porem, acredito que o controle de acesso a API deva ser realizado com o controle de autorizações BasicAutentication ou JWTAutentication.

Utilizando destes controles vc pode limitar o acesso a API por usuário / senha e posteriormente por prazo de uso colocando limite de tempo na utilização do Token.

Caso precise de alguma ajuda fico a disposição.

@lotexiu
Copy link
Author

lotexiu commented Oct 20, 2024

@aoshiminamoto

Boa Noite Colega,

Existe um Middleware que pode te ajudar a obter o IP da requisição porem, acredito que o controle de acesso a API deva ser realizado com o controle de autorizações BasicAutentication ou JWTAutentication.

Utilizando destes controles vc pode limitar o acesso a API por usuário / senha e posteriormente por prazo de uso colocando limite de tempo na utilização do Token.

Caso precise de alguma ajuda fico a disposição.

Então, eu já contenho uma estrutura criada própria para Token qual ajuda bastante, porem a minha API contém requisições publicas (não exige Token). Por mais que essas requisições não tem nenhum problema de pessoas realizarem a requisição, eu quero bloquear conexões com ip cujo chegam a ter um comportamento estranho. por exemplo caso a gente tem uma requisição que gera e retorna o token, mas você precisa citar o usuario e senha caso eu não tenha um sistema de bloquear ip, não serei capaz de evitar as tentativas de acesso frequente.
Caso eu tivesse, eu posso limitar o numero de tentativas de login e bloquear o ip caso o numero de tentativas excede o limite

Bem, irei verificar sobre o JWT/Basic (Autentication). Logo entrarei em contato novamente em caso de duvidas, mas agradeço pela ajuda.

@lotexiu
Copy link
Author

lotexiu commented Oct 20, 2024

@aoshiminamoto
Ah é, por acaso existe um sistema de gerenciamento de memoria de objetos que evite vazamento de memória? atualmente encontrei apenas o que pertence ao JCL (JEDI), mas não é algo que estou procurando exatamente.
O que estou a procura seria algo semelhante ao codigo que estou desenvolvendo. Talvez algo no meu repositorio lhe ajude.

https://github.com/lotexiu/HelperLibrary/blob/main/src/generic/UAutoDestroy.pas
Lembrando que ainda não esta pronto. tem muitas coisas que estou vendo e desenvolvendo.

@viniciussanchez
Copy link
Member

https://github.com/dliocode/horse-utils-clientip

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants