Взаимодействие Azure SQL PaaS и Azure Policy - PullRequest
0 голосов
/ 15 мая 2018

Кто-нибудь имеет представление о том, как я могу ограничить IP-адреса, добавленные в правило брандмауэра SQL через политику?

Я уже некоторое время пытаюсь это сделать, моя политика выглядит следующим образом ... Я попробовал все - есть что-то, что я пропускаю? :

    {
  "if": {
    "allOf": [
      {
        "field": "type",
        "equals": "Microsoft.SQL/servers/firewallRules"
      },
      {
        "Not": {
          "anyOf": [
            {
              "field": "Microsoft.Sql/servers/firewallRules/startIpAddress",
              "in": "[parameters('StartIP')]"
            },
            {
              "field": "Microsoft.Sql/servers/firewallRules/endIpAddress",
              "in": "[parameters('EndIP')]"
            }
          ]
        }
      }
    ]
  },
  "then": {
    "effect": "Deny"
  }
}

Но всегда выдает ошибку политики, когда я обновляю правила брандмауэра, несмотря на то, что указано в назначении политики.

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

Если я использую только 0.0.0.0 в качестве параметра в назначении, я могу подготовить новые SQL-серверы, а удалить его я не смогу, что заставит меня поверить, что в какой-то степени политика работает.

Я знаю, что могу выполнить весь маршрут vnet и использовать NSGS для достижения примерно того же самого; однако моя организация не хочет идти по этому пути, и скорее всего это будет сделано в политике.

1 Ответ

0 голосов
/ 16 мая 2018

У меня недостаточно репутации, чтобы комментировать ваш вопрос.Тем не менее, убедитесь, что вы внимательно относитесь к параметрам назначения при вводе их в Портал.Он принимает строки как есть, поэтому, если вы ввели «0.0.0.0; 8.8.8.8», как вы указали, начальные и конечные пробелы могут испортить сравнения.

Вы можете проверить, какие точные значения параметров указанынаходятся в назначении с помощью командлета Get-AzureRmPolicyAssignment powershell (или аналогичных команд Azure CLI).Для упрощения использования командлета полный идентификатор назначения отображается в представлении соответствия назначения на портале.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...