gpt4 book ai didi

security - 部署到云时,Grails是否会获得客户端IP?

转载 作者:行者123 更新时间:2023-12-02 13:52:35 25 4
gpt4 key购买 nike

我有一个Grails应用程序,我想通过ip锁定它,以便只有许多IP范围可以访问该应用程序。我已经在Config中使用Spring Security命令来实现这一点:

grails.plugins.springsecurity.ipRestrictions

然后,即使我在列出的IP之一中在云端(Jelastic)中运行该应用程序,也无法让我访问所需的区域。然后,我在下面显示的应用程序中放入一些代码以拉回客户端的地址,它使用该应用程序显示了云代理服务器而不是客户端的地址:
request.getRemoteAddr()

我认为它不会让我访问想要的区域,因为它将我的IP读取为云代理的IP,我也尝试过运行以下命令以查看它们是否返回了我的实际IP,但是它们全都为null:小号
request.getHeader("X-Forwarded-For");  

request.getHeader("Proxy-Client-IP");

request.getHeader("WL-Proxy-Client-IP")

request.getHeader("HTTP_CLIENT_IP")

request.getHeader("HTTP_X_FORWARDED_FOR")

我只需要知道是否有某种方法可以通过客户端IP(而不是使用云代理的IP)在云中限制此应用程序?提前致谢

最佳答案

对Jelastic实例的所有请求都通过基础结构全局解析器发出。

因此,您是对的,request.getRemoteAddr()返回解析器的IP,并且您的允许列表无法识别它。

解决方法是在Jelastic中为您的应用服务器购买external IP。在这种情况下,所有请求将直接到达您的实例。

我还建议您加入专用的Jelastic Community,以便分享您的经验并获得他人的帮助。

关于security - 部署到云时,Grails是否会获得客户端IP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13142733/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com