2

Я использую шаблоны ARM для развертывания в Azure Web Apps, сайт развертывается в нескольких средах, при этом шаблон ARM принимает разные параметры для каждого.Ограничение IP-адресов на Azure WebApp от ARM (Azure Resource Manager)

Одним из требований является включение блока IP на сайте в некоторых средах, но не в других. Это можно сделать через web.config, но это не идеально, поскольку я управляю всеми настройками приложения через ARM и занимаюсь веб-развертыванием zipped-сайта. Добавление преобразований для каждой среды будет больно и потребует значительных доработок.

Я хотел бы указать, что-то вроде этого в моем наш файл шаблона:

{ 
     "type": "config", 
     "apiVersion": "2015-08-01", 
     "name": "web", 
     "properties": { 
     "ipSecurityRestrictions": { 
      "allowUnlisted": false, 
      "ipAddresses": [ "127.0.0.1", "127.0.0.2" ] 
     } 
     }, 
     "dependsOn": [ 
     "[concat('Microsoft.Web/sites/', parameters('nameofwebapp'))]" 
     ] 
    } 

Просмотр поставщика ресурсов для «Microsoft/Web» с resources.azure.com кажется, что это может быть возможным в есть свойство «ipSecurityRestrictions» в «config/web».

ARMView

тонарма код Исследователь показывает, что here и подсказки, как это использование. Я также могу найти его использование в .netSDK в прошлом (Run out of allowed links).

Когда я пытаюсь установить это с помощью resources.azure.com, я не получаю никакой обратной связи, и она возвращает значение null.

Может кто-нибудь помочь с подробностями о том, как я могу использовать это свойство?

ответ

5

Этот параметр разрешенного IP-адреса, а не исключения - вы можете установить с помощью https://resources.azure.com/

Пример использования является:

"ipSecurityRestrictions": [ 
    { 
    "ipAddress": "12.23.254.3", 
    "subnetMask": "255.255.0.0" 
    } 
] 
+0

Это работало отлично! веб-элемент из шаблона ARM теперь выглядит так: { "type": "config", "apiVersion": "2015-08-01", "name": "web", "properties": { " ipSecurityRestrictions ": [{ "Ipaddress": "11.11.11.11", // разрешить только этот IP, блокировать все остальные "Маска_подсети": "255.255.255.255" } }, "dependsOn": [ " [concat ('Microsoft.Web/sites /', parameters ('nameofwebapp'))] " ] }' – lawrencegripper

+0

Вы также можете использовать параметры для этого, вот пример набора IP-адресов, которые можно разрешить как параметр массива { "name": "web", "type": "config", "apiVersion": "2015-08-01", "dependsOn": [ "[resourceId ('Microsoft.Web/sites', параметры ('WebSiteName'))]» ], "метки": { "DisplayName": "разрешено IP-адреса" }, "свойства": { "ipSecurityRestrictions": "[параметры ('ipRangesPermitted')]" } } Поместите это под «ресурсами» для Wesite – TimBunting