Использование блокировок ресурсов для защиты ресурсов

Завершено

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

Что такое блокировки ресурсов?

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

Примечание.

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

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

Давайте посмотрим, как же работает блокировка ресурсов.

Создание блокировки ресурса

Перейдем в нашу группу ресурсов msftlearn-core-infrastructure-rg. Теперь у вас есть две виртуальные сети и учетная запись хранения. Эти ресурсы считаются критически важными частями среды Azure и хотят убедиться, что они не будут ошибочно удалены. Чтобы предотвратить удаление группы ресурсов и содержащихся в ней ресурсов, примените к ней блокировку ресурса.

  1. В веб-браузере перейдите на портал Azure, если он еще не открыт. В поле поиска в верхней панели навигации выполните поиск msftlearn-core-infrastructure-rg и выберите эту группу ресурсов.

  2. В левом меню в разделе Параметры нажмите Блокировка. Вы увидите, что ресурс в настоящее время не имеет блокировок. Добавьте одну.

  3. Нажмите кнопку +Добавить. Присвойте блокировке имя BlockDeletion и выберите Тип блокировкиУдаление. Нажмите ОК.

    Screenshot of Azure portal showing a new delete resource lock being configured.

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

  4. Вернитесь к обзору и выберите msftlearn-vnet1.

  5. В верхней части области "Обзор " для msftlearn-vnet1 нажмите кнопку "Удалить". Должно появиться сообщение об ошибке с указанием, что блокировка ресурса препятствует его удалению.

  6. В левом меню в разделе Параметры нажмите Блокировка. Ресурс msftlearn-vnet1 имеет блокировку, унаследованную от группы ресурсов.

  7. Вернитесь в группу ресурсов msftlearn-core-infrastructure-rg и перейдите в раздел Блокировки. Вы удалите блокировку, чтобы можно было выполнить очистку. Выберите Удаление в поле блокировки для BlockDeletion.

Использование блокировки ресурсов на практике

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

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

Очистка ресурсов

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

  1. В веб-браузере перейдите на портал Azure.

  2. В поле поиска в верхней панели навигации выполните поиск msftlearn-core-infrastructure-rg и выберите эту группу ресурсов.

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

    Примечание.

    Так как вы удалили назначенные ресурсы с содержащей их группой ресурсов, в этой политике не останется никаких назначений. Как правило, при назначении политики ресурсу вы можете удалить назначение, не удаляя здесь базовый ресурс. Для этого следует выбрать Назначения, затем нажать символ многоточия (...) рядом с назначением и выбрать пункт Удалить назначение.

  4. В поле поиска запустите поиск по слову Политика и выберите службу Политика в результатах.

  5. Щелкните Определения и найдите созданную политику: Применение тега к ресурсу.

  6. ... Выберите определение и выберите "Удалить определение". Выберите Да, чтобы подтвердить удаление.