Skip to content

Commit 93f1ead

Browse files
authored
Merge pull request #96765 from DCtheGeek/dmc-policy-overview
Updating Overview
2 parents 613854a + 0ffb023 commit 93f1ead

File tree

1 file changed

+73
-50
lines changed

1 file changed

+73
-50
lines changed

articles/governance/policy/overview.md

Lines changed: 73 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,26 @@
11
---
22
title: Overview of Azure Policy
33
description: Azure Policy is a service in Azure, that you use to create, assign and, manage policy definitions in your Azure environment.
4-
ms.date: 12/06/2018
4+
ms.date: 11/21/2019
55
ms.topic: overview
66
---
77
# Overview of the Azure Policy service
88

99
Governance validates that your organization can achieve its goals through effective and efficient
1010
use of IT. It meets this need by creating clarity between business goals and IT projects.
1111

12-
Does your company experience a significant number of IT issues that never seem to get resolved?
13-
Good IT governance involves planning your initiatives and setting priorities on a strategic level
14-
to help manage and prevent issues. This strategic need is where Azure Policy comes in.
12+
Does your company experience a significant number of IT issues that never seem to get resolved? Good
13+
IT governance involves planning your initiatives and setting priorities on a strategic level to help
14+
manage and prevent issues. This strategic need is where Azure Policy comes in.
1515

1616
Azure Policy is a service in Azure that you use to create, assign, and manage policies. These
1717
policies enforce different rules and effects over your resources, so those resources stay compliant
1818
with your corporate standards and service level agreements. Azure Policy meets this need by
1919
evaluating your resources for non-compliance with assigned policies. For example, you can have a
20-
policy to allow only a certain SKU size of virtual machines in your environment. Once this policy
21-
is implemented, new and existing resources are evaluated for compliance. With the right type of
22-
policy, existing resources can be brought into compliance. Later in this documentation, we'll go
23-
over more details on how to create and implement policies with Azure Policy.
20+
policy to allow only a certain SKU size of virtual machines in your environment. Once this policy is
21+
implemented, new and existing resources are evaluated for compliance. With the right type of policy,
22+
existing resources can be brought into compliance. Later in this documentation, we'll go over more
23+
details on how to create and implement policies with Azure Policy.
2424

2525
> [!IMPORTANT]
2626
> Azure Policy's compliance evaluation is now provided for all assignments
@@ -50,7 +50,8 @@ role includes most Azure Policy operations. **Owner** has full rights. Both **Co
5050
**Reader** can use all read Azure Policy operations, but **Contributor** can also trigger
5151
remediation.
5252

53-
If none of the Built-in roles have the permissions required, create a [custom role](../../role-based-access-control/custom-roles.md).
53+
If none of the Built-in roles have the permissions required, create a
54+
[custom role](../../role-based-access-control/custom-roles.md).
5455

5556
## Policy definition
5657

@@ -60,11 +61,16 @@ effect that takes place if the conditions are met.
6061

6162
In Azure Policy, we offer several built-in policies that are available by default. For example:
6263

63-
- **Allowed Storage Account SKUs**: Determines if a storage account being deployed is within a set of SKU sizes. Its effect is to deny all storage accounts that don't adhere to the set of defined SKU sizes.
64-
- **Allowed Resource Type**: Defines the resource types that you can deploy. Its effect is to deny all resources that aren't part of this defined list.
65-
- **Allowed Locations**: Restricts the available locations for new resources. Its effect is used to enforce your geo-compliance requirements.
64+
- **Allowed Storage Account SKUs**: Determines if a storage account being deployed is within a set
65+
of SKU sizes. Its effect is to deny all storage accounts that don't adhere to the set of defined
66+
SKU sizes.
67+
- **Allowed Resource Type**: Defines the resource types that you can deploy. Its effect is to deny
68+
all resources that aren't part of this defined list.
69+
- **Allowed Locations**: Restricts the available locations for new resources. Its effect is used to
70+
enforce your geo-compliance requirements.
6671
- **Allowed Virtual Machine SKUs**: Specifies a set of virtual machine SKUs that you can deploy.
67-
- **Add a tag to resources**: Applies a required tag and its default value if it's not specified by the deploy request.
72+
- **Add a tag to resources**: Applies a required tag and its default value if it's not specified by
73+
the deploy request.
6874
- **Enforce tag and its value**: Enforces a required tag and its value to a resource.
6975
- **Not allowed resource types**: Prevents a list of resource types from being deployed.
7076

@@ -75,7 +81,8 @@ Policy evaluation happens with several different actions, such as policy assignm
7581
updates. For a complete list, see [Policy evaluation
7682
triggers](./how-to/get-compliance-data.md#evaluation-triggers).
7783

78-
To learn more about the structures of policy definitions, review [Policy Definition Structure](./concepts/definition-structure.md).
84+
To learn more about the structures of policy definitions, review
85+
[Policy Definition Structure](./concepts/definition-structure.md).
7986

8087
## Policy assignment
8188

@@ -88,8 +95,8 @@ in that resource group. However, you can exclude a subscope from the policy assi
8895

8996
For example, at the subscription scope, you can assign a policy that prevents the creation of
9097
networking resources. You could exclude a resource group in that subscription that is intended for
91-
networking infrastructure. You then grant access to this networking resource group to users that
92-
you trust with creating networking resources.
98+
networking infrastructure. You then grant access to this networking resource group to users that you
99+
trust with creating networking resources.
93100

94101
In another example, you might want to assign a resource type allow list policy at the management
95102
group level. And then assign a more permissive policy (allowing more resource types) on a child
@@ -99,8 +106,8 @@ subscription from the management group-level policy assignment. Then, assign the
99106
policy on the child management group or subscription level. If any policy results in a resource
100107
getting denied, then the only way to allow the resource is to modify the denying policy.
101108

102-
For more information on setting policy definitions and assignments through the portal, see [Create
103-
a policy assignment to identify non-compliant resources in your Azure
109+
For more information on setting policy definitions and assignments through the portal, see [Create a
110+
policy assignment to identify non-compliant resources in your Azure
104111
environment](assign-policy-portal.md). Steps for [PowerShell](assign-policy-powershell.md) and
105112
[Azure CLI](assign-policy-azurecli.md) are also available.
106113

@@ -112,12 +119,13 @@ generic. Then you can reuse that policy definition for different scenarios. You
112119
different values when assigning the policy definition. For example, specifying one set of locations
113120
for a subscription.
114121

115-
Parameters are defined when creating a policy definition. When a parameter is defined, it's
116-
given a name and optionally given a value. For example, you could define a parameter for a policy
117-
titled *location*. Then you can give it different values such as *EastUS* or *WestUS* when
118-
assigning a policy.
122+
Parameters are defined when creating a policy definition. When a parameter is defined, it's given a
123+
name and optionally given a value. For example, you could define a parameter for a policy titled
124+
*location*. Then you can give it different values such as *EastUS* or *WestUS* when assigning a
125+
policy.
119126

120-
For more information about policy parameters, see [Definition structure - Parameters](./concepts/definition-structure.md#parameters).
127+
For more information about policy parameters, see
128+
[Definition structure - Parameters](./concepts/definition-structure.md#parameters).
121129

122130
## Initiative definition
123131

@@ -127,11 +135,18 @@ definitions. They simplify by grouping a set of policies as one single item. For
127135
create an initiative titled **Enable Monitoring in Azure Security Center**, with a goal to monitor
128136
all the available security recommendations in your Azure Security Center.
129137

138+
> [!NOTE]
139+
> The SDK, such as Azure CLI and Azure PowerShell, use properties and parameters named **PolicySet**
140+
> to refer to initiatives.
141+
130142
Under this initiative, you would have policy definitions such as:
131143

132-
- **Monitor unencrypted SQL Database in Security Center** – For monitoring unencrypted SQL databases and servers.
133-
- **Monitor OS vulnerabilities in Security Center** – For monitoring servers that don't satisfy the configured baseline.
134-
- **Monitor missing Endpoint Protection in Security Center** – For monitoring servers without an installed endpoint protection agent.
144+
- **Monitor unencrypted SQL Database in Security Center** – For monitoring unencrypted SQL databases
145+
and servers.
146+
- **Monitor OS vulnerabilities in Security Center** – For monitoring servers that don't satisfy the
147+
configured baseline.
148+
- **Monitor missing Endpoint Protection in Security Center** – For monitoring servers without an
149+
installed endpoint protection agent.
135150

136151
## Initiative assignment
137152

@@ -148,7 +163,8 @@ Like policy parameters, initiative parameters help simplify initiative managemen
148163
redundancy. Initiative parameters are parameters being used by the policy definitions within the
149164
initiative.
150165

151-
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:
166+
For example, take a scenario where you have an initiative definition - **initiativeC**, with policy
167+
definitions **policyA** and **policyB** each expecting a different type of parameter:
152168

153169
| Policy | Name of parameter |Type of parameter |Note |
154170
|---|---|---|---|
@@ -158,9 +174,15 @@ For example, take a scenario where you have an initiative definition - **initiat
158174
In this scenario, when defining the initiative parameters for **initiativeC**, you have three
159175
options:
160176

161-
- Use the parameters of the policy definitions within this initiative: In this example, *allowedLocations* and *allowedSingleLocation* become initiative parameters for **initiativeC**.
162-
- Provide values to the parameters of the policy definitions within this initiative definition. In this example, you can provide a list of locations to **policyA's parameter – allowedLocations** and **policyB's parameter – allowedSingleLocation**. You can also provide values when assigning this initiative.
163-
- Provide a list of *value* options that can be used when assigning this initiative. When you assign this initiative, the inherited parameters from the policy definitions within the initiative, can only have values from this provided list.
177+
- Use the parameters of the policy definitions within this initiative: In this example,
178+
*allowedLocations* and *allowedSingleLocation* become initiative parameters for **initiativeC**.
179+
- Provide values to the parameters of the policy definitions within this initiative definition. In
180+
this example, you can provide a list of locations to **policyA's parameter – allowedLocations**
181+
and **policyB's parameter – allowedSingleLocation**. You can also provide values when assigning
182+
this initiative.
183+
- Provide a list of *value* options that can be used when assigning this initiative. When you assign
184+
this initiative, the inherited parameters from the policy definitions within the initiative, can
185+
only have values from this provided list.
164186

165187
When creating value options in an initiative definition, you're unable to input a different value
166188
during the initiative assignment because it's not part of the list.
@@ -174,30 +196,31 @@ during the initiative assignment because it's not part of the list.
174196
Here are a few pointers and tips to keep in mind:
175197

176198
- Start with an audit effect instead of a deny effect to track impact of your policy definition on
177-
the resources in your environment. If you have scripts already in place to autoscale your
178-
applications, setting a deny effect may hinder such automation tasks already in place.
199+
the resources in your environment. If you have scripts already in place to autoscale your
200+
applications, setting a deny effect may hinder such automation tasks already in place.
179201

180202
- Consider organizational hierarchies when creating definitions and assignments. We recommend
181-
creating definitions at higher levels such as the management group or subscription level. Then,
182-
create the assignment at the next child level. If you create a definition at a management group,
183-
the assignment can be scoped down to a subscription or resource group within that management group.
203+
creating definitions at higher levels such as the management group or subscription level. Then,
204+
create the assignment at the next child level. If you create a definition at a management group,
205+
the assignment can be scoped down to a subscription or resource group within that management
206+
group.
184207

185208
- We recommend creating and assigning initiative definitions even for a single policy definition.
186-
For example, you have policy definition *policyDefA* and create it under initiative definition
187-
*initiativeDefC*. If you create another policy definition later for *policyDefB* with goals similar
188-
to *policyDefA*, you can add it under *initiativeDefC* and track them together.
209+
For example, you have policy definition *policyDefA* and create it under initiative definition
210+
*initiativeDefC*. If you create another policy definition later for *policyDefB* with goals
211+
similar to *policyDefA*, you can add it under *initiativeDefC* and track them together.
189212

190-
- Once you've created an initiative assignment, policy definitions added to the initiative also become
191-
part of that initiatives assignments.
213+
- Once you've created an initiative assignment, policy definitions added to the initiative also
214+
become part of that initiatives assignments.
192215

193-
- When an initiative assignment is evaluated, all policies within the initiative are also
194-
evaluated. If you need to evaluate a policy individually, it's better to not include it in an
195-
initiative.
216+
- When an initiative assignment is evaluated, all policies within the initiative are also evaluated.
217+
If you need to evaluate a policy individually, it's better to not include it in an initiative.
196218

197219
## Video overview
198220

199-
The following overview of Azure Policy is from Build 2018. For slides or video download,
200-
visit [Govern your Azure environment through Azure Policy](https://channel9.msdn.com/events/Build/2018/THR2030) on Channel 9.
221+
The following overview of Azure Policy is from Build 2018. For slides or video download, visit
222+
[Govern your Azure environment through Azure Policy](https://channel9.msdn.com/events/Build/2018/THR2030)
223+
on Channel 9.
201224

202225
> [!VIDEO https://www.youtube.com/embed/dxMaYF2GB7o]
203226
@@ -206,8 +229,8 @@ visit [Govern your Azure environment through Azure Policy](https://channel9.msdn
206229
Now that you have an overview of Azure Policy and some of the key concepts, here are the suggested
207230
next steps:
208231

209-
- [Assign a policy definition using the portal](assign-policy-portal.md).
210-
- [Assign a policy definition using the Azure CLI](assign-policy-azurecli.md).
211-
- [Assign a policy definition using PowerShell](assign-policy-powershell.md).
212-
- Review what a management group is with [Organize your resources with Azure management groups](..//management-groups/overview.md).
213-
- View [Govern your Azure environment through Azure Policy](https://channel9.msdn.com/events/Build/2018/THR2030) on Channel 9.
232+
- [Assign a policy definition using the portal](./assign-policy-portal.md).
233+
- [Assign a policy definition using the Azure CLI](./assign-policy-azurecli.md).
234+
- [Assign a policy definition using PowerShell](./assign-policy-powershell.md).
235+
- Review what a management group is with [Organize your resources with Azure management groups](../management-groups/overview.md).
236+
- View [Govern your Azure environment through Azure Policy](https://channel9.msdn.com/events/Build/2018/THR2030) on Channel 9.

0 commit comments

Comments
 (0)