我在第 3 方网站上托管了几个 IFrame。第 3 方网站是允许用户访问主要供另一家公司内部使用的网站的中间人。
我想做的是根据第三方(中间人)网站的一系列有效 IP 验证用户的 IP 地址。如果它在范围内,则允许用户访问 IFrame,如果不是 - 拒绝访问!
无论如何,网上有很多例子可以获取 Request.UserHostAddress,但这会带回我的 IP 地址。
我的问题是:如何获取正在访问 IFrame 的用户的 IP 地址以确保请求来自第 3 方站点?
到目前为止,我已经尝试过 ServerVariables 和 UserHostAddress。他们都返回::1。我正在运行在本地托管 IFrame 的站点,并通过托管在服务器上的第 3 方站点访问这些站点。
更新
我终于有时间更新每个人了。试图通过代码来做到这一点不是一个可行的解决方案。但是,我相信通过使用 IIS 验证 IP 地址可以解决此问题。在没有实现非常hacky解决方案的代码中,我们将只能获取用户的IP地址。
但是,通过使用 IIS,您可以验证第 3 方的地址。SO的这篇文章演示了如何做到这一点。该帖子不适合我的情况,但它确实向您展示了如何验证 IP 范围。