Azure App Service中的远程IP通过HTTPS为自定义域提供服务

时间:2017-05-22 08:39:10

标签: ssl azure-web-sites azure-cdn

我的目标是拥有一个Azure应用服务,通过HTTPS从自定义域提供服务。 此应用程序接收HTTPS POST请求,并应在此过程中记录远程IP。

我通常会得到远程IP地址,即调用客户端的IP,如下所示:

HttpRequest request = ...
var IP = request.HttpContext.Connection.RemoteIpAddress;

要通过HTTPS为自定义域提供应用,我启用了天蓝色CDN端点。

现在IP I记录用于CDN服务器而不是呼叫客户端。

是否有可能获得原始IP?

有问题的请求是HTTPS POST,因此CDN缓存不应成为问题。

Azure CDN是否添加了可能包含此类信息的任何标头?

直接向App Service添加SSL证书会改变什么吗?

2 个答案:

答案 0 :(得分:1)

通过测试,我发现Azure CDN会在客户端的真实IP中添加X-Forwarded-For标头。

我唯一提到的这个标题是在Azure CDN documentation中提到标题是保留的。

答案 1 :(得分:0)

This article描述了Azure CDN的工作方式,我们可以知道用户通过CDN请求文件,如果POP中的边缘服务器没有缓存中的文件,边缘服务器会从起源。用户请求不会直接从客户端用户发送到源,如您所见,它会记录边缘服务器的IP而不是调用客户端的IP。

相关问题