-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathVNETMaxAddressSpaces.bicep
More file actions
58 lines (56 loc) · 1.44 KB
/
VNETMaxAddressSpaces.bicep
File metadata and controls
58 lines (56 loc) · 1.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
targetScope = 'managementGroup'
resource policy 'Microsoft.Authorization/policyDefinitions@2021-06-01' = {
name: 'Max VNET address spaces allowed'
properties: {
policyType: 'Custom'
description: 'Maximum amount of Address Spaces allowed per VNET'
displayName: 'Max VNET Address Spaces allowed'
mode: 'All'
metadata: {
'category': 'Network'
}
parameters: {
'MaxAddressSpaces': {
'type': 'Integer'
'defaultValue': 1
'metadata': {
'description': 'Maximum amount of Address Spaces allowed on VNETs'
'displayName': 'Max. VNET Address Spaces'
}
}
'effect': {
'type': 'String'
'metadata': {
'displayName': 'Effect'
'description': 'Enable or disable the execution of the policy.'
}
'allowedValues': [
'audit'
'deny'
'disabled'
]
'defaultValue': 'deny'
}
}
policyRule: {
'if': {
'allOf': [
{
'field': 'type'
'equals': 'Microsoft.Network/virtualNetworks'
}
{
'count': {
'field': 'Microsoft.Network/virtualNetworks/addressSpace.addressPrefixes[*]'
}
'greater': '[parameters(\'MaxAddressSpaces\')]'
}
]
}
'then': {
'effect': '[parameters(\'effect\')]'
}
}
}
}
output policyID string = policy.id