Skip to content

Commit 5c3868d

Browse files
[EventHub] TrustedServiceAccess bug fix. (#18128)
* Fixing bug * Fixes
1 parent fefc3fd commit 5c3868d

File tree

11 files changed

+2815
-1380
lines changed

11 files changed

+2815
-1380
lines changed

src/EventHub/EventHub.Test/ScenarioTests/NetworkRuleSetTests.ps1

Lines changed: 29 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -116,17 +116,43 @@ function NetworkRuleSetTests
116116
Assert-AreEqual $setResult2.IpRules.Count 3 "Set - IPRules count did not matched"
117117
Assert-AreEqual $setResult2.PublicNetworkAccess "Enabled"
118118
Assert-AreEqual $setResult2.DefaultAction "Allow"
119-
Assert-True {$setResult.TrustedServiceAccessEnabled}
119+
Assert-True {$setResult2.TrustedServiceAccessEnabled}
120+
121+
$setResult2 = Set-AzEventHubNetworkRuleSet -ResourceGroup $resourceGroupName -Name $namespaceName2 -PublicNetworkAccess "Disabled"
122+
Assert-AreEqual $setResult2.VirtualNetworkRules.Count 3 "Set -VirtualNetworkRules count did not matched"
123+
Assert-AreEqual $setResult2.IpRules.Count 3 "Set - IPRules count did not matched"
124+
Assert-AreEqual $setResult2.PublicNetworkAccess "Disabled"
125+
Assert-AreEqual $setResult2.DefaultAction "Allow"
126+
127+
$setResult2 = Set-AzEventHubNetworkRuleSet -ResourceGroup $resourceGroupName -Name $namespaceName2 -PublicNetworkAccess "Enabled"
128+
Assert-AreEqual $setResult2.VirtualNetworkRules.Count 3 "Set -VirtualNetworkRules count did not matched"
129+
Assert-AreEqual $setResult2.IpRules.Count 3 "Set - IPRules count did not matched"
130+
Assert-AreEqual $setResult2.PublicNetworkAccess "Enabled"
131+
Assert-AreEqual $setResult2.DefaultAction "Allow"
132+
133+
$setResult2 = Set-AzEventHubNetworkRuleSet -ResourceGroup $resourceGroupName -Name $namespaceName2 -TrustedServiceAccessEnabled
134+
Assert-AreEqual $setResult2.VirtualNetworkRules.Count 3 "Set -VirtualNetworkRules count did not matched"
135+
Assert-AreEqual $setResult2.IpRules.Count 3 "Set - IPRules count did not matched"
136+
Assert-AreEqual $setResult2.PublicNetworkAccess "Enabled"
137+
Assert-AreEqual $setResult2.DefaultAction "Allow"
138+
Assert-True {$setResult2.TrustedServiceAccessEnabled}
139+
140+
$setResult2 = Set-AzEventHubNetworkRuleSet -ResourceGroup $resourceGroupName -Name $namespaceName2 -TrustedServiceAccessEnabled:$false
141+
Assert-AreEqual $setResult2.VirtualNetworkRules.Count 3 "Set -VirtualNetworkRules count did not matched"
142+
Assert-AreEqual $setResult2.IpRules.Count 3 "Set - IPRules count did not matched"
143+
Assert-AreEqual $setResult2.PublicNetworkAccess "Enabled"
144+
Assert-AreEqual $setResult2.DefaultAction "Allow"
145+
Assert-AreEqual $setResult2.TrustedServiceAccessEnabled $null
120146

121147
$a, $b, $c = $setResult2.IpRules
122-
$setResult2.IpRules = $c = [Microsoft.Azure.Commands.EventHub.Models.PSNWRuleSetIpRulesAttributes[]]@($a, $b)
148+
$setResult2.IpRules = [Microsoft.Azure.Commands.EventHub.Models.PSNWRuleSetIpRulesAttributes[]]@($a, $b)
123149

124150
$setResult2 = Set-AzEventHubNetworkRuleSet -ResourceGroup $resourceGroupName -Name $namespaceName2 -IPRule $setResult2.IpRules
125151
Assert-AreEqual $setResult2.VirtualNetworkRules.Count 3 "Set -VirtualNetworkRules count did not matched"
126152
Assert-AreEqual $setResult2.IpRules.Count 2 "Set - IPRules count did not matched"
127153
Assert-AreEqual $setResult2.PublicNetworkAccess "Enabled"
128154
Assert-AreEqual $setResult2.DefaultAction "Allow"
129-
Assert-True {$setResult.TrustedServiceAccessEnabled}
155+
Assert-AreEqual $setResult2.TrustedServiceAccessEnabled $null
130156

131157
Write-Debug "Add a new VirtualNetworkRule to the default NetworkRuleSet"
132158
$result = Remove-AzEventHubVirtualNetworkRule -ResourceGroup $resourceGroupName -Name $namespaceName -SubnetId "/subscriptions/326100e2-f69d-4268-8503-075374f62b6e/resourcegroups/v-ajnavtest/providers/Microsoft.Network/virtualNetworks/sbehvnettest1/subnets/default"

src/EventHub/EventHub.Test/SessionRecords/Microsoft.Azure.Commands.EventHub.Test.ScenarioTests.NetworkRuleSetTests/NetworkRuleSetCRUD.json

Lines changed: 1221 additions & 604 deletions
Large diffs are not rendered by default.

src/EventHub/EventHub/Cmdlets/NetworkRuleSet/SetAzureEventHubNetworkrule.cs

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
1616
using Microsoft.Azure.Commands.ResourceManager.Common.Tags;
1717
using Microsoft.Azure.Management.Internal.Resources.Utilities.Models;
18+
using Microsoft.WindowsAzure.Commands.Utilities.Common;
1819
using System.Linq;
1920
using System.Management.Automation;
2021

@@ -81,10 +82,17 @@ public override void ExecuteCmdlet()
8182
{
8283
if (ParameterSetName.Equals(NetwrokruleSetPropertiesParameterSet))
8384
{
85+
bool? trustedServiceAccessEnabled = null;
86+
87+
if(this.IsParameterBound(c => c.TrustedServiceAccessEnabled) == true)
88+
{
89+
trustedServiceAccessEnabled = TrustedServiceAccessEnabled.IsPresent;
90+
}
91+
8492
WriteObject(Client.UpdateNetworkRuleSet(resourceGroupName: ResourceGroupName,
8593
namespaceName: Name,
8694
publicNetworkAccess: PublicNetworkAccess,
87-
trustedServiceAccessEnabled: TrustedServiceAccessEnabled,
95+
trustedServiceAccessEnabled: trustedServiceAccessEnabled,
8896
defaultAction: DefaultAction,
8997
iPRule: IPRule,
9098
virtualNetworkRule: VirtualNetworkRule));

src/EventHub/EventHub/Models/PSNetworkRuleSetAttributes.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,6 @@ public PSNetworkRuleSetAttributes(NetworkRuleSet networkRuleSet)
5252
Name = networkRuleSet.Name;
5353
Type = networkRuleSet.Type;
5454
PublicNetworkAccess = networkRuleSet?.PublicNetworkAccess;
55-
TrustedServiceAccessEnabled = networkRuleSet?.TrustedServiceAccessEnabled;
5655
}
5756

5857
/// <summary>

src/EventHub/EventHub/Utilities/EventHubsClient.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -881,7 +881,7 @@ public PSNetworkRuleSetAttributes UpdateNetworkRuleSet(string resourceGroupName,
881881
networkRuleSet.PublicNetworkAccess = publicNetworkAccess;
882882
}
883883

884-
if (trustedServiceAccessEnabled == true)
884+
if (trustedServiceAccessEnabled != null)
885885
{
886886
networkRuleSet.TrustedServiceAccessEnabled = trustedServiceAccessEnabled;
887887
}

src/ServiceBus/ServiceBus.Test/ScenarioTests/NetworkRuleSetTests.ps1

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,37 @@ function NetworkRuleSetTests {
109109
Assert-AreEqual $setResult.DefaultAction "Allow"
110110
Assert-True {$setResult.TrustedServiceAccessEnabled}
111111

112+
$a, $b, $c = $setResult.IpRules
113+
$setResult.IpRules = [Microsoft.Azure.Commands.ServiceBus.Models.PSNWRuleSetIpRulesAttributes[]]@($a, $b)
114+
115+
$setResult2 = Set-AzServiceBusNetworkRuleSet -ResourceGroup $resourceGroupName -Name $namespaceName2 -IPRule $setResult.IpRules
116+
Assert-AreEqual $setResult2.VirtualNetworkRules.Count 3 "Set -VirtualNetworkRules count did not matched"
117+
Assert-AreEqual $setResult2.IpRules.Count 2 "Set - IPRules count did not matched"
118+
Assert-AreEqual $setResult2.PublicNetworkAccess "Disabled"
119+
Assert-AreEqual $setResult2.DefaultAction "Allow"
120+
Assert-True {$setResult2.TrustedServiceAccessEnabled}
121+
122+
$setResult2 = Set-AzServiceBusNetworkRuleSet -ResourceGroup $resourceGroupName -Name $namespaceName2 -TrustedServiceAccessEnabled:$false
123+
Assert-AreEqual $setResult2.VirtualNetworkRules.Count 3 "Set -VirtualNetworkRules count did not matched"
124+
Assert-AreEqual $setResult2.IpRules.Count 2 "Set - IPRules count did not matched"
125+
Assert-AreEqual $setResult2.PublicNetworkAccess "Disabled"
126+
Assert-AreEqual $setResult2.DefaultAction "Allow"
127+
Assert-AreEqual $setResult2.TrustedServiceAccessEnabled $null
128+
129+
$setResult2 = Set-AzServiceBusNetworkRuleSet -ResourceGroup $resourceGroupName -Name $namespaceName2 -PublicNetworkAccess "Enabled"
130+
Assert-AreEqual $setResult2.VirtualNetworkRules.Count 3 "Set -VirtualNetworkRules count did not matched"
131+
Assert-AreEqual $setResult2.IpRules.Count 2 "Set - IPRules count did not matched"
132+
Assert-AreEqual $setResult2.PublicNetworkAccess "Enabled"
133+
Assert-AreEqual $setResult2.DefaultAction "Allow"
134+
Assert-AreEqual $setResult2.TrustedServiceAccessEnabled $null
135+
136+
$setResult2 = Set-AzServiceBusNetworkRuleSet -ResourceGroup $resourceGroupName -Name $namespaceName2 -TrustedServiceAccessEnabled
137+
Assert-AreEqual $setResult2.VirtualNetworkRules.Count 3 "Set -VirtualNetworkRules count did not matched"
138+
Assert-AreEqual $setResult2.IpRules.Count 2 "Set - IPRules count did not matched"
139+
Assert-AreEqual $setResult2.PublicNetworkAccess "Enabled"
140+
Assert-AreEqual $setResult2.DefaultAction "Allow"
141+
Assert-True {$setResult2.TrustedServiceAccessEnabled}
142+
112143
# Set-AzServiceBusNetworkRuleSet with Resource ID
113144
$setResult1 = Set-AzServiceBusNetworkRuleSet -ResourceGroup $resourceGroupName -Name $namespaceName2 -ResourceId $getResult.Id
114145
Assert-AreEqual $setResult1.IpRules.Count 2 "Set1 - IPRules count did not matched after deleting one IPRule"

src/ServiceBus/ServiceBus.Test/ScenarioTests/ServiceBusServiceTests.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ function MSITest{
274274
Assert-AreEqual $namespace.IdentityType "SystemAssignedUserAssigned"
275275
Assert-True { $namespace.IdentityId.Count -eq 2 }
276276

277-
$namespace = Set-AzServiceBusNamespace -ResourceGroupName $resourceGroupName -Name $namespace1 -IdentityType "None"
277+
$namespace = Set-AzServiceBusNamespace -ResourceGroupName $resourceGroupName -Name $namespace1 -IdentityType "None" -IdentityId @()
278278
Assert-AreEqual $namespace.Name $namespace1
279279
Assert-AreEqual $namespace.Sku.Name "Standard"
280280
Assert-Null $namespace.Identity

src/ServiceBus/ServiceBus.Test/SessionRecords/Microsoft.Azure.Commands.ServiceBus.Test.ScenarioTests.NetworkRuleSetTests/NetworkRuleSetCRUD.json

Lines changed: 1511 additions & 759 deletions
Large diffs are not rendered by default.

src/ServiceBus/ServiceBus.sln

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TestFx", "..\..\tools\TestF
2222
EndProject
2323
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "KeyVault", "..\KeyVault\KeyVault\KeyVault.csproj", "{17E839DC-E8A6-4F76-A944-4D5D78750A14}"
2424
EndProject
25-
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ManagedServiceIdentity", "..\ManagedServiceIdentity\Az.ManagedServiceIdentity.csproj", "{F74BF6BC-707A-4009-8966-C6DD0FD366C9}"
26-
EndProject
2725
Global
2826
GlobalSection(SolutionConfigurationPlatforms) = preSolution
2927
Debug|Any CPU = Debug|Any CPU
@@ -66,18 +64,13 @@ Global
6664
{17E839DC-E8A6-4F76-A944-4D5D78750A14}.Debug|Any CPU.Build.0 = Debug|Any CPU
6765
{17E839DC-E8A6-4F76-A944-4D5D78750A14}.Release|Any CPU.ActiveCfg = Release|Any CPU
6866
{17E839DC-E8A6-4F76-A944-4D5D78750A14}.Release|Any CPU.Build.0 = Release|Any CPU
69-
{F74BF6BC-707A-4009-8966-C6DD0FD366C9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
70-
{F74BF6BC-707A-4009-8966-C6DD0FD366C9}.Debug|Any CPU.Build.0 = Debug|Any CPU
71-
{F74BF6BC-707A-4009-8966-C6DD0FD366C9}.Release|Any CPU.ActiveCfg = Release|Any CPU
72-
{F74BF6BC-707A-4009-8966-C6DD0FD366C9}.Release|Any CPU.Build.0 = Release|Any CPU
7367
EndGlobalSection
7468
GlobalSection(SolutionProperties) = preSolution
7569
HideSolutionNode = FALSE
7670
EndGlobalSection
7771
GlobalSection(NestedProjects) = preSolution
7872
{B36F96EC-A9C1-4C86-B406-472FF4458C9E} = {95C16AED-FD57-42A0-86C3-2CF4300A4817}
7973
{17E839DC-E8A6-4F76-A944-4D5D78750A14} = {95C16AED-FD57-42A0-86C3-2CF4300A4817}
80-
{F74BF6BC-707A-4009-8966-C6DD0FD366C9} = {95C16AED-FD57-42A0-86C3-2CF4300A4817}
8174
EndGlobalSection
8275
GlobalSection(ExtensibilityGlobals) = postSolution
8376
SolutionGuid = {17506674-1FDE-4F1D-A97F-2C565FA7198D}

src/ServiceBus/ServiceBus/Cmdlets/NetworkRuleSet/SetAzureServiceBusNetworkrule.cs

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
using Microsoft.Azure.Management.Internal.Resources.Utilities.Models;
1717
using System.Linq;
1818
using System.Management.Automation;
19+
using Microsoft.WindowsAzure.Commands.Utilities.Common;
1920

2021
namespace Microsoft.Azure.Commands.ServiceBus.Commands.NetworkruleSet
2122
{
@@ -79,10 +80,18 @@ public override void ExecuteCmdlet()
7980

8081
if (ParameterSetName.Equals(NetworkRuleSetPropertiesParameterSet))
8182
{
83+
bool? trustedServiceAccessEnabled = null;
84+
85+
if (this.IsParameterBound(c => c.TrustedServiceAccessEnabled) == true)
86+
{
87+
trustedServiceAccessEnabled = TrustedServiceAccessEnabled.IsPresent;
88+
}
89+
90+
8291
WriteObject(Client.UpdateNetworkRuleSet(resourceGroupName: ResourceGroupName,
8392
namespaceName: Name,
8493
publicNetworkAccess: PublicNetworkAccess,
85-
trustedServiceAccessEnabled: TrustedServiceAccessEnabled,
94+
trustedServiceAccessEnabled: trustedServiceAccessEnabled,
8695
defaultAction: DefaultAction,
8796
iPRule: IPRule,
8897
virtualNetworkRule: VirtualNetworkRule));

src/ServiceBus/ServiceBus/Utilities/ServiceBusClient.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -359,7 +359,7 @@ public PSNetworkRuleSetAttributes CreateOrUpdateNetworkRuleSet(string resourceGr
359359
return new PSNetworkRuleSetAttributes(response);
360360
}
361361

362-
public PSNetworkRuleSetAttributes UpdateNetworkRuleSet(string resourceGroupName, string namespaceName, string publicNetworkAccess, bool trustedServiceAccessEnabled, string defaultAction, PSNWRuleSetIpRulesAttributes[] iPRule, PSNWRuleSetVirtualNetworkRulesAttributes[] virtualNetworkRule)
362+
public PSNetworkRuleSetAttributes UpdateNetworkRuleSet(string resourceGroupName, string namespaceName, string publicNetworkAccess, bool? trustedServiceAccessEnabled, string defaultAction, PSNWRuleSetIpRulesAttributes[] iPRule, PSNWRuleSetVirtualNetworkRulesAttributes[] virtualNetworkRule)
363363
{
364364
NetworkRuleSet networkRuleSet = Client.Namespaces.GetNetworkRuleSet(resourceGroupName, namespaceName);
365365

@@ -378,7 +378,7 @@ public PSNetworkRuleSetAttributes UpdateNetworkRuleSet(string resourceGroupName,
378378
networkRuleSet.PublicNetworkAccess = publicNetworkAccess;
379379
}
380380

381-
if (trustedServiceAccessEnabled == true)
381+
if (trustedServiceAccessEnabled != null)
382382
{
383383
networkRuleSet.TrustedServiceAccessEnabled = trustedServiceAccessEnabled;
384384
}

0 commit comments

Comments
 (0)