読者です 読者をやめる 読者になる 読者になる

Azure WebApps サイト単位で IP 制限をする

Build とか SQL Server 2016 RC1 とかの話題が出てますが、気にせずメモ書き。

Microsoft Azure Web Site Cheat Sheet
Cheap and easy IP blocking in Azure Web Apps | Shawn Cicoria

Web.config に書けばいいんですが、諸々の事情でサイト毎に設定したい場合のメモ。

d:\home\site に applicationHost.xdt を配置する。

<?xml version="1.0" encoding="utf-8"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
  <location path="サイト名" xdt:Locator="Match(path)">
    <system.webServer xdt:Transform="InsertIfMissing">
      <security xdt:Transform="InsertIfMissing">
        <ipSecurity allowUnlisted="false" denyAction="NotFound" xdt:Transform="Replace">
          <add allowed="true" ipAddress="許可するIP" xdt:Transform="InsertIfMissing"/>
        </ipSecurity>
      </security>
    </system.webServer>
  </location>
</configuration>

location 指定しないと、kudo や site extensions の方*1に対して設定されてしまいました。
これで kudo に繋がらなくなったりします。 そうなった場合は、FTP から applicationHost.xdt を削除すると設定も解除されました。

*1:~.scm.azurewebsites.net