IPSecurity Localhost从HttpClient请求工作

时间:2016-04-20 20:35:29

标签: .net iis-7.5

我有一个Web应用程序和一个Web API应用程序。两个.net 4.5。我在web api应用程序上设置了IpSecurity。两者都托管在IIS中的同一台机器上。机器的IP是10.40.x.x.因此,下面的任何一项都应该有效

<security>
   <ipSecurity allowUnlisted="false">        
   <clear />
    <add ipAddress="10.0.0.0" subnetMask="255.0.0.0" allowed="true" />
    <add ipAddress="127.0.0.1" subnetMask="255.255.255.255" allowed="true"/> 
  </ipSecurity>

设置了applicationHost.config:

      <section name="ipSecurity" overrideModeDefault="Allow" />

在浏览器中,我可以从localhost访问web api应用程序的主页。这很好用。当我从Web应用程序向Web api应用程序发出HttpClient GET请求时,我收到403.6禁止响应,表明IIS因IP安全性而阻止了请求。

我可以使用POSTMan或任何其他方法从localhost直接对Web API应用程序进行Web API调用。唯一一次提供403.6禁止的是在我的网络应用程序中从HttpClient向同一URL发出请求时。

如果我改变

<ipSecurity allowUnlisted="true"> 

来自网络应用的请求工作。所以它肯定是IIS IP限制的东西,而不是其他东西。

为什么来自HttpClient中的Web应用程序的请求会被阻止,但其他上下文中的其他请求不会被阻止?

0 个答案:

没有答案