This repository has been archived by the owner on May 24, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 10
/
Copy pathpolicydefinition-deny_storage_mintls.tf
96 lines (91 loc) · 2.6 KB
/
policydefinition-deny_storage_mintls.tf
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
# This file was auto generated
resource "azurerm_policy_definition" "deny_storage_mintls" {
name = "Deny-Storage-minTLS"
policy_type = "Custom"
mode = "All"
display_name = "Storage Account set to minumum TLS and Secure transfer should be enabled"
description = "Audit requirement of Secure transfer in your storage account. Secure transfer is an option that forces your storage account to accept requests only from secure connections (HTTPS). Use of HTTPS ensures authentication between the server and the service and protects data in transit from network layer attacks such as man-in-the-middle, eavesdropping, and session-hijacking"
metadata = <<METADATA
{
"version": "1.0.0",
"category": "Storage"
}
METADATA
management_group_name = var.management_group_name
policy_rule = <<POLICYRULE
{
"if": {
"allOf": [
{
"field": "type",
"equals": "Microsoft.Storage/storageAccounts"
},
{
"anyOf": [
{
"allOf": [
{
"value": "[requestContext().apiVersion]",
"less": "2019-04-01"
},
{
"field": "Microsoft.Storage/storageAccounts/supportsHttpsTrafficOnly",
"exists": "false"
}
]
},
{
"field": "Microsoft.Storage/storageAccounts/supportsHttpsTrafficOnly",
"equals": "false"
},
{
"field": "Microsoft.Storage/storageAccounts/minimumTlsVersion",
"notequals": "[parameters('minimumTlsVersion')]"
},
{
"field": "Microsoft.Storage/storageAccounts/minimumTlsVersion",
"exists": "false"
}
]
}
]
},
"then": {
"effect": "[parameters('effect')]"
}
}
POLICYRULE
parameters = <<PARAMETERS
{
"effect": {
"type": "String",
"defaultValue": "Deny",
"allowedValues": [
"Audit",
"Deny",
"Disabled"
],
"metadata": {
"displayName": "Effect",
"description": "The effect determines what happens when the policy rule is evaluated to match"
}
},
"minimumTlsVersion": {
"type": "String",
"defaultValue": "TLS1_2",
"allowedValues": [
"TLS1_2",
"TLS1_1",
"TLS1_0"
],
"metadata": {
"displayName": "Storage Account select minimum TLS version",
"description": "Select version minimum TLS version on Azure Storage Account to enforce"
}
}
}
PARAMETERS
}
output "policydefinition_deny_storage_mintls" {
value = azurerm_policy_definition.deny_storage_mintls
}