Использование политик для обеспечения применения стандартов

Завершено

Вы улучшили структуру своих ресурсов, объединив их в группы ресурсов, и применили к ресурсам теги, чтобы использовать их в отчетах по выставленным счетам и в своем решении мониторинга. Группирование ресурсов и добавление к ним тегов изменили существующие ресурсы, но как обеспечить соблюдение этих правил при создании новых ресурсов? Давайте рассмотрим, как политики помогают обеспечить применение стандартов в вашей среде Azure.

Что такое служба "Политика Azure"?

Политика Azure — это служба, которую можно использовать для создания и назначения политик, а также для управления политиками. Эти политики применяют и обеспечивают соблюдение правил, которым должны соответствовать ваши ресурсы. Эти политики могут применять эти правила при создании ресурсов и оценивать их с учетом существующих ресурсов, чтобы обеспечить видимость соответствия требованиям.

Политики могут применять такие правила, как разрешение создавать только определенные типы ресурсов или разрешать ресурсы только в определенных регионах Azure. Можно обеспечить соблюдение соглашений об именовании во всей вашей среде Azure. Также можно принудительно применять к ресурсам определенные теги. Давайте рассмотрим, как работают политики.

Создание политики

Вы хотите убедиться, что все ресурсы имеют тег Отдела , связанный с ними, и заблокировать создание, если тег не существует. Необходимо создать определение политики и назначить его область; в этом случае область — это группа ресурсов msftlearn-core-infrastructure-rg. Вы можете создавать и назначать политики с помощью портала Azure, Azure PowerShell или Azure CLI. В этом упражнении пошагово рассматривается создание политики на портале.

Создание определения политики

  1. Перейдите на портал Azure в веб-браузере, если он еще не открыт. В поле поиска на верхней панели навигации введите Политика и в результатах поиска выберите службу Политика.

  2. В меню слева в разделе Разработка выберите область Определения.

  3. Вы увидите список встроенных политик, которые можно использовать. В данном случае вы собираетесь создать собственную настраиваемую политику. Выберите + Определение политики в верхнем меню.

  4. Откроется диалоговое окно Новое определение политики. Чтобы задать Расположение определения, выберите синий элемент выбора области запуска (...). Выберите подписку, в которой хранится политика. Это должна быть та же подписка, в которой находится группа ресурсов. Выберите кнопку Выбрать.

  5. Вернитесь в диалоговое окно Новое определение политики и введите Применение тега к ресурсу в поле Имя.

  6. В поле Описание введите Эта политика обеспечивает наличие тега в ресурсе.

  7. В разделе Категория выберите Использовать существующую, а затем выберите категорию Общие.

  8. Для правила политики удалите весь текст в поле и вставьте следующий код JSON:

    {
      "mode": "Indexed",
      "policyRule": {
        "if": {
          "field": "[concat('tags[', parameters('tagName'), ']')]",
          "exists": "false"
        },
        "then": {
          "effect": "deny"
        }
      },
      "parameters": {
        "tagName": {
          "type": "String",
          "metadata": {
            "displayName": "Tag Name",
            "description": "Name of the tag, such as 'environment'"
          }
        }
      }
    }
    

    Определение политики должно выглядеть следующим образом. Нажмите Сохранить, чтобы сохранить это определение политики.

    Screenshot of Azure portal showing the new policy definition dialog.

Создание назначения политики

Вы создали политику, но еще не задействовали ее. Чтобы включить политику, нужно создать назначение. В этом случае вы назначите его область группы ресурсов msftlearn-core-rg, чтобы она применяла все элементы внутри группы ресурсов.

  1. В области политики в разделе Разработка слева выберите Назначения.

  2. Выберите вверху Назначение политики.

  3. В панели Назначение политики вы назначите политику своей группе ресурсов. Для области выберите синий селектор запуска область (...). Выберите подписку и группу ресурсов msftlearn-core-infrastructure-rg, а затем нажмите кнопку "Выбрать".

  4. Для определения политики выберите средство выбора определения политики "Синий запуск" (...). В раскрывающемся списке "Тип" выберите "Настраиваемый", выберите тег "Применить" для созданной политики ресурсов, а затем нажмите кнопку "Добавить".

  5. Откройте вкладку "Параметры" в верхней части экрана.

  6. В области параметров введите имя тега в отделе.

  7. Выберите "Просмотр и создание", а затем нажмите кнопку "Создать ", чтобы создать назначение.

Тестирование политики

Теперь, когда вы назначили политику группе ресурсов, все попытки создать ресурс без тега Отдела завершаются ошибкой.

Важно!

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

  1. В меню портала Azure или на странице Домашняя выберите Создать ресурс.

  2. Введите в поле поиска Учетная запись хранения и выберите элемент Учетная запись хранения. В результатах выберите Создать.

  3. Выберите свою подписку и группу ресурсов msftlearn-core-infrastructure-rg.

  4. В поле Имя учетной записи хранения введите любое имя, но обратите внимание, что это должно быть глобально уникальное имя.

  5. Оставьте остальные параметры по умолчанию, а затем нажмите кнопку "Рецензирование".

    Проверка создания ресурсов завершится ошибкой, так как у вас нет тега Отдела, примененного к ресурсу. Если политика не вызвала сбой проверки, может потребоваться несколько минут, чтобы она была включена.

    Screenshot of Azure portal showing a policy validation failure on a new storage account without a tag.

    Устраните нарушение, чтобы можно было успешно развернуть учетную запись хранения.

  6. Выберите Теги в верхней части области Создание учетной записи хранения.

  7. Добавьте в список тег Department:Finance.

    Screenshot of Azure portal showing a new Department tag to add during creation.

  8. Теперь нажмите кнопку "Рецензирование". Теперь проверка должна пройти, и если нажать Создать, то учетная запись хранения будет создана.

Использование политик для обеспечения применения стандартов

Вы узнали, как использовать политики, чтобы обеспечить наличие тегов, которые упорядочивают ресурсы. Существуют и другие способы использования политик для нашей выгоды.

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

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

Вы также можете использовать политику для применения соглашений об именовании. Если в вашей организации стандартизированы определенные соглашения об именовании, с помощью политик можно поддерживать согласованный стандарт именования для всех ресурсов Azure.