Use la extensión de Azure Policy para Visual Studio Code

Se aplica a la versión de extensión de Azure Policy 0.1.2 y a versiones más recientes.

Aprenda a usar la extensión de Azure Policy para Visual Studio Code (VS Code) para buscar alias, revisar recursos y definiciones de directivas, exportar objetos y evaluar definiciones de directivas. Primero, describiremos cómo instalar la extensión de Azure Policy en Visual Studio Code. Después, veremos cómo buscar alias.

La extensión de Azure Policy para Visual Studio Code se puede instalar en Linux, macOS y Windows.

Requisitos previos

Los elementos siguientes son necesarios para completar los pasos indicados en este artículo:

Instalación y configuración de la extensión de Azure Policy

Después de completar los requisitos previos, puede instalar la extensión de Azure Policy para Visual Studio Code mediante estos pasos:

  1. Abra Visual Studio Code.
  2. En la barra de menús, vaya a Vista>Extensiones.
  3. En el cuadro de búsqueda, escriba Azure Policy.
  4. Seleccione Azure Policy en los resultados de la búsqueda, luego haga clic en Instalar.
  5. Seleccione Recargar cuando sea necesario.

Para usuarios de la nube nacional, siga estos pasos para configurar el entorno de Azure en primer lugar:

  1. Seleccione Archivo>Preferencias>Configuración.

  2. Busque la siguiente cadena: Azure: Cloud (Nube)

  3. Seleccione la nube nacional de la lista:

    Screenshot of selecting the nation Azure cloud sign in for Visual Studio Code.

Uso de la extensión de Policy

Nota

Los cambios realizados localmente en las definiciones de directivas que se ven en la extensión de Azure Policy para Visual Studio Code no se sincronizan con Azure.

Conexión a la cuenta de Azure

Para evaluar los recursos y los alias de búsqueda, debe conectarse a su cuenta de Azure. Siga estos pasos para conectarse a Azure desde Visual Studio Code:

  1. Inicie sesión en Azure desde la extensión de Azure Policy o la paleta de comandos.

    • Extensión de Azure Policy

      En la extensión de Azure Policy, seleccione Iniciar sesión en Azure.

      Screenshot of Visual Studio Code and the icon for the Azure Policy extension.

    • Paleta de comandos

      En la barra de menús, vaya a Vista>Paleta de comandos y escriba Azure: Sign In (Iniciar sesión).

      Screenshot of the Azure cloud sign in options for Visual Studio Code from the Command Palette.

  2. Siga las instrucciones para iniciar sesión en Azure. Una vez establecida la conexión, el nombre de la cuenta de Azure se muestra en la barra de estado en la parte inferior de la ventana de Visual Studio Code.

Selección de suscripciones

La primera vez que inicia sesión, la extensión de Azure Policy carga los recursos y las definiciones de directivas predeterminados de la suscripción. Para agregar o quitar suscripciones de los recursos y definiciones de directivas que se muestran, siga estos pasos:

  1. Inicie el comando de suscripción desde la paleta de comandos o el pie de página de la ventana.

    • Paleta de comandos

      En la barra de menús, vaya a Vista>Paleta de comandos y escriba Azure: Selección de suscripciones.

    • Pie de página de ventana

      En el pie de página de la ventana, en la parte inferior de la pantalla, seleccione el segmento que coincida con Azure: <su cuenta> .

  2. Utilice el cuadro de filtro para buscar rápidamente las suscripciones por nombre. Luego, active o desactive la casilla de cada suscripción para establecer las suscripciones que se muestran en la extensión de Azure Policy. Cuando haya terminado de agregar o quitar las suscripciones que se van a mostrar, seleccione Aceptar.

Buscar y ver recursos

La extensión de Azure Policy enumera los recursos de las suscripciones seleccionadas por el proveedor de recursos y por el grupo de recursos en el panel Recursos. La vista de árbol incluye las siguientes agrupaciones de recursos dentro de la suscripción seleccionada o en el nivel de suscripción:

  • Proveedores de recursos
    • Cada proveedor de recursos registrado con recursos y recursos secundarios relacionados que tienen alias de directiva
  • Grupos de recursos
    • Todos los recursos por el grupo de recurso en el que se encuentran

De forma predeterminada, la extensión filtra la parte del proveedor de recursos de los recursos existentes y de los que tienen alias de directiva. Cambie este comportamiento en Configuración>Extensiones>Azure Policy para ver todos los proveedores de recursos sin filtrado.

Los clientes con cientos o miles de recursos en una sola suscripción pueden preferir una forma de búsqueda para localizar sus recursos. La extensión de Azure Policy permite buscar un recurso específico con los pasos siguientes:

  1. Empiece la interfaz de búsqueda desde la extensión de Azure Policy o la paleta de comandos.

    • Extensión de Azure Policy

      En la extensión de Azure Policy, mantenga el mouse sobre el panel Recursos y seleccione los puntos suspensivos, luego elija Buscar recursos.

    • Paleta de comandos

      En la barra de menús, vaya a Ver>Paleta de comandos y escriba Azure Policy: Búsqueda de recursos.

  2. Si se selecciona más de una suscripción para mostrarla, use el filtro para elegir la suscripción que se va a buscar.

  3. Use el filtro para elegir el grupo de recursos que se va a buscar que forma parte de la suscripción elegida anteriormente.

  4. Use el filtro para seleccionar el recurso que se va a mostrar. El filtro funciona para el nombre del recurso y el tipo de recurso.

Detección de alias para propiedades de recursos

Cuando se selecciona un recurso, ya sea mediante la interfaz de búsqueda o al seleccionarlo en la vista de árbol, la extensión de Azure Policy abre el archivo de notación de objetos JavaScript (JSON) que representa ese recurso y todos sus valores de propiedades de Azure Resource Manager.

Una vez que se abre un recurso, al mantener el mouse sobre el nombre o valor de la propiedad del administrador de recursos, se muestra el alias de Azure Policy, si existe uno. En este ejemplo, el recurso es un tipo de recurso Microsoft.Compute/virtualMachines y la propiedad properties. storageProfile.imageReference.offer se mantiene sobre ella. Al mantener el mouse se muestran los alias que coinciden.

Screenshot of the Azure Policy extension for Visual Studio Code hovering a property to display the alias names.

Nota:

La extensión de VS Code solo admite la evaluación de propiedades del modo de Resource Manager. Para más información sobre los modos, consulte las definiciones de modo.

Búsqueda y visualización de definiciones y asignaciones de directivas

La extensión de Azure Policy enumera los tipos de directivas y las asignaciones de directivas como una vista de árbol para las suscripciones seleccionadas, que se mostrarán en el panel Directivas. Los clientes con cientos o miles de definiciones de directivas o asignaciones a una sola suscripción pueden preferir una forma de búsqueda para localizar sus direcciones de directivas o asignaciones. La extensión de Azure Policy permite buscar una directiva o asignación específica con los pasos siguientes:

  1. Empiece la interfaz de búsqueda desde la extensión de Azure Policy o la paleta de comandos.

    • Extensión de Azure Policy

      En la extensión de Azure Policy, mantenga el mouse sobre el panel Directivas y seleccione los puntos suspensivos, luego elija Buscar directivas.

    • Paleta de comandos

      En la barra de menús, vaya a Ver>Paleta de comandos y escriba Azure Policy: Búsqueda de directivas.

  2. Si se selecciona más de una suscripción para mostrarla, use el filtro para elegir la suscripción que se va a buscar.

  3. Use el filtro para elegir el tipo de directiva o la asignación que se va a buscar y que forma parte de la suscripción elegida anteriormente.

  4. Use el filtro para seleccionar la directiva o asignación que se va a mostrar. El filtro funciona para displayName para la definición de directiva o la asignación de directiva.

Cuando se selecciona una asignación o directiva, ya sea mediante la interfaz de búsqueda o al seleccionarla en la vista de árbol, la extensión de Azure Policy abre el archivo JSON que representa esa asignación o directiva y todos sus valores de propiedades de Resource Manager. La extensión puede validar el esquema JSON abierto de Azure Policy.

Exportación de objetos

Los objetos de las suscripciones se pueden exportar a un archivo JSON local. En el panel de Recursos o Directivas, mantenga el mouse sobre el contenido o seleccione un objeto exportable. Al final de la fila resaltada, seleccione el icono de guardar y, a continuación, seleccione una carpeta para guardar los recursos JSON.

Los objetos siguientes se pueden exportar de forma local:

  • Panel de recursos
    • Grupos de recursos
    • Recursos individuales (ya sea en un grupo de recursos o en un proveedor de recursos)
  • Panel de directivas
    • Asignaciones de directivas
    • Definiciones de directiva integradas
    • Definiciones de directivas personalizadas
    • Iniciativas

Examen de evaluación a petición

Un examen de evaluación se puede iniciar con la extensión de Azure Policy para Visual Studio Code. Para iniciar una evaluación, seleccione y ancle cada uno de los objetos siguientes: un recurso, una definición de directiva y una asignación de directiva.

  1. Para anclar cada objeto, selecciónelo en el panel de Recursos o en el panel de Directivas y seleccione el icono "Pin to an edit tab" (Anclar a una pestaña de edición). Al anclar un objeto, éste se agrega al panel de Evaluación de la extensión.
  2. En el panel de Evaluación, seleccione uno de cada objeto y use el icono "Select for evaluation" (Seleccionar para su evaluación) y así poder indicar que está incluido en la evaluación.
  3. En la parte superior del panel Evaluación, seleccione el icono "Run evaluation" (Ejecutar evaluación). Se abrirá un nuevo panel en Visual Studio Code con los detalles de evaluación resultantes en formato JSON.

Nota

En el caso de las definiciones de directivas AuditIfNotExists o DeployIfNotExists, use el icono con el signo "más" en el panel Evaluación o en Azure Policy: Seleccionar un recurso para la comprobación de la existencia (solo se usa para directivas de tipo "if-not-exists") de la Paleta de comandos para seleccionar un recurso relacionado con la comprobación de la existencia.

Los resultados de la evaluación proporcionan información sobre la definición y asignación de directivas junto con la propiedad policyEvaluations.evaluationResult. El resultado es similar al ejemplo siguiente:

{
    "policyEvaluations": [
        {
            "policyInfo": {
                ...
            },
            "evaluationResult": "Compliant",
            "effectDetails": {
                "policyEffect": "Audit",
                "existenceScope": "None"
            }
        }
    ]
}

Nota

La extensión de VS Code solo admite la evaluación de propiedades del modo de Resource Manager. Para más información sobre los modos, consulte las definiciones de modo.

La característica de evaluación no funciona en instalaciones de macOS y Linux de la extensión.

Creación de una definición de directiva a partir de una plantilla de restricción o de mutación

La extensión VS Code puede crear una definición de directiva a partir de una plantilla de restricción GateKeeper v3 de Open Policy Agent (OPA) existente o de una plantilla de mutación. El archivo YAML (YAML no es un lenguaje de marcado) debe estar abierto en VS Code para que la paleta de comandos sea una opción.

  1. Abra un archivo YAML de plantilla de restricción OPA GateKeeper v3 válido.

  2. En la barra de menús, vaya a Ver>Paleta de comandos y escriba Azure Policy para Kubernetes: Crear definición de directiva a partir de la plantilla de restricción o mutación.

  3. Seleccione el valor sourceType adecuado.

  4. Rellene las partes /* EDIT HERE */ del código JSON de la definición de directiva.

Aunque la extensión genera el código JSON de una definición de directiva, no crea la definición en Azure. Una vez que haya rellenado los campos "editar aquí" adecuados, use el código JSON de la definición de directiva completado y Azure Portal o el SDK o compatible para crear la definición de directiva en el entorno de Azure.

Cerrar sesión

En la barra de menús, vaya a Vista>Paleta de comandos y escriba Azure: Sign Out (Cerrar sesión).

Pasos siguientes