Руководство по Защита новых ресурсов с помощью блокировок ресурсов Azure BlueprintsTutorial: Protect new resources with Azure Blueprints resource locks

Блокировки ресурсов Azure Blueprints позволяют защитить новые развернутые ресурсы от незаконного изменения даже из учетной записи с ролью Владелец.With Azure Blueprints resource locks, you can protect newly deployed resources from being tampered with, even by an account with the Owner role. Такую защиту можно добавить в определения схем ресурсов, созданных с помощью артефакта шаблона Resource Manager.You can add this protection in the blueprint definitions of resources created by a Resource Manager template artifact.

При работе с этим руководством вы выполните следующие шаги:In this tutorial, you'll complete these steps:

  • Создание определения схемыCreate a blueprint definition
  • установка определению схемы метки Опубликовано;Mark your blueprint definition as Published
  • назначение определения схемы в существующую подписку;Assign your blueprint definition to an existing subscription
  • проверка новой группы ресурсов;Inspect the new resource group
  • отмена назначения схемы для удаления блокировок.Unassign the blueprint to remove the locks

Предварительные требованияPrerequisites

Если у вас еще нет подписки Azure, создайте бесплатную учетную запись, прежде чем начинать работу.If you don't have an Azure subscription, create a free account before you begin.

Создание определения схемыCreate a blueprint definition

Сначала создайте определение схемы.First, create the blueprint definition.

  1. Выберите Все службы в левой области.Select All services in the left pane. Найдите и выберите пункт Схемы.Search for and select Blueprints.

  2. На странице Начало работы с левой стороны в разделе Создание схемы нажмите кнопку Создать.On the Getting started page on the left, select Create under Create a blueprint.

  3. В верхней части страницы найдите пример схемы Пустая схема.Find the Blank Blueprint blueprint sample at the top of the page. Выберите Начать с пустой схемы.Select Start with blank blueprint.

  4. На вкладке Основные сведения введите следующие данные:Enter this information on the Basics tab:

    • Имя схемы. Укажите имя для копии образца схемы.Blueprint name: Provide a name for your copy of the blueprint sample. В этом руководстве мы будем использовать имя locked-storageaccount.For this tutorial, we'll use the name locked-storageaccount.
    • Описание схемы. Добавьте описание для определения схемы.Blueprint description: Add a description for the blueprint definition. Например: Для проверки блокировки ресурсов схемы на развернутых ресурсах.Use For testing blueprint resource locking on deployed resources.
    • Расположение определения. Нажмите кнопку с многоточием (...) и выберите группу управления или подписку, в которую будет сохранено определение схемы.Definition location: Select the ellipsis button (...) and then select the management group or subscription to save your blueprint definition to.
  5. В верхней части страницы выберите вкладку Артефакты или внизу страницы щелкните Далее: Артефакты.Select the Artifacts tab at the top of the page, or select Next: Artifacts at the bottom of the page.

  6. Добавьте группу ресурсов на уровне подписки.Add a resource group at the subscription level:

    1. В разделе Подписка выберите строку Добавить артефакт.Select the Add artifact row under Subscription.
    2. В поле Тип артефакта выберите Группа ресурсов.Select Resource Group under Artifact type.
    3. Для отображаемого имени артефакта задайте значение RGtoLock.Set the Artifact display name to RGtoLock.
    4. Оставьте поля Имя группы ресурсов и Расположение пустыми, но убедитесь, что установлен флажок для каждого свойства, чтобы сделать их динамическими параметрами.Leave the Resource Group Name and Location boxes blank, but make sure the check box is selected on each property to make them dynamic parameters.
    5. Нажмите кнопку Добавить, чтобы добавить артефакт в схему.Select Add to add the artifact to the blueprint.
  7. Добавьте шаблон в группу ресурсов:Add a template under the resource group:

    1. Под записью RGtoLock щелкните строку Добавить артефакт.Select the Add artifact row under the RGtoLock entry.
    2. В поле Тип артефакта выберите Шаблон Azure Resource Manager, для параметра Отображаемое имя артефакта укажите значение StorageAccount, а поле Описание оставьте пустым.Select Azure Resource Manager template under Artifact type, set Artifact display name to StorageAccount, and leave Description blank.
    3. На вкладке Шаблон вставьте приведенный ниже шаблон Resource Manager в поле редактора.On the Template tab, paste the following Resource Manager template into the editor box. Вставив шаблон, щелкните Добавить, чтобы добавить этот артефакт к схеме.After you paste in the template, select Add to add the artifact to the blueprint.
    {
        "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
        "contentVersion": "1.0.0.0",
        "parameters": {
            "storageAccountType": {
                "type": "string",
                "defaultValue": "Standard_LRS",
                "allowedValues": [
                    "Standard_LRS",
                    "Standard_GRS",
                    "Standard_ZRS",
                    "Premium_LRS"
                ],
                "metadata": {
                    "description": "Storage Account type"
                }
            }
        },
        "variables": {
            "storageAccountName": "[concat('store', uniquestring(resourceGroup().id))]"
        },
        "resources": [{
            "type": "Microsoft.Storage/storageAccounts",
            "name": "[variables('storageAccountName')]",
            "location": "[resourceGroup().location]",
            "apiVersion": "2018-07-01",
            "sku": {
                "name": "[parameters('storageAccountType')]"
            },
            "kind": "StorageV2",
            "properties": {}
        }],
        "outputs": {
            "storageAccountName": {
                "type": "string",
                "value": "[variables('storageAccountName')]"
            }
        }
    }
    
  8. В нижней части страницы нажмите Сохранить черновик.Select Save Draft at the bottom of the page.

На этом шаге в выбранной группе управления или подписке создается определение схемы.This step creates the blueprint definition in the selected management group or subscription.

Когда на портале появится уведомление Определение схемы успешно сохранено, перейдите к следующему шагу.After the Saving blueprint definition succeeded portal notification appears, go to the next step.

Публикация определения схемыPublish the blueprint definition

Теперь в вашей среде создано определение схемы.Your blueprint definition has now been created in your environment. Оно создано в режиме Черновик, и прежде чем назначить и развернуть эту копию, ее необходимо опубликовать.It's created in Draft mode and must be published before it can be assigned and deployed.

  1. Выберите Все службы в левой области.Select All services in the left pane. Найдите и выберите пункт Схемы.Search for and select Blueprints.

  2. В меню слева выберите страницу Определения схем.Select the Blueprint definitions page on the left. С помощью фильтров найдите определение схемы locked-storageaccount и выберите его.Use the filters to find the locked-storageaccount blueprint definition, and then select it.

  3. В верхней части страницы выберите Опубликовать схему.Select Publish blueprint at the top of the page. На новой панели справа задайте для параметра Версия значение 1.0.In the new pane on the right, enter 1.0 as the Version. Это свойство можно использовать, если вы собираетесь внести изменения позже.This property is useful if you make a change later. Введите описание в поле Сведения об изменениях, например Опубликована первая версия для блокировки ресурсов, развернутых в схеме.Enter Change notes, such as First version published for locking blueprint deployed resources. Затем щелкните Опубликовать в нижней части страницы.Then select Publish at the bottom of the page.

На этом шаге можно назначить схему подписке.This step makes it possible to assign the blueprint to a subscription. После публикации определения схемы вы все равно сможете вносить изменения.After the blueprint definition is published, you can still make changes. Если вы вносите изменения, опубликуйте определение с новым значением версии, чтобы отслеживать различия между версиями одного определения схемы.If you make changes, you need to publish the definition with a new version value to track differences between versions of the same blueprint definition.

Когда на портале появится уведомление Определение схемы опубликовано, перейдите к следующему шагу.After the Publishing blueprint definition succeeded portal notification appears, go to the next step.

Назначение определения схемыAssign the blueprint definition

Опубликовав определение схемы, можете назначить его подписке в пределах группы управления, в которой вы сохранили определение.After the blueprint definition is published, you can assign it to a subscription within the management group where you saved it. На этом шаге вы укажете параметры, которые позволяют сделать каждое развертывание определения схемы уникальным.In this step, you provide parameters to make each deployment of the blueprint definition unique.

  1. Выберите Все службы в левой области.Select All services in the left pane. Найдите и выберите пункт Схемы.Search for and select Blueprints.

  2. В меню слева выберите страницу Определения схем.Select the Blueprint definitions page on the left. С помощью фильтров найдите определение схемы locked-storageaccount и выберите его.Use the filters to find the locked-storageaccount blueprint definition, and then select it.

  3. В верхней части страницы определения схемы выберите Назначить схему.Select Assign blueprint at the top of the blueprint definition page.

  4. Укажите значения параметра для назначения схемы.Provide the parameter values for the blueprint assignment:

    • ОсновыBasics

      • Подписки. Выберите одну или несколько подписок, которые находятся в группе управления, где вы сохранили определение схемы.Subscriptions: Select one or more of the subscriptions that are in the management group where you saved your blueprint definition. Если вы выберете несколько подписок, для каждой из них будет создано назначение с использованием введенных вами параметров.If you select more than one subscription, an assignment will be created for each subscription, using the parameters you enter.
      • Имя назначения. Имя предварительно заполняется на основе имени определения схемы.Assignment name: The name is pre-populated based on the name of the blueprint definition. Так как мы хотим, чтобы это назначение представляло блокировку новой группы ресурсов, измените его имя на assignment-locked-storageaccount-TestingBPLocks.We want this assignment to represent locking the new resource group, so change the assignment name to assignment-locked-storageaccount-TestingBPLocks.
      • Расположение. Выберите регион, в котором будет создано управляемое удостоверение.Location: Select a region in which to create the managed identity. Azure Blueprint использует это управляемое удостоверение для развертывания всех артефактов в назначенную схему.Azure Blueprint uses this managed identity to deploy all artifacts in the assigned blueprint. Дополнительные сведения см. в статье Управляемые удостоверения для ресурсов Azure.To learn more, see managed identities for Azure resources. Для этого руководства выберите регион Восточная часть США 2.For this tutorial, select East US 2.
      • Версия определения схемы. Выберите опубликованную версию 1.0 определения схемы.Blueprint definition version: Select the published version 1.0 of the blueprint definition.
    • Блокировка назначенияLock Assignment

      Выберите режим блокировки схемы Только для чтения.Select the Read Only blueprint lock mode. Дополнительные сведения см. в разделе Блокировка ресурсов схем.For more information, see blueprints resource locking.

    • Управляемое удостоверениеManaged Identity

      Используйте параметр по умолчанию: Назначено системой.Use the default option: System assigned. Дополнительные сведения см. в статье Что такое управляемые удостоверения для ресурсов Azure?For more information, see managed identities.

    • Параметры артефактаArtifact parameters

      Параметры, определенные в этом разделе, применяются к артефакту, под которым они определены.The parameters defined in this section apply to the artifact under which they're defined. Так как эти параметры определяются во время назначения схемы, они являются динамическими.These parameters are dynamic parameters because they're defined during the assignment of the blueprint. Для каждого артефакта задайте значение параметра, отображаемое в столбце Значение.For each artifact, set the parameter value to what you see in the Value column.

      Имя артефактаArtifact name Тип артефактаArtifact type Имя параметраParameter name ЗначениеValue ОписаниеDescription
      Группа ресурсов RGtoLockRGtoLock resource group Группа ресурсовResource group ИмяName TestingBPLocksTestingBPLocks Определяет имя новой группы ресурсов, к которой необходимо применить блокировки схемы.Defines the name of the new resource group to apply blueprint locks to.
      Группа ресурсов RGtoLockRGtoLock resource group Группа ресурсовResource group РасположениеLocation западная часть США 2West US 2 Определяет расположение новой группы ресурсов, к которой необходимо применить блокировки схемы.Defines the location of the new resource group to apply blueprint locks to.
      StorageAccountStorageAccount Шаблон Resource ManagerResource Manager template storageAccountType (StorageAccount)storageAccountType (StorageAccount) Standard_GRSStandard_GRS Номер SKU хранилища.The storage SKU. Значение по умолчанию — Standard_LRS.The default value is Standard_LRS.
  5. Когда укажете все параметры, в нижней части страницы выберите Назначить.After you've entered all parameters, select Assign at the bottom of the page.

На этом шаге происходит развертывание определенных ресурсов и настройка выбранного назначения блокировки.This step deploys the defined resources and configures the selected Lock Assignment. Для применения блокировок схемы понадобится до 30 минут.It can take up to 30 minutes to apply blueprint locks.

Когда на портале появится уведомление Определение схемы назначено, перейдите к следующему шагу.After the Assigning blueprint definition succeeded portal notification appears, go to the next step.

Просмотр ресурсов, развернутых назначениемInspect resources deployed by the assignment

При назначении создаются группа ресурсов TestingBPLocks и учетная запись хранения, развернутая артефактом шаблона Resource Manager.The assignment creates the resource group TestingBPLocks and the storage account deployed by the Resource Manager template artifact. Новая группа ресурсов и выбранное состояние блокировки отображаются на странице сведений о назначении.The new resource group and the selected lock state are shown on the assignment details page.

  1. Выберите Все службы в левой области.Select All services in the left pane. Найдите и выберите пункт Схемы.Search for and select Blueprints.

  2. Слева выберите страницу Назначенные схемы.Select the Assigned blueprints page on the left. С помощью фильтров найдите назначение схемы assignment-locked-storageaccount-TestingBPLocks и выберите его.Use the filters to find the assignment-locked-storageaccount-TestingBPLocks blueprint assignment, and then select it.

    На этой странице можно убедиться, что назначение прошло успешно, а ресурсы развернуты с новым состоянием блокировки схемы.From this page, we can see that the assignment succeeded and that the resources were deployed with the new blueprint lock state. При обновлении назначения в раскрывающемся списке Операция назначения отображаются сведения о развертывании каждой версии определения.If the assignment is updated, the Assignment operation drop-down shows details about the deployment of each definition version. Чтобы открыть страницу свойств, выберите группу ресурсов.You can select the resource group to open the property page.

  3. Выберите группу ресурсов TestingBPLocks.Select the TestingBPLocks resource group.

  4. В области слева откройте страницу Управление доступом (IAM) .Select the Access control (IAM) page on the left. Затем выберите вкладку Назначения ролей.Then select the Role assignments tab.

    На этой вкладке назначение схемы assignment-locked-storageaccount-TestingBPLocks имеет роль Владелец.Here we see that the assignment-locked-storageaccount-TestingBPLocks blueprint assignment has the Owner role. Это обусловлено тем, что эта роль использовалась для развертывания и блокировки группы ресурсов.It has this role because this role was used to deploy and lock the resource group.

  5. Выберите вкладку Запрет назначений.Select the Deny assignments tab.

    В развернутой группе ресурсов назначение схемы создало запрет назначения, чтобы принудительно применить режим блокировки схемы Только для чтения.The blueprint assignment created a deny assignment on the deployed resource group to enforce the Read Only blueprint lock mode. Запрет назначения не дает пользователю с соответствующими правами выполнять определенные действия на вкладке Назначения ролей.The deny assignment prevents someone with appropriate rights on the Role assignments tab from taking specific actions. Запрет назначения влияет на все субъекты.The deny assignment affects All principals.

    Сведения об исключении субъекта из запрета назначения см. в статье о блокировке ресурсов схемы.For information about excluding a principal from a deny assignment, see blueprints resource locking.

  6. Выберите запрет назначения, а затем откройте страницу Отклоненные разрешения в области слева.Select the deny assignment, and then select the Denied Permissions page on the left.

    Запрет назначения блокирует все операции с конфигурацией * и Действие, но разрешает доступ на чтение, исключая */read через NotActions.The deny assignment is preventing all operations with the * and Action configuration, but it allows read access by excluding */read via NotActions.

  7. В элементе навигации портала Azure выберите TestingBPLocks — Управление доступом (IAM) .In the Azure portal breadcrumb, select TestingBPLocks - Access control (IAM). Затем в левом меню перейдите на страницу Обзор и щелкните кнопку Удалить группу ресурсов.Then select the Overview page on the left and then the Delete resource group button. Чтобы подтвердить удаление, введите имя TestingBPLocks и в нижней части панели выберите Удалить.Enter the name TestingBPLocks to confirm the delete and then select Delete at the bottom of the pane.

    На портале появится уведомление Удаление группы ресурсов TestingBPLocks завершилось сбоем.The portal notification Delete resource group TestingBPLocks failed appears. Ошибка указывает на то, что хотя в вашей учетной записи и есть разрешение на удаление группы ресурсов, назначение схемы запрещает доступ к ней.The error states that although your account has permission to delete the resource group, access is denied by the blueprint assignment. Помните, что при назначении схемы мы выбрали режим блокировки схемы Только для чтения.Remember that we selected the Read Only blueprint lock mode during blueprint assignment. Блокировка схемы предотвращает удаление ресурсов учетной записью с разрешением (даже с ролью Владелец).The blueprint lock prevents an account with permission, even Owner, from deleting the resource. Дополнительные сведения см. в разделе Блокировка ресурсов схем.For more information, see blueprints resource locking.

Согласно этим действиям, теперь развернутые ресурсы защищены с помощью блокировок схемы, которые не допускают нежелательное удаление, даже из учетной записи с разрешением на это удаление.These steps show that our deployed resources are now protected with blueprint locks that prevent unwanted deletion, even from an account that has permission to delete the resources.

Отмена назначения схемыUnassign the blueprint

Последнее, что нужно сделать, — это удалить назначение определения схемы.The last step is to remove the assignment of the blueprint definition. При удалении назначения связанные артефакты не удаляются.Removing the assignment doesn't remove the associated artifacts.

  1. Выберите Все службы в левой области.Select All services in the left pane. Найдите и выберите пункт Схемы.Search for and select Blueprints.

  2. Слева выберите страницу Назначенные схемы.Select the Assigned blueprints page on the left. С помощью фильтров найдите назначение схемы assignment-locked-storageaccount-TestingBPLocks и выберите его.Use the filters to find the assignment-locked-storageaccount-TestingBPLocks blueprint assignment, and then select it.

  3. В верхней части страницы выберите Отменить назначение схемы.Select Unassign blueprint at the top of the page. Прочтите предупреждение в диалоговом окне подтверждения, а затем щелкните ОК.Read the warning in the confirmation dialog box, and then select OK.

    Блокировки схемы удаляются вместе с назначением схемы.When the blueprint assignment is removed, the blueprint locks are also removed. Удаление ресурсов из учетных записей с соответствующими разрешениями снова возможно.The resources can once again be deleted by an account with appropriate permissions.

  4. В меню Azure выберите Группы ресурсов, а затем щелкните TestingBPLocks.Select Resource groups from the Azure menu, and then select TestingBPLocks.

  5. В меню слева выберите страницу Управление доступом (IAM) и перейдите на вкладку Назначения ролей.Select the Access control (IAM) page on the left and then select the Role assignments tab.

Безопасность группы ресурсов указывает, что в назначении схемы больше нет доступа уровня Владелец.The security for the resource group shows that the blueprint assignment no longer has Owner access.

Когда на портале появится уведомление Назначение схемы удалено, перейдите к следующему шагу.After the Removing blueprint assignment succeeded portal notification appears, go to the next step.

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

После работы с этим руководством удалите такие ресурсы:When you're finished with this tutorial, delete these resources:

  • группу ресурсов TestingBPLocks;Resource group TestingBPLocks
  • определение схемы locked-storageaccount.Blueprint definition locked-storageaccount

Дальнейшие действияNext steps

В этом учебнике вы узнали, как защитить новые ресурсы, развернутые с помощью службы Azure Blueprints.In this tutorial, you've learned how to protect new resources deployed with Azure Blueprints. Чтобы узнать больше о схемах Azure, перейдите к статье о жизненном цикле схемы.To learn more about Azure Blueprints, continue to the blueprint lifecycle article.