¿Qué es Azure Policy?What is Azure Policy?

La gobernanza garantiza que cualquier organización puede alcanzar sus objetivos si usa TI de forma eficaz.Governance validates that your organization can achieve its goals through effective and efficient use of IT. Para satisfacer este requisito, aporta claridad entre los proyectos de TI y los objetivos empresariales.It meets this need by creating clarity between business goals and IT projects.

¿Su empresa experimenta muchos problemas de TI que parecen no resolverse nunca?Does your company experience a significant number of IT issues that never seem to get resolved? Una buena gobernanza de TI implica planear las iniciativas y establecer prioridades a nivel estratégico que faciliten la administración y eviten problemas.Good IT governance involves planning your initiatives and setting priorities on a strategic level to help manage and prevent issues. Es en esta necesidad estratégica donde Azure Policy entra en juego.This strategic need is where Azure Policy comes in.

Azure Policy es un servicio de Azure que se usa para crear, asignar y administrar directivas.Azure Policy is a service in Azure that you use to create, assign, and manage policies. Dichas directivas aplican distintas reglas y efectos a los recursos, con el fin de que estos sigan siendo compatibles con los estándares corporativos y los acuerdos de nivel de servicio.These policies enforce different rules and effects over your resources, so those resources stay compliant with your corporate standards and service level agreements. Azure Policy satisface esta necesidad mediante la evaluación de los recursos que incumplen las directivas asignadas.Azure Policy meets this need by evaluating your resources for non-compliance with assigned policies. Por ejemplo, puede haber una directiva que permita solo un tamaño de SKU concreto de las máquinas virtuales de un entorno.For example, you can have a policy to allow only a certain SKU size of virtual machines in your environment. Una vez que se implementa esta directiva, se evalúa el cumplimiento de los recursos nuevos y existentes.Once this policy is implemented, new and existing resources are evaluated for compliance. Con el tipo correcto de directiva, se puede conseguir el cumplimiento de los recursos existentes.With the right type of policy, existing resources can be brought into compliance. Más adelante se analizará con más detalles cómo crear e implementar directivas con Azure Policy.Later in this documentation, we'll go over more details on how to create and implement policies with Azure Policy.

Importante

La evaluación de cumplimiento de Azure Policy se ofrece ahora para todas las asignaciones independientemente del nivel de precios.Azure Policy's compliance evaluation is now provided for all assignments regardless of pricing tier. Si las asignaciones no muestran los datos de cumplimiento, asegúrese de que la suscripción está registrada con el proveedor de recursos Microsoft.PolicyInsights.If your assignments do not show the compliance data, please ensure that the subscription is registered with the Microsoft.PolicyInsights resource provider.

Nota

Este servicio admite la administración de recursos delegados de Azure, que permite a los proveedores de servicios administrar los recursos y las suscripciones que los clientes han delegado desde dentro del inquilino del proveedor de servicios.This service supports Azure Delegated Resource Management which lets service providers manage resources and subscriptions that customers have delegated from within the service provider's tenant. Para obtener más información, consulte Azure Lighthouse.For more info, see Azure Lighthouse.

¿En qué se diferencia de RBAC?How is it different from RBAC?

Hay algunas diferencias importantes entre Azure Policy y el control de acceso basado en rol (RBAC).There are a few key differences between Azure Policy and role-based access control (RBAC). RBAC se centra en las acciones del usuario en ámbitos diferentes.RBAC focuses on user actions at different scopes. Se le podría agregar al rol de colaborador de un grupo de recursos, para que pueda realizar cambios en dicho grupo.You might be added to the contributor role for a resource group, allowing you to make changes to that resource group. Azure Policy se centra en las propiedades de los recursos durante la implementación y para todos los recursos existentes.Azure Policy focuses on resource properties during deployment and for already existing resources. Azure Policy controla las propiedades como los tipos y las ubicaciones de los recursos.Azure Policy controls properties such as the types or locations of resources. A diferencia de RBAC, Azure Policy es un sistema que permite de manera predeterminada y niega explícitamente.Unlike RBAC, Azure Policy is a default allow and explicit deny system.

Permisos de RBAC en Azure PolicyRBAC Permissions in Azure Policy

Azure Policy dispone de varios permisos, conocidos como operaciones, en dos proveedores de recursos:Azure Policy has several permissions, known as operations, in two Resource Providers:

Muchos roles integrados conceden permiso a recursos de Azure Policy.Many Built-in roles grant permission to Azure Policy resources. El rol Colaborador de directiva de recursos incluye la mayoría de las operaciones de Azure Policy.The Resource Policy Contributor role includes most Azure Policy operations. El rol Propietario tiene derechos completos.Owner has full rights. Tanto el rol Colaborador como Lector pueden usar todas las operaciones de lectura de Azure Policy, pero el rol Colaborador también puede activar la corrección.Both Contributor and Reader can use all read Azure Policy operations, but Contributor can also trigger remediation.

Si ninguno de los roles integrados tiene los permisos necesarios, cree un rol personalizado.If none of the Built-in roles have the permissions required, create a custom role.

Definición de directivaPolicy definition

El proceso de creación e implementación de una directiva en Azure Policy comienza con la creación de una definición de directiva.The journey of creating and implementing a policy in Azure Policy begins with creating a policy definition. Cada definición de directiva tiene condiciones que regulan su aplicación.Every policy definition has conditions under which it's enforced. Además, tiene un efecto definido que se produce cuando se cumplen las condiciones.And, it has a defined effect that takes place if the conditions are met.

En Azure Policy, se ofrecen varias directivas integradas que están disponibles de manera predeterminada.In Azure Policy, we offer several built-in policies that are available by default. Por ejemplo:For example:

  • SKU permitidas de cuentas de almacenamiento: determina si una cuenta de almacenamiento que se va a implementar se engloba dentro de un conjunto de tamaños de SKU.Allowed Storage Account SKUs: Determines if a storage account being deployed is within a set of SKU sizes. Su efecto es denegar todas las cuentas de almacenamiento que no cumplen el conjunto de tamaños de SKU definidos.Its effect is to deny all storage accounts that don't adhere to the set of defined SKU sizes.
  • Tipo de recurso permitido: define los tipos de recursos que se pueden implementar.Allowed Resource Type: Defines the resource types that you can deploy. Su efecto es denegar todos los recursos que no forman parte de esta lista definida.Its effect is to deny all resources that aren't part of this defined list.
  • Ubicaciones permitidas: restringe las ubicaciones disponibles para los nuevos recursos.Allowed Locations: Restricts the available locations for new resources. Su efecto se utiliza para exigir los requisitos de cumplimiento de replicación geográfica.Its effect is used to enforce your geo-compliance requirements.
  • SKU de máquina virtual permitidas: especifica un conjunto de SKU de máquina virtual que se pueden implementar.Allowed Virtual Machine SKUs: Specifies a set of virtual machine SKUs that you can deploy.
  • Agregar una etiqueta a los recursos: aplica una etiqueta obligatoria y su valor predeterminado si la solicitud de implementación no la especifica.Add a tag to resources: Applies a required tag and its default value if it's not specified by the deploy request.
  • Aplicar una etiqueta y su valor: aplica una etiqueta obligatoria y su valor a un recurso.Enforce tag and its value: Enforces a required tag and its value to a resource.
  • Tipos de recursos no permitidos: impide la implementación de una lista de tipos de recursos.Not allowed resource types: Prevents a list of resource types from being deployed.

Para implementar estas definiciones de directiva (tanto las definiciones integradas como las personalizadas), será preciso asignarlas.To implement these policy definitions (both built-in and custom definitions), you'll need to assign them. Puede asignar cualquiera de estas directivas a través de Azure Portal, PowerShell o la CLI de Azure.You can assign any of these policies through the Azure portal, PowerShell, or Azure CLI.

La evaluación de la directiva se realiza con distintas acciones, como la asignación de directivas o las actualizaciones de directiva.Policy evaluation happens with several different actions, such as policy assignment or policy updates. Para obtener una lista completa, vea desencadenadores de evaluación de directivas.For a complete list, see Policy evaluation triggers.

Para obtener más información sobre las estructuras de las definiciones de directiva, consulte Estructura de definición de directiva.To learn more about the structures of policy definitions, review Policy Definition Structure.

Asignación de directivaPolicy assignment

Una asignación de directiva es una definición de directiva que se asignó para que ocurra dentro de un ámbito específico.A policy assignment is a policy definition that has been assigned to take place within a specific scope. Este ámbito puede ir desde un grupo de administración a un grupo de recursos.This scope could range from a management group to a resource group. El término ámbito hace referencia a todos los grupos de recursos, suscripciones o grupos de administración a los que se asigna la definición de directiva.The term scope refers to all the resource groups, subscriptions, or management groups that the policy definition is assigned to. Todos los recursos secundarios heredan las asignaciones de directivas.Policy assignments are inherited by all child resources. Este diseño conlleva que una directiva aplicada a un grupo de recursos también se aplique a los recursos de dicho grupo.This design means that a policy applied to a resource group is also applied to resources in that resource group. Sin embargo, puede excluir un subámbito de la asignación de directiva.However, you can exclude a subscope from the policy assignment.

Por ejemplo, en el ámbito de la suscripción, puede asignar una directiva que impida la creación de recursos de red.For example, at the subscription scope, you can assign a policy that prevents the creation of networking resources. También podría excluir un grupo de recursos en la suscripción que está diseñado para la infraestructura de red.You could exclude a resource group in that subscription that is intended for networking infrastructure. De esta forma, concede acceso a este grupo de recursos de red a los usuarios de confianza con la creación de recursos de red.You then grant access to this networking resource group to users that you trust with creating networking resources.

En otro ejemplo, es posible que desee asignar una directiva de lista de permitidos de tipos de recursos al nivel de grupo de administración.In another example, you might want to assign a resource type allow list policy at the management group level. Y después asigne una directiva más permisiva (para permitir más tipos de recursos) en un grupo de administración secundario o incluso directamente en las suscripciones.And then assign a more permissive policy (allowing more resource types) on a child management group or even directly on subscriptions. Sin embargo, este ejemplo podría no funcionar porque la directiva es un sistema de denegación explícito.However, this example wouldn't work because policy is an explicit deny system. En su lugar, debe excluir el grupo de administración secundario o la suscripción de la asignación de directivas a nivel de grupo de administración.Instead, you need to exclude the child management group or subscription from the management group-level policy assignment. Después, asigne la directiva más permisiva en el grupo de administración secundario o en el nivel de suscripción.Then, assign the more permissive policy on the child management group or subscription level. Si alguna directiva tiene como resultado la denegación de un recurso, la única manera de permitir el recurso es modificar la directiva de denegación.If any policy results in a resource getting denied, then the only way to allow the resource is to modify the denying policy.

Para más información sobre la configuración de las definiciones y asignaciones de directiva mediante el portal, vea Create a policy assignment to identify non-compliant resources in your Azure environment (Creación de una asignación de directiva para identificar recursos no compatibles en el entorno de Azure).For more information on setting policy definitions and assignments through the portal, see Create a policy assignment to identify non-compliant resources in your Azure environment. También hay pasos disponibles para PowerShell y la CLI de Azure.Steps for PowerShell and Azure CLI are also available.

Parámetros de directivaPolicy parameters

Los parámetros de directiva permiten simplificar la administración de directivas reduciendo el número de definiciones de directiva que debe crear.Policy parameters help simplify your policy management by reducing the number of policy definitions you must create. Cuando crea una definición de directiva, puede definir parámetros para que sea más genérica.You can define parameters when creating a policy definition to make it more generic. Después, puede volver a usar esa definición de directiva para diferentes escenarios.Then you can reuse that policy definition for different scenarios. Para ello, transmita distintos valores al asignar la definición de directiva.You do so by passing in different values when assigning the policy definition. Por ejemplo, especifique un conjunto de ubicaciones para una suscripción.For example, specifying one set of locations for a subscription.

Los parámetros se definen cuando se crea una definición de directiva.Parameters are defined when creating a policy definition. Cuando se define un parámetro, se le asigna un nombre y, de manera opcional, un valor.When a parameter is defined, it's given a name and optionally given a value. Por ejemplo, podría definir un parámetro para una directiva denominada location.For example, you could define a parameter for a policy titled location. Después, puede asignarle valores diferentes, como EastUS o WestUS, al asignar una directiva.Then you can give it different values such as EastUS or WestUS when assigning a policy.

Para más información sobre los parámetros de directiva, vea Estructura de definición: Parámetros.For more information about policy parameters, see Definition structure - Parameters.

Definición de iniciativaInitiative definition

Una definición de iniciativa es una colección de definiciones de directiva personalizadas para alcanzar un único objetivo general.An initiative definition is a collection of policy definitions that are tailored towards achieving a singular overarching goal. Las definiciones de iniciativa simplifican la administración y asignación de las definiciones de directiva.Initiative definitions simplify managing and assigning policy definitions. Tal simplificación se realiza mediante la agrupación de un conjunto de directivas como un solo elemento.They simplify by grouping a set of policies as one single item. Por ejemplo, podría crear una iniciativa titulada Habilitar la supervisión en Azure Security Center, con el objetivo de supervisar todas las recomendaciones de seguridad disponibles en Azure Security Center.For example, you could create an initiative titled Enable Monitoring in Azure Security Center, with a goal to monitor all the available security recommendations in your Azure Security Center.

Nota

El SDK, como CLI de Azure y Azure PowerShell, usa propiedades y parámetros denominados PolicySet para hacer referencia a las iniciativas.The SDK, such as Azure CLI and Azure PowerShell, use properties and parameters named PolicySet to refer to initiatives.

En esta iniciativa, tendría definiciones de directiva como las siguientes:Under this initiative, you would have policy definitions such as:

  • Supervisar SQL Database sin cifrar en Security Center, para supervisar servidores y bases de datos SQL sin cifrar.Monitor unencrypted SQL Database in Security Center – For monitoring unencrypted SQL databases and servers.
  • Supervisar las vulnerabilidades del SO en Security Center, para supervisar los servidores que no cumplen con la base de referencia configurada.Monitor OS vulnerabilities in Security Center – For monitoring servers that don't satisfy the configured baseline.
  • Supervisar Endpoint Protection omitido en Security Center, para supervisar los servidores que no tienen instalado un agente de protección de los puntos de conexión.Monitor missing Endpoint Protection in Security Center – For monitoring servers without an installed endpoint protection agent.

Asignación de iniciativaInitiative assignment

Al igual que una asignación de directiva, una asignación de iniciativa es una definición de iniciativa que se asigna a un ámbito específico.Like a policy assignment, an initiative assignment is an initiative definition assigned to a specific scope. Las asignaciones de iniciativa disminuyen la necesidad de crear varias definiciones de iniciativa para cada ámbito.Initiative assignments reduce the need to make several initiative definitions for each scope. Este ámbito también puede abarcar desde un grupo de administración a un grupo de recursos.This scope could also range from a management group to a resource group.

Cada iniciativa se puede asignar a diferentes ámbitos.Each initiative is assignable to different scopes. Una iniciativa se puede asignar tanto a subscriptionA como a subscriptionB.One initiative can be assigned to both subscriptionA and subscriptionB.

Parámetros de iniciativaInitiative parameters

Al igual que los parámetros de directiva, los parámetros de iniciativa permiten simplificar la administración de iniciativas mediante la reducción de la redundancia.Like policy parameters, initiative parameters help simplify initiative management by reducing redundancy. Los parámetros de iniciativa son aquellos que las definiciones de directiva usan dentro de la iniciativa.Initiative parameters are parameters being used by the policy definitions within the initiative.

Por ejemplo, imagine un escenario en el que tiene la definición de una iniciativa (initiativeC), con las definiciones de directiva policyA y policyB, y que cada una de ellas espera un tipo diferente de parámetro:For example, take a scenario where you have an initiative definition - initiativeC, with policy definitions policyA and policyB each expecting a different type of parameter:

DirectivaPolicy Nombre del parámetroName of parameter tipo del parámetroType of parameter Nota:Note
policyApolicyA allowedLocationsallowedLocations arrayarray Este parámetro espera una lista de cadenas para un valor, porque el tipo de parámetro está definido como una matrizThis parameter expects a list of strings for a value since the parameter type has been defined as an array
policyBpolicyB allowedSingleLocationallowedSingleLocation stringstring Este parámetro espera una palabra para un valor, porque el tipo de parámetro se definió como una cadenaThis parameter expects one word for a value since the parameter type has been defined as a string

En este escenario, tiene tres opciones en el momento de definir los parámetros de iniciativa para initiativeC:In this scenario, when defining the initiative parameters for initiativeC, you have three options:

  • Use los parámetros de las definiciones de directiva dentro de esta iniciativa: en este ejemplo, allowedLocations y allowedSingleLocation se convierten en parámetros de iniciativa para initiativeC.Use the parameters of the policy definitions within this initiative: In this example, allowedLocations and allowedSingleLocation become initiative parameters for initiativeC.
  • Proporcione valores a los parámetros de las definiciones de directiva dentro de esta definición de iniciativa.Provide values to the parameters of the policy definitions within this initiative definition. En este ejemplo, puede proporcionar una lista de ubicaciones al parámetro de policyA: allowedLocations y al parámetro de policyB: allowedSingleLocation.In this example, you can provide a list of locations to policyA's parameter – allowedLocations and policyB's parameter – allowedSingleLocation. También puede proporcionar valores cuando asigne esta iniciativa.You can also provide values when assigning this initiative.
  • Proporcione una lista de las opciones de value que se puede usar cuando se asigna esta iniciativa.Provide a list of value options that can be used when assigning this initiative. Cuando asigna esta iniciativa, los parámetros inherentes de las definiciones de directiva dentro de la iniciativa solo pueden tener valores provenientes de esta lista.When you assign this initiative, the inherited parameters from the policy definitions within the initiative, can only have values from this provided list.

Al crear las opciones de valor en una definición de iniciativa, no se puede proporcionar un valor diferente durante la asignación de la iniciativa, porque no forma parte de la lista.When creating value options in an initiative definition, you're unable to input a different value during the initiative assignment because it's not part of the list.

Número máximo de objetos de Azure PolicyMaximum count of Azure Policy objects

Hay un número máximo de cada tipo de objeto de Azure Policy.There's a maximum count for each object type for Azure Policy. Una entrada de Scope significa la suscripción o el grupo de administración.An entry of Scope means either the subscription or the management group.

WhereWhere QuéWhat Número máximoMaximum count
ÁmbitoScope Definiciones de directivaPolicy definitions 500500
ÁmbitoScope Definiciones de iniciativaInitiative definitions 100100
InquilinoTenant Definiciones de iniciativaInitiative definitions 10001,000
ÁmbitoScope Asignaciones de iniciativas o directivasPolicy or initiative assignments 100100
Definición de directivaPolicy definition ParámetrosParameters 2020
Definición de iniciativaInitiative definition DirectivasPolicies 100100
Definición de iniciativaInitiative definition ParámetrosParameters 100100
Asignaciones de iniciativas o directivasPolicy or initiative assignments Exclusiones (notScopes)Exclusions (notScopes) 400400
Regla de directivaPolicy rule Condicionales anidadosNested conditionals 512512

Recomendaciones para la administración de directivasRecommendations for managing policies

A continuación, se ofrecen algunos consejos e indicaciones que se deben tener en cuenta:Here are a few pointers and tips to keep in mind:

  • Comience con un efecto de auditoría en lugar de un efecto de denegación para realizar un seguimiento del impacto de la definición de directiva en los recursos de su entorno.Start with an audit effect instead of a deny effect to track impact of your policy definition on the resources in your environment. Si ya tiene scripts implementados para escalar automáticamente las aplicaciones, establecer un efecto de denegación puede dificultar las tareas de automatización que ya tiene implementadas.If you have scripts already in place to autoscale your applications, setting a deny effect may hinder such automation tasks already in place.

  • Considere las jerarquías organizativas al crear definiciones y asignaciones.Consider organizational hierarchies when creating definitions and assignments. Se recomienda crear definiciones a niveles más altos, como suscripción o grupo de administración.We recommend creating definitions at higher levels such as the management group or subscription level. A continuación, cree la asignación en el siguiente nivel secundario.Then, create the assignment at the next child level. Si crea una definición en un grupo de administración, se puede limitar la asignación a una suscripción o un grupo de recursos dentro de ese grupo de administración.If you create a definition at a management group, the assignment can be scoped down to a subscription or resource group within that management group.

  • Se recomienda crear y asignar las definiciones de iniciativa incluso para una definición de directiva única.We recommend creating and assigning initiative definitions even for a single policy definition. Por ejemplo, tiene la definición de directiva policyDefA y la crea en la definición de iniciativa initiativeDefC.For example, you have policy definition policyDefA and create it under initiative definition initiativeDefC. Si crea otra definición de directiva más adelante para policyDefB con objetivos similares a policyDefA, puede agregarla a initiativeDefC y realizar un seguimiento conjunto.If you create another policy definition later for policyDefB with goals similar to policyDefA, you can add it under initiativeDefC and track them together.

  • Una vez creada una asignación de iniciativa, las definiciones agregadas a la iniciativa también forman parte de esas asignaciones de iniciativas.Once you've created an initiative assignment, policy definitions added to the initiative also become part of that initiatives assignments.

  • Cuando se evalúa una asignación de iniciativa, también se evalúan todas las directivas incluidas en la iniciativa.When an initiative assignment is evaluated, all policies within the initiative are also evaluated. Si necesita evaluar una directiva de forma individual, es mejor no incluirla en una iniciativa.If you need to evaluate a policy individually, it's better to not include it in an initiative.

Introducción en vídeoVideo overview

La siguiente introducción de Azure Policy es de la compilación 2018.The following overview of Azure Policy is from Build 2018. Para descargar diapositivas o el vídeo, visite Govern your Azure environment through Azure Policy (Gobierno de un entorno de Azure mediante Azure Policy) en Channel 9.For slides or video download, visit Govern your Azure environment through Azure Policy on Channel 9.

Pasos siguientesNext steps

Ahora que tiene información general acerca de Azure Policy y algunos de los conceptos clave, se recomienda seguir estos pasos:Now that you have an overview of Azure Policy and some of the key concepts, here are the suggested next steps: