Skip to content

Commit 510187c

Browse files
Gizachew-EshetieGizachew Eshetie
andauthored
Mssql app rule bug fix (Azure#19373)
Co-authored-by: Gizachew Eshetie <[email protected]>
1 parent 1b43fe8 commit 510187c

File tree

5 files changed

+562
-481
lines changed

5 files changed

+562
-481
lines changed

src/Network/Network.Test/ScenarioTests/AzureFirewallPolicyTests.ps1

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,12 @@ function Test-AzureFirewallPolicyCRUD {
5555
$appRule2ProtocolType1 = "http"
5656
$appRule2SourceAddress1 = "192.168.0.0/16"
5757

58+
# AzureFirewallPolicyApplicationRule 3
59+
$appRule3Name = "appRule3"
60+
$appRule3Fqdn1 = "www.ssllabs.com"
61+
$appRule3Protocol1 = "mssql:1433"
62+
$appRule3SourceAddress1 = "192.168.0.0/16"
63+
5864
# AzureFirewallPolicyNetworkRuleCollection
5965
$networkRcName = "networkRc"
6066
$networkRcPriority = 200
@@ -108,13 +114,14 @@ function Test-AzureFirewallPolicyCRUD {
108114
#Create Application Rules
109115
$appRule = New-AzFirewallPolicyApplicationRule -Name $appRule1Name -Description $appRule1Desc -Protocol $appRule1Protocol1, $appRule1Protocol2 -TargetFqdn $appRule1Fqdn1, $appRule1Fqdn2 -SourceAddress $appRule1SourceAddress1
110116
$appRule2 = New-AzFirewallPolicyApplicationRule -Name $appRule2Name -Description $appRule1Desc -Protocol $appRule2Protocol1, $appRule2Protocol2 -TargetFqdn $appRule2Fqdn1 -SourceAddress $appRule2SourceAddress1
117+
$appRule3 = New-AzFirewallPolicyApplicationRule -Name $appRule3Name -Protocol $appRule3Protocol1 -TargetFqdn $appRule3Fqdn1 -SourceAddress $appRule3SourceAddress1
111118

112119
# Create Network Rule
113120
$networkRule = New-AzFirewallPolicyNetworkRule -Name $networkRule1Name -Description $networkRule1Desc -Protocol $networkRule1Protocol1, $networkRule1Protocol2 -SourceAddress $networkRule1SourceAddress1, $networkRule1SourceAddress2 -DestinationAddress $networkRule1DestinationAddress1 -DestinationPort $networkRule1DestinationPort1
114121

115122

116-
# Create Filter Rule with 2 application rules
117-
$appRc = New-AzFirewallPolicyFilterRuleCollection -Name $appRcName -Priority $appRcPriority -Rule $appRule, $appRule2 -ActionType $appRcActionType
123+
# Create Filter Rule with 3 application rules
124+
$appRc = New-AzFirewallPolicyFilterRuleCollection -Name $appRcName -Priority $appRcPriority -Rule $appRule, $appRule2, $appRule3 -ActionType $appRcActionType
118125

119126
# Create a second Filter Rule Collection with 1 network rule
120127
$appRc2 = New-AzFirewallPolicyFilterRuleCollection -Name $networkRcName -Priority $networkRcPriority -Rule $networkRule -ActionType $networkRcActionType
@@ -158,7 +165,7 @@ function Test-AzureFirewallPolicyCRUD {
158165
Assert-AreEqual $appRcName $filterRuleCollection1.Name
159166
Assert-AreEqual $appRcPriority $filterRuleCollection1.Priority
160167
Assert-AreEqual $appRcActionType $filterRuleCollection1.Action.Type
161-
Assert-AreEqual 2 $filterRuleCollection1.Rules.Count
168+
Assert-AreEqual 3 $filterRuleCollection1.Rules.Count
162169

163170
$appRule = $filterRuleCollection1.GetRuleByName($appRule1Name)
164171
# Verify application rule 1
@@ -177,6 +184,20 @@ function Test-AzureFirewallPolicyCRUD {
177184
Assert-AreEqual $appRule1Fqdn1 $appRule.TargetFqdns[0]
178185
Assert-AreEqual $appRule1Fqdn2 $appRule.TargetFqdns[1]
179186

187+
# Verify mssql application rule
188+
$mssqlRule = $filterRuleCollection1.GetRuleByName($appRule3Name)
189+
Assert-AreEqual $appRule3Name $mssqlRule.Name
190+
191+
Assert-AreEqual 1 $mssqlRule.SourceAddresses.Count
192+
Assert-AreEqual $appRule3SourceAddress1 $mssqlRule.SourceAddresses[0]
193+
194+
Assert-AreEqual 1 $mssqlRule.Protocols.Count
195+
Assert-AreEqual "mssql" $mssqlRule.Protocols[0].ProtocolType
196+
Assert-AreEqual 1433 $mssqlRule.Protocols[0].Port
197+
198+
Assert-AreEqual 1 $mssqlRule.TargetFqdns.Count
199+
Assert-AreEqual $appRule3Fqdn1 $mssqlRule.TargetFqdns[0]
200+
180201
# Verify Filter Rule Collection2
181202
Assert-AreEqual $networkRcName $filterRuleCollection2.Name
182203
Assert-AreEqual $networkRcPriority $filterRuleCollection2.Priority

0 commit comments

Comments
 (0)