Tutorial: Protección de los nuevos recursos con bloqueos de recursos de Azure Blueprints

Con los bloqueos de recursos de Azure Blueprints puede proteger los recursos recién implementados para que no sea puedan alterar, ni siquiera por parte de una cuenta con el rol de propietario. Esta protección se puede agregar a las definiciones de recursos del plano técnico creadas por un artefacto de la plantilla de Azure Resource Manager (plantilla ARM). El bloqueo de recursos del plano técnico se establece durante la asignación del plano técnico.

En este tutorial va a completar estos pasos:

  • Creación de una definición de plano técnico
  • Marcado de la definición del plano técnico como Publicado
  • Asignación de la definición del plano técnico a una suscripción existente (establecimiento de bloqueos de recursos)
  • Inspección del nuevo grupo de recursos
  • Anular la asignación del plano técnico para quitar los bloqueos

Prerrequisitos

Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.

Creación de una definición de plano técnico

En primer lugar, cree la definición del plano técnico.

  1. Seleccione Todos los servicios en el panel izquierdo. Busque y seleccione Planos técnicos.

  2. En la página Introducción de la izquierda, seleccione Crear en Crear un plano técnico.

  3. Busque la muestra de plano técnico Plano técnico en blanco en la parte superior de la página. Seleccione Empezar con un plano técnico en blanco.

  4. Especifique esta información en la pestaña Datos básicos:

    • Nombre del plano técnico: proporcione un nombre para su copia del ejemplo de plano técnico. Para este tutorial, usaremos el nombre locked-storageaccount.
    • Descripción del plano técnico: Agregue una descripción para la definición del plano técnico. Use For testing blueprint resource locking on deployed resources (Para probar el bloqueo de recursos del plano técnico en los recursos implementados).
    • Ubicación de definición: seleccione el botón de puntos suspensivos (...) y luego seleccione la suscripción o grupo de administración donde se va a guardar la definición del plano técnico.
  5. Seleccione la pestaña Artefactos en la parte superior de la página o seleccione Siguiente: Artefactos en la parte inferior de la página.

  6. Agregue un grupo de recursos en el nivel de suscripción:

    1. Seleccione la fila Agregar artefacto en Suscripción.
    2. Seleccione Grupo de recursos en Tipo de artefacto.
    3. Establezca el nombre para mostrar el artefacto en RGtoLock.
    4. Deje los cuadros Nombre del grupo de recursos y Ubicación en blanco, pero asegúrese de que la casilla esté activada en cada propiedad para hacerlos parámetros dinámicos.
    5. Seleccione Agregar para agregar el artefacto al plano técnico.
  7. Agregue una plantilla en el grupo de recursos:

    1. Seleccione la fila Agregar artefacto en la entrada RGtoLock.

    2. Seleccione Plantilla de Azure Resource Manager en Tipo de artefacto y en Nombre para mostrar del artefacto seleccione StorageAccount y deje Descripción en blanco.

    3. En la pestaña Plantilla, pegue la siguiente plantilla de Resource Manager en el cuadro del editor. Tras pegar la plantilla, seleccione Agregar para agregar el artefacto al plano técnico.

      Nota

      En este paso, se definen los recursos que se van a implementar y que se van a bloquear con el bloqueo de recursos del plano técnico, pero no se incluyen los bloqueos de recursos del plano técnico. Los bloqueos de recursos del plano técnico se establecen como un parámetro de la asignación del plano técnico.

    {
        "$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. Seleccione Guardar borrador en la parte inferior de la página.

En este paso se crea la definición del plano técnico en la suscripción o grupo de administración seleccionados.

Después de que aparezca la notificación del portal La definición del plano técnico se guardó correctamente, vaya al paso siguiente.

Publicación de la definición del plano técnico

Ahora su definición del plano técnico se ha creado en su entorno. Se crea en el modo Borrador y debe publicarse antes de que se pueda asignar e implementar.

  1. Seleccione Todos los servicios en el panel izquierdo. Busque y seleccione Planos técnicos.

  2. En la parte izquierda, seleccione la página Definiciones del plano técnico. Use los filtros para buscar la definición del plano técnico locked-storageaccount y, después, selecciónela.

  3. Seleccione Publicar plano técnico en la parte superior de la página. En el nuevo panel de la derecha, escriba 1.0 en Versión. Esta propiedad es útil si se realiza algún cambio más adelante. Escriba Notas de cambios, como First version published for locking blueprint deployed resources (Primera versión publicada para bloquear los recursos implementados del plano técnico). A continuación, seleccione Publicar en la parte inferior de la página.

Este paso permite la asignación del plano técnico a una suscripción. Aunque se haya publicado la definición del plano técnico, se pueden hacer cambios. Si realiza cambios, es preciso publicar la definición con un valor de versión nuevo para hacer un seguimiento de las diferencias entre las distintas versiones de la misma definición del plano técnico.

Después de que aparezca la notificación del portal La definición del plano técnico se publicó correctamente, vaya al paso siguiente.

Asignación de la definición del plano técnico

Después de publicar la definición del plano técnico puede asignarla a una suscripción del grupo de administración donde la guardó. En este paso se proporcionan los parámetros necesarios para hacer que cada implementación de la definición del plano técnico sea única.

  1. Seleccione Todos los servicios en el panel izquierdo. Busque y seleccione Planos técnicos.

  2. En la parte izquierda, seleccione la página Definiciones del plano técnico. Use los filtros para buscar la definición del plano técnico locked-storageaccount y, después, selecciónela.

  3. Seleccione Asignar plano técnico en la parte superior de la página de definición del plano técnico.

  4. Proporcione los valores de parámetro para la asignación de plano técnico:

    • Conceptos básicos

      • Suscripciones: seleccione una o varias de las suscripciones que estén en el grupo de administración en el que se guardó la definición del plano técnico. Si selecciona varias suscripciones, se creará una asignación para cada una de ellas mediante los parámetros que especifique.
      • Nombre de asignación: el nombre se rellena previamente en función del nombre de la definición del plano técnico. Queremos esta asignación para representar el bloqueo del nuevo grupo de recursos, de modo que cambie el nombre de asignación por assignment-locked-storageaccount-TestingBPLocks.
      • Ubicación: seleccione la región en la que se crea la identidad administrada. Azure Blueprints usa esta identidad administrada para implementar todos los artefactos en el plano técnico asignado. Para más información, consulte Identidades administradas para recursos de Azure. Para este tutorial, seleccione Este de EE. UU. 2.
      • Versión de definición de Blueprint: seleccione la versión publicada, 1.0, de la definición del plano técnico.
    • Asignación de bloqueo

      Seleccione el modo de bloqueo de plano técnico Solo lectura. Para más información, consulte Bloqueo de recursos en planos técnicos.

      Nota

      En este paso, va a configurar el bloqueo de recursos del plano técnico en los recursos que se acaban de implementar.

    • Identidad administrada

      Use la opción predeterminada: Asignado por el sistema. Para más información, vea Identidades administradas.

    • Parámetros de artefacto

      Los parámetros definidos en esta sección se aplican al artefacto en que se definen. Estos son parámetros dinámicos, ya que se definen durante la asignación del plano técnico. En cada artefacto, establezca el valor del parámetro en lo que se ve en la columna Valor.

      Nombre del artefacto Tipo de artefacto Nombre de parámetro Value Descripción
      Grupo de recursos de RGtoLock Resource group Nombre TestingBPLocks Define el nombre del nuevo grupo de recursos al que se aplican los bloqueos de plano técnico.
      Grupo de recursos de RGtoLock Resource group Location Oeste de EE. UU. 2 Define la ubicación del nuevo grupo de recursos al que se aplican los bloqueos de plano técnico.
      StorageAccount Plantilla de Resource Manager storageAccountType (StorageAccount) Standard_GRS La SKU de almacenamiento. El valor predeterminado es Standard_LRS.
  5. Después de que haya especificado todos los parámetros, seleccione Asignar en la parte inferior de la página.

Este paso implementa los recursos definidos y configura la asignación de bloqueo seleccionada. Pueden tardar un máximo de 30 minutos en aplicar los bloqueos del plano técnico.

Después de que aparezca la notificación del portal La definición del plano técnico se asignó correctamente, vaya al paso siguiente.

Inspección de los recursos implementados por la asignación

La asignación crea el grupo de recursos TestingBPLocks y la cuenta de almacenamiento que ha implementado la plantilla de Resource Manager. El nuevo grupo de recursos y el estado de bloqueo seleccionado se muestran en la página de detalles de asignación.

  1. Seleccione Todos los servicios en el panel izquierdo. Busque y seleccione Planos técnicos.

  2. Seleccione la página Planos técnicos asignados de la izquierda. Use los filtros para buscar la asignación de plano técnico assignment-locked-storageaccount-TestingBPLocks y, después, selecciónela.

    En esta página, se puede ver que la asignación se realizó correctamente y que los recursos se implementaron con el nuevo estado de bloqueo de plano técnico. Si se actualiza la asignación, en el menú desplegable Operación de asignación aparecerán los detalles sobre la implementación de cada versión de definición. Puede seleccionar el grupo de recursos para abrir la página de propiedades.

  3. Seleccione el grupo de recursos TestingBPLocks.

  4. Seleccione la página Control de acceso (IAM) de la izquierda. Luego, seleccione la pestaña Asignaciones de roles.

    Aquí vemos que la asignación de plano técnico assignment-locked-storageaccount-TestingBPLocks tiene el rol de propietario. Tiene este rol porque este rol se usó para implementar y bloquear el grupo de recursos.

  5. Seleccione la pestaña Asignaciones de denegación.

    La asignación de plano técnico creó una asignación de denegación en el grupo de recursos implementados para forzar el modo de bloqueo de plano técnico Solo lectura. La asignación de denegación evita que alguien con los derechos adecuados en la pestaña Asignaciones de roles tome medidas específicas. La asignación de denegación afecta a Todas las entidades de seguridad.

    Para información acerca de cómo excluir una entidad de seguridad de una asignación de denegación, consulte cómo bloquear los recursos de planos técnicos.

  6. Seleccione la asignación de denegación y, después, seleccione la página Permisos denegados de la izquierda.

    La asignación de denegación evita todas las operaciones con la configuración Action y *, pero permite el acceso de lectura mediante la exclusión de */read a través de NotActions.

  7. En la ruta de navegación de Azure Portal, seleccione TestingBPLocks - Control de acceso (IAM) . A continuación, seleccione la página Información general de la izquierda y, después, el botón Eliminación de un grupo de recursos. Escriba el nombre TestingBPLocks para confirmar la eliminación y seleccione Eliminar en la parte inferior del panel.

    Aparece la notificación del portal Delete resource group TestingBPLocks failed (Error al eliminar el grupo de recursos TestingBPLocks). El error indica que, aunque la cuenta tiene permiso para eliminar el grupo de recursos, la asignación de plano técnico deniega el acceso. Recuerde que seleccionamos el modo de bloqueo de plano técnico Solo lectura durante la asignación de plano técnico. El bloqueo de plano técnico impide que una cuenta con permiso, incluso el propietario, elimine el recurso. Para más información, consulte Bloqueo de recursos en planos técnicos.

En estos pasos se muestra que los recursos implementados ahora están protegidos con bloqueos de plano técnico que evitan la eliminación no deseada, incluso desde una cuenta con permiso para hacerlo.

Cancelación de la asignación del plano técnico

El último paso consiste en quitar la asignación de la definición del plano técnico. La eliminación de la asignación no quita los artefactos asociados.

  1. Seleccione Todos los servicios en el panel izquierdo. Busque y seleccione Planos técnicos.

  2. Seleccione la página Planos técnicos asignados de la izquierda. Use los filtros para buscar la asignación de plano técnico assignment-locked-storageaccount-TestingBPLocks y, después, selecciónela.

  3. Seleccione Cancelar la asignación de plano técnico en la parte superior de la página. Lea la advertencia en el cuadro de diálogo de confirmación y, después, seleccione Aceptar.

    Cuando la asignación de plano técnico se quita, también se quitan los bloqueos de plano técnico. Los recursos pueden eliminarse una vez más por medio de una cuenta con los permisos apropiados.

  4. Seleccione Grupos de recursos en el menú de Azure y, después, seleccione TestingBPLocks.

  5. Seleccione la página Control de acceso (IAM) de la izquierda y, después, seleccione la pestaña Asignaciones de roles.

La seguridad para el grupo de recursos muestra que la asignación de plano técnico ya no tiene acceso de propietario.

Después de que aparezca la notificación del portal La eliminación de la asignación del plano técnico se realizó correctamente, vaya al paso siguiente.

Limpieza de recursos

Cuando finalice el tutorial, elimine estos recursos:

  • Grupo de recursos TestingBPLocks
  • Definición del plano técnico locked-storageaccount

Pasos siguientes

En este tutorial, ha aprendido a proteger los nuevos recursos implementados con Azure Blueprints. Para más información sobre Azure Blueprints, vaya el artículo sobre el ciclo de vida de los planos técnicos.