Включите идентификатор входной двери в шаблон ARM IPRestriction

На портале Azure при настройке ограничений доступа для веб-приложения Azure теперь есть возможность использовать теги служб и включать определенные заголовки, которые должны присутствовать для разрешения доступа. Мы настроили следующую настройку, которая ограничивает доступ к веб-приложению только из нашего конкретного экземпляра входной двери:

ограничение доступа

Однако при попытке отразить ту же конфигурацию в ARM мне не удалось заставить все работать. Кажется, явно не хватает примеров этого или документации, и экспорт шаблона в лазурный портал не включает проверку заголовка идентификатора входной двери. Вот что я придумал, но после успешного развертывания ограничение доступа есть, но не настроен идентификатор входной двери.

{
            "type": "Microsoft.Web/sites/config",
            "apiVersion": "2020-12-01",
            "name": "[concat(variables('myApp'), '/web')]",
            "location": "[parameters('location')]",
            "dependsOn": [
                "[resourceId('Microsoft.Web/sites', variables('myApp'))]"
            ],
            "properties": {
                "ipSecurityRestrictions": [
                    {
                        "ipAddress": "AzureFrontDoor.Backend",
                        "action": "Allow",
                        "tag": "ServiceTag",
                        "priority": 300,
                        "name": "Restrict-FrontDoor",
                        "headers": {"X-Azure-FDID": "[parameters('frontDoorID')]"}
                    }
                ]
            }
        }

person David Parsonson    schedule 24.05.2021    source источник


Ответы (1)


Каждый заголовок принимает массив объектов, что-то вроде того, что должно сработать для вас:

{
  "type": "Microsoft.Web/sites/config",
  "apiVersion": "2020-12-01",
  "name": "[concat(variables('myApp'), '/web')]",
  "location": "[parameters('location')]",
  "dependsOn": [
    "[resourceId('Microsoft.Web/sites', variables('myApp'))]"
  ],
  "properties": {
    "ipSecurityRestrictions": [
      {
        "ipAddress": "AzureFrontDoor.Backend",
        "action": "Allow",
        "tag": "ServiceTag",
        "priority": 300,
        "name": "Restrict-FrontDoor",
        "headers": {
          "x-azure-fdid": [
            "[parameters('frontDoorID')]"
          ]
        }
      }
    ]
  }
}
person Thomas    schedule 24.05.2021