允许来自Azure中的暂存插槽中的webjob的流量

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了允许来自Azure中的暂存插槽中的webjob的流量相关的知识,希望对你有一定的参考价值。

我在Azure中使用了一个临时插槽,我只允许一些IP访问它。我在web.config文件中写了以下规则:

<rule name="Block unauthorized traffic to staging sites" stopProcessing="true">
         <match url=".*" />
         <conditions>              
           <add input="{HTTP_HOST}" pattern="^mydomain-mydomainslot1."/>
           <!-- white listed IP addresses -->
           <add input="{REMOTE_ADDR}" pattern="ip1" negate="true"/>
           <add input="{REMOTE_ADDR}" pattern="ip2" negate="true"/>        
         </conditions>
         <action type="CustomResponse" statusCode="403" statusReason="Forbidden"
         statusDescription="Site is not accessible" />
       </rule>

插槽接受来自我的域,ip1和ip2的流量。但是,我有一个webjob(在插槽中)使PostAsJsonAsync调用到插槽URL,我收到一个禁止作为答案。我不知道webjob的IP地址(它应该与网站/插槽相同),但无论如何,我没有静态IP地址在规则中使用它。我该如何解决这个问题?是否有另一种解决此问题的方法,而无需在Azure中保留IP?

答案

好的,我已经想通了。没有必要保留IP。我刚刚将所有可能的出站IP添加到我的web.config中,它现在正在运行。我错过了入站和出站IP不同的事实。 webjob具有与网站相同的虚拟IP,但可以有多个出站IP。 Those outbound IPs位于Azure门户中。

以上是关于允许来自Azure中的暂存插槽中的webjob的流量的主要内容,如果未能解决你的问题,请参考以下文章

如何快速撤消 git 中的暂存和未暂存的更改?

Azure 部署槽 - 交换和保留连接字符串

Web App 后台任务的暂存槽处理消息

解决开发中未发生的暂存中的 nginx 404 错误

Cordova 3.5.0 iOS 应用程序中的暂存文件夹需要啥?

GIT:编辑旧提交中的暂存文件但保留更改