Я использую шаблоны 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».
тонарма код Исследователь показывает, что here и подсказки, как это использование. Я также могу найти его использование в .netSDK в прошлом (Run out of allowed links).
Когда я пытаюсь установить это с помощью resources.azure.com, я не получаю никакой обратной связи, и она возвращает значение null.
Может кто-нибудь помочь с подробностями о том, как я могу использовать это свойство?
Это работало отлично! веб-элемент из шаблона 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
Вы также можете использовать параметры для этого, вот пример набора IP-адресов, которые можно разрешить как параметр массива { "name": "web", "type": "config", "apiVersion": "2015-08-01", "dependsOn": [ "[resourceId ('Microsoft.Web/sites', параметры ('WebSiteName'))]» ], "метки": { "DisplayName": "разрешено IP-адреса" }, "свойства": { "ipSecurityRestrictions": "[параметры ('ipRangesPermitted')]" } } Поместите это под «ресурсами» для Wesite – TimBunting