Skip to content

Commit 5095b9a

Browse files
author
Aashish Rajaram Salokhe
committed
Merge remote-tracking branch 'upstream/master'
2 parents c2d7fd5 + 78da0d0 commit 5095b9a

File tree

747 files changed

+428162
-301070
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

747 files changed

+428162
-301070
lines changed

.azure-pipelines/util/analyze-steps.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,14 @@ steps:
1515
inputs:
1616
command: custom
1717
custom: msbuild
18-
arguments: 'build.proj /t:GenerateHelp /p:Configuration=${{ parameters.configuration }}'
18+
arguments: 'build.proj /t:GenerateHelp /p:Configuration=${{ parameters.configuration }};PullRequestNumber=$(System.PullRequest.PullRequestNumber)'
1919

2020
- task: DotNetCoreCLI@2
2121
displayName: 'Static Analysis'
2222
inputs:
2323
command: custom
2424
custom: msbuild
25-
arguments: 'build.proj /t:StaticAnalysis /p:Configuration=${{ parameters.configuration }}'
25+
arguments: 'build.proj /t:StaticAnalysis /p:Configuration=${{ parameters.configuration }};PullRequestNumber=$(System.PullRequest.PullRequestNumber)'
2626

2727
- template: publish-artifacts-steps.yml
2828
parameters:

.azure-pipelines/util/build-steps.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ steps:
99
inputs:
1010
command: custom
1111
custom: msbuild
12-
arguments: 'build.proj /t:Build /p:Configuration=${{ parameters.configuration }};TestFramework=${{ parameters.testFramework }}'
12+
arguments: 'build.proj /t:Build /p:Configuration=${{ parameters.configuration }};TestFramework=${{ parameters.testFramework }};PullRequestNumber=$(System.PullRequest.PullRequestNumber)'
1313

1414
- template: publish-artifacts-steps.yml
1515
parameters:

.azure-pipelines/util/test-steps.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ steps:
1414
inputs:
1515
command: custom
1616
custom: msbuild
17-
arguments: 'build.proj /t:${{ parameters.testTarget }} /p:Configuration=${{ parameters.configuration }};TestFramework=${{ parameters.testFramework }}'
17+
arguments: 'build.proj /t:${{ parameters.testTarget }} /p:Configuration=${{ parameters.configuration }};TestFramework=${{ parameters.testFramework }};PullRequestNumber=$(System.PullRequest.PullRequestNumber)'
1818

1919
- template: publish-artifacts-steps.yml
2020
parameters:

.gitignore

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -222,9 +222,8 @@ Package
222222
launchSettings.json
223223
/src/StackAdmin/AzureRM/AzureRM.psm1
224224
/src/StackAdmin/AzureStack/AzureStack.psm1
225+
/CsprojMappings.json
225226
/ModuleMappings.json
226-
/SolutionMappings.json
227-
/TestMappings.json
228227
/tools/Modules/tmp
229228
/tools/Az/Az.psm1
230229
/Azure.PowerShell.sln

ChangeLog.md

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,66 @@
1+
## 2.2.0 - June 2019
2+
#### Az.Cdn
3+
* Updated cmdlets to support rulesEngine feature based on API version 2019-04-15.
4+
5+
#### Az.Compute
6+
* Added `NoWait` parameter that starts the operation and returns immediately, before the operation is completed.
7+
- Updated cmdlets:
8+
Export-AzLogAnalyticRequestRateByInterval
9+
Export-AzLogAnalyticThrottledRequest
10+
Remove-AzVM
11+
Remove-AzVMAccessExtension
12+
Remove-AzVMAEMExtension
13+
Remove-AzVMChefExtension
14+
Remove-AzVMCustomScriptExtension
15+
Remove-AzVMDiagnosticsExtension
16+
Remove-AzVMDiskEncryptionExtension
17+
Remove-AzVMDscExtension
18+
Remove-AzVMSqlServerExtension
19+
Restart-AzVM
20+
Set-AzVM
21+
Set-AzVMAccessExtension
22+
Set-AzVMADDomainExtension
23+
Set-AzVMAEMExtension
24+
Set-AzVMBginfoExtension
25+
Set-AzVMChefExtension
26+
Set-AzVMCustomScriptExtension
27+
Set-AzVMDiagnosticsExtension
28+
Set-AzVMDscExtension
29+
Set-AzVMExtension
30+
Start-AzVM
31+
Stop-AzVM
32+
Update-AzVM
33+
34+
#### Az.EventHub
35+
* Fix for #9231 - Get-AzEventHubNamespace does not return tags
36+
* Fix for #9230 - Get-AzEventHubNamespace returns ResourceGroup instead of ResourceGroupName
37+
38+
#### Az.Network
39+
* Update ResourceId and InputObject for Nat Gateway
40+
- Add alias for ResourceId and InputObject
41+
42+
#### Az.PolicyInsights
43+
* Fix Null reference issue in Get-AzPolicyEvent
44+
45+
#### Az.RecoveryServices
46+
* IaaSVM policy minimum retention in days changed to 7 from 1
47+
48+
#### Az.ServiceBus
49+
* Fix for issue #9182 - Get-AzServiceBusNamespace returns ResourceGroup instead of ResourceGroupName
50+
51+
#### Az.ServiceFabric
52+
* Fix typo in error message for 'Update-AzServiceFabricReliability'
53+
* Fix missing character in Service Fabric cmdlines
54+
55+
#### Az.Sql
56+
* Add DnsZonePartner Parameter for New-AzureSqlInstance cmdlet to support AutoDr for Managed Instance.
57+
* Deprecating Get-AzSqlDatabaseSecureConnectionPolicy cmdlet
58+
* Rename Threat Detection cmdlets to Advanced Threat Protection
59+
* New-AzSqlInstance -StorageSizeInGB and -LicenseType parameters are now optional.
60+
61+
#### Az.Websites
62+
* fixes the issue where using Set-AzWebApp and Set-AzWebAppSlot with -WebApp property was removing the tags
63+
164
## 2.1.0 - May 2019
265
#### Az.ApiManagement
366
* Created new Cmdlets for managing diagnostics at the global and API Scope

build.proj

Lines changed: 29 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,8 @@
8181
<UsingTask Condition="$(OnPremiseBuild)" TaskName="CorporateValidation" AssemblyFile="$(CIToolsPath)/Microsoft.WindowsAzure.Tools.Build.Tasks.OnPremise.dll" />
8282
<Import Condition="$(OnPremiseBuild)" Project="$(CIToolsPath)/Microsoft.WindowsAzure.Build.OnPremise.msbuild" />
8383
<UsingTask TaskName="ESRPSignTask" AssemblyFile="$(CISignRepoPath)/tools/sdkbuildtools/tasks/MS.Az.Sdk.OnPremise.Build.Tasks.dll" />
84+
<UsingTask TaskName="FilesChangedTask" AssemblyFile="$(RepoArtifacts)Microsoft.Azure.Build.Tasks/Microsoft.Azure.Build.Tasks.dll" />
85+
<UsingTask TaskName="FilterTask" AssemblyFile="$(RepoArtifacts)Microsoft.Azure.Build.Tasks/Microsoft.Azure.Build.Tasks.dll" />
8486

8587
<Target Name="Clean">
8688
<Message Importance="high" Text="Cleaning Cmdlets..." />
@@ -93,9 +95,13 @@
9395
<Exec Command="$(PowerShellCoreCommandPrefix) &quot;Get-ChildItem -Path $(MSBuildThisFileDirectory) -Recurse -Include 'bin','obj','TestResults' | Remove-Item -Recurse -Force -ErrorAction Ignore&quot;" IgnoreExitCode="true" />
9496
</Target>
9597

96-
<Target Name="FilterBuild">
98+
<Target Name="FilterBuild" Condition="$(PullRequestNumber) != ''">
99+
<Message Importance="high" Text="Filtering projects and modules..." />
97100
<Exec Command="$(PowerShellCoreCommandPrefix) &quot;. $(RepoTools)/CreateFilterMappings.ps1&quot;" />
98101

102+
<!-- Build the Microsoft.Azure.Build.Tasks project -->
103+
<Exec Command="dotnet publish $(RepoTools)BuildPackagesTask/Microsoft.Azure.Build.Tasks/Microsoft.Azure.Build.Tasks.csproj -c $(Configuration) -f netstandard2.0" />
104+
99105
<!-- Get all of the files changed in the given pull request -->
100106
<FilesChangedTask RepositoryOwner="Azure" RepositoryName="azure-powershell" PullRequestNumber="$(PullRequestNumber)">
101107
<Output TaskParameter="FilesChanged" ItemName="FilesChanged" />
@@ -105,33 +111,23 @@
105111
<FilterTask FilesChanged="@(FilesChanged)" MapFilePath="./ModuleMappings.json">
106112
<Output TaskParameter="Output" ItemName="ModulesChanged" />
107113
</FilterTask>
108-
<Message Text="Filtering help generation and StaticAnalysis by the following modules:" />
109-
<Message Text="%(ModulesChanged.Identity)" />
110-
<Message Text="Total: @(ModulesChanged->Count())" />
111-
<Message Text="" />
112-
113-
<!-- Get the list of solutions to build -->
114-
<FilterTask FilesChanged="@(FilesChanged)" MapFilePath="./SolutionMappings.json">
115-
<Output TaskParameter="Output" ItemName="CmdletSolutionsToBuild" />
116-
</FilterTask>
117-
<Message Text="Filtering solutions to build by the following:" />
118-
<Message Text="%(CmdletSolutionsToBuild.Identity)" />
119-
<Message Text="Total: @(CmdletSolutionsToBuild->Count())" />
120-
<Message Text="" />
121-
122-
<!--Get the list of tests to be run based on files changed from a specified PullRequestNumber. Mapping between paths and test DLLs is used to produce the list.-->
123-
<FilterTask FilesChanged="@(FilesChanged)" MapFilePath="./TestMappings.json">
124-
<Output TaskParameter="Output" ItemName="XUnitTests" />
114+
<Message Importance="high" Text="Filtering help generation and StaticAnalysis by the following modules:" />
115+
<Message Importance="high" Text="%(ModulesChanged.Identity)" />
116+
<Message Importance="high" Text="Total: @(ModulesChanged->Count())" />
117+
<Message Importance="high" Text="" />
118+
119+
<!-- Get the list of projects to build -->
120+
<FilterTask FilesChanged="@(FilesChanged)" MapFilePath="./CsprojMappings.json">
121+
<Output TaskParameter="Output" ItemName="ProjectsToBuild" />
125122
</FilterTask>
126-
<Message Text="Using these test assemblies:" />
127-
<Message Text="%(XUnitTests.Identity)" />
128-
<Message Text="Total: @(XunitTests->Count())" />
129-
<Message Text="" />
123+
<Message Importance="high" Text="Filtering projects to build by the following:" />
124+
<Message Importance="high" Text="%(ProjectsToBuild.Identity)" />
125+
<Message Importance="high" Text="Total: @(ProjectsToBuild->Count())" />
126+
<Message Importance="high" Text="" />
130127
</Target>
131128

132129
<!-- Build all flavors of the Cmdlets -->
133-
<!-- TODO: Reimplement the FilterBuild and update RepoTasks to NetStandard -->
134-
<Target Name="Build">
130+
<Target Name="Build" DependsOnTargets="FilterBuild">
135131
<Message Importance="high" Text="Building Cmdlets..." />
136132

137133
<MakeDir Directories="$(RepoArtifacts)" />
@@ -142,13 +138,19 @@
142138
<!-- Build and create package content -->
143139
<Exec Command="dotnet --version" />
144140
<Exec Command="dotnet new sln -n Azure.PowerShell -o $(RepoArtifacts) --force" />
145-
<ItemGroup>
141+
<ItemGroup Condition="$(PullRequestNumber) == ''">
146142
<CsprojFiles Include="$(RepoRoot)src/**/*.csproj" Exclude="$(RepoRoot)src/**/*.Test.csproj;$(RepoRoot)src/**/Authenticators.csproj" />
147143
<CsprojFiles Include="$(RepoRoot)src/**/*.Test.csproj" Exclude="$(Net472TestExclude)" Condition="'$(Configuration)' != 'Release' and '$(TestsToRun)' == 'All'" />
148144
<CsprojFiles Include="$(RepoRoot)src/**/*.Test.csproj" Exclude="$(CoreTests)$(Net472TestExclude)" Condition="'$(Configuration)' != 'Release' and '$(TestsToRun)' == 'NonCore'" />
149145
<CsprojFiles Include="$(CoreTests)" Exclude="$(Net472TestExclude)" Condition="'$(Configuration)' != 'Release' and '$(TestsToRun)' == 'Core'" />
150146
<CsprojFiles Include="$(RepoRoot)src/**/Authenticators.csproj" Condition="'$([MSBuild]::IsOsPlatform(&quot;Windows&quot;))' == 'true' and '$(TestFramework)' != 'net472'" />
151147
</ItemGroup>
148+
<ItemGroup Condition="$(PullRequestNumber) != ''">
149+
<!-- Always build and test common code -->
150+
<CsprojFiles Include="$(LibraryRoot)src/Accounts/**/*.csproj;$(LibraryRoot)tools/TestFx/TestFx.csproj" Exclude="$(LibraryRoot)src/**/Authenticators.csproj" />
151+
<CsprojFiles Include="%(ProjectsToBuild.Identity)" />
152+
<CsprojFiles Include="$(LibraryRoot)src/**/Authenticators.csproj" Condition="'$([MSBuild]::IsOsPlatform(&quot;Windows&quot;))' == 'true'" />
153+
</ItemGroup>
152154
<!-- https://github.com/dotnet/cli/issues/6295#issuecomment-346973582 -->
153155
<Exec Command="dotnet sln $(RepoArtifacts)Azure.PowerShell.sln add &quot;%(CsprojFiles.FullPath)&quot;" />
154156
<PropertyGroup>
@@ -297,7 +299,7 @@ $(RepoArtifacts)/$(Configuration)/**/Microsoft.Azure.PowerShell.Authenticators.d
297299
<!-- RemoveCodeSignArtifacts.ps1 -->
298300
<Message Text="variables.Remove artifacts section" Importance="high" />
299301
<Exec Command="$(PowerShellCoreCommandPrefix) &quot;Get-ChildItem -Path $(RepoArtifacts) -Recurse -Include 'Signed','Unsigned' | Remove-Item -Recurse -Force -Confirm:$false -ErrorAction Ignore&quot;" IgnoreExitCode="true" />
300-
302+
301303
<!-- CheckSignature.ps1 -->
302304
<Message Text="variables.CheckSignature section" Importance="high" />
303305
<Exec Command="$(PowerShellCoreCommandPrefix) &quot;. $(RepoTools)/CheckSignature.ps1 -CustomPath $(RepoArtifacts)/$(Configuration)&quot;" Condition="'$(Scope)' != 'Stack'" />
@@ -326,4 +328,4 @@ $(RepoArtifacts)/$(Configuration)/**/Microsoft.Azure.PowerShell.Authenticators.d
326328
<SetEnvVar EnvName="SignedMsiDir" EnvValue="$(SignedOutputRootDir)" />
327329
</Target>
328330

329-
</Project>
331+
</Project>

src/Accounts/Accounts/AzureRmAlias/Mappings.json

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -478,7 +478,7 @@
478478
"Remove-AzVMSecret": "Remove-AzureRmVMSecret",
479479
"Remove-AzVMNetworkInterface": "Remove-AzureRmVMNetworkInterface",
480480
"Remove-AzVMDataDisk": "Remove-AzureRmVMDataDisk",
481-
"Set-AzVMBootDiagnostics": "Set-AzureRmVMBootDiagnostics",
481+
"Set-AzVMBootDiagnostic": "Set-AzureRmVMBootDiagnostics",
482482
"Set-AzVMDataDisk": "Set-AzureRmVMDataDisk",
483483
"Set-AzVMPlan": "Set-AzureRmVMPlan",
484484
"Set-AzVMSourceImage": "Set-AzureRmVMSourceImage",
@@ -594,7 +594,7 @@
594594
"Get-AzVmssDiskEncryption": "Get-AzureRmVmssDiskEncryption",
595595
"Get-AzVmssVMDiskEncryption": "Get-AzureRmVmssVMDiskEncryption",
596596
"Export-AzLogAnalyticRequestRateByInterval": "Export-AzureRmLogAnalyticRequestRateByInterval",
597-
"Export-AzLogAnalyticThrottledRequests": "Export-AzureRmLogAnalyticThrottledRequests",
597+
"Export-AzLogAnalyticThrottledRequest": "Export-AzureRmLogAnalyticThrottledRequests",
598598
"Repair-AzVmssServiceFabricUpdateDomain": "Repair-AzureRmVmssServiceFabricUpdateDomain",
599599
"New-AzVMDataDisk": "New-AzureRmVMDataDisk",
600600
"Update-AzVmssVM": "Update-AzureRmVmssVM",
@@ -1633,7 +1633,6 @@
16331633
"New-AzFirewallNetworkRuleCollection": "New-AzureRmFirewallNetworkRuleCollection",
16341634
"New-AzFirewallNetworkRule": "New-AzureRmFirewallNetworkRule",
16351635
"Get-AzFirewallFqdnTag": "Get-AzureRmFirewallFqdnTag",
1636-
"Get-AzInterfaceEndpoint": "Get-AzureRmInterfaceEndpoint",
16371636
"Add-AzNetworkInterfaceTapConfig": "Add-AzureRmNetworkInterfaceTapConfig",
16381637
"Get-AzNetworkInterfaceTapConfig": "Get-AzureRmNetworkInterfaceTapConfig",
16391638
"Set-AzNetworkInterfaceTapConfig": "Set-AzureRmNetworkInterfaceTapConfig",

src/Accounts/Accounts/ChangeLog.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,11 @@
1818
- Additional information about change #1
1919
-->
2020
## Upcoming Release
21+
* Fix bug with incorrect URL being used in some cases for Functions calls
22+
- More information here: https://github.com/Azure/azure-powershell/issues/8983
23+
* Fix Issue with aliases from AzureRM to Az cmdlets
24+
- Set-AzureRmVMBootDiagnostics -> Set-AzVMBootDiagnostic
25+
- Export-AzureRMLogAnalyticThrottledRequests -> Export-AzLogAnalyticThrottledRequest
2126

2227
## Version 1.5.2
2328
* Update Authentication Library to fix ADFS issues with username/password auth

src/Accounts/Authentication.Test/AuthenticationFactoryTests.cs

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -399,5 +399,100 @@ public void AppServiceManagedIdentity()
399399
Assert.Equal(expectedAccessToken, accessToken);
400400
Assert.Equal(expectedExpiresOn, msat.ExpiresOn);
401401
}
402+
403+
[Fact]
404+
[Trait(Category.AcceptanceType, Category.CheckIn)]
405+
public void AppServiceManagedIdentityWithDataPlane()
406+
{
407+
AzureSessionInitializer.InitializeAzureSession();
408+
var tenant = Guid.NewGuid().ToString();
409+
var userId = Guid.NewGuid().ToString();
410+
var environment = AzureEnvironment.PublicEnvironments["AzureCloud"];
411+
var account = new AzureAccount
412+
{
413+
Id = userId,
414+
Type = AzureAccount.AccountType.ManagedService
415+
};
416+
const string resource = @"https://vault.azure.com/";
417+
const string endpoint = @"http://127.0.0.1:41217/MSI/token/";
418+
var expectedUri = $"{endpoint}?resource={resource}&api-version=2017-09-01";
419+
account.SetProperty(AzureAccount.Property.MSILoginUri, endpoint);
420+
account.SetProperty(AzureAccount.Property.MSILoginSecret, @"bar");
421+
const string expectedAccessToken = "foo";
422+
var expectedExpiresOn = DateTimeOffset.Parse("1/23/2019 7:15:42 AM +00:00");
423+
var responses = new Dictionary<string, ManagedServiceAppServiceTokenInfo>(StringComparer.OrdinalIgnoreCase)
424+
{
425+
{
426+
expectedUri,
427+
new ManagedServiceAppServiceTokenInfo()
428+
{
429+
AccessToken = expectedAccessToken,
430+
ExpiresOn = expectedExpiresOn,
431+
Resource = resource,
432+
TokenType = "Bearer",
433+
}
434+
}
435+
};
436+
AzureSession.Instance.RegisterComponent(HttpClientOperationsFactory.Name, () => TestHttpOperationsFactory.Create(responses, _output), true);
437+
var msat = new ManagedServiceAppServiceAccessToken(account, environment, environment.GetEndpoint(resource) ?? resource, tenant);
438+
Assert.Equal(expectedUri, msat.RequestUris.Peek());
439+
var accessToken = msat.AccessToken;
440+
Assert.Equal(expectedAccessToken, accessToken);
441+
Assert.Equal(expectedExpiresOn, msat.ExpiresOn);
442+
}
443+
444+
[Fact]
445+
[Trait(Category.AcceptanceType, Category.CheckIn)]
446+
public void AppServiceManagedIdentityWithServiceManagement()
447+
{
448+
AzureSessionInitializer.InitializeAzureSession();
449+
var tenant = Guid.NewGuid().ToString();
450+
var userId = Guid.NewGuid().ToString();
451+
var environment = AzureEnvironment.PublicEnvironments["AzureCloud"];
452+
var account = new AzureAccount
453+
{
454+
Id = userId,
455+
Type = AzureAccount.AccountType.ManagedService
456+
};
457+
const string resource = @"https://management.azure.com/";
458+
const string serviceManagementResource = @"https://management.core.windows.net/";
459+
const string endpoint = @"http://127.0.0.1:41217/MSI/token/";
460+
var expectedUri = $"{endpoint}?resource={resource}&api-version=2017-09-01";
461+
account.SetProperty(AzureAccount.Property.MSILoginUri, endpoint);
462+
account.SetProperty(AzureAccount.Property.MSILoginSecret, @"bar");
463+
const string expectedAccessToken = "foo";
464+
var expectedExpiresOn = DateTimeOffset.Parse("1/23/2019 7:15:42 AM +00:00");
465+
var responses = new Dictionary<string, ManagedServiceAppServiceTokenInfo>(StringComparer.OrdinalIgnoreCase)
466+
{
467+
{
468+
expectedUri,
469+
new ManagedServiceAppServiceTokenInfo()
470+
{
471+
AccessToken = expectedAccessToken,
472+
ExpiresOn = expectedExpiresOn,
473+
Resource = resource,
474+
TokenType = "Bearer",
475+
}
476+
}
477+
};
478+
AzureSession.Instance.RegisterComponent(HttpClientOperationsFactory.Name, () => TestHttpOperationsFactory.Create(responses, _output), true);
479+
var msat = new ManagedServiceAppServiceAccessToken(account, environment, GetFunctionsResourceId(serviceManagementResource, environment), tenant);
480+
Assert.Equal(expectedUri, msat.RequestUris.Peek());
481+
var accessToken = msat.AccessToken;
482+
Assert.Equal(expectedAccessToken, accessToken);
483+
Assert.Equal(expectedExpiresOn, msat.ExpiresOn);
484+
}
485+
private string GetFunctionsResourceId(string resourceIdOrEndpointName, IAzureEnvironment environment)
486+
{
487+
var resourceId = environment.GetEndpoint(resourceIdOrEndpointName) ?? resourceIdOrEndpointName;
488+
if (string.Equals(
489+
environment.GetEndpoint(AzureEnvironment.Endpoint.ActiveDirectoryServiceEndpointResourceId),
490+
resourceId, StringComparison.OrdinalIgnoreCase))
491+
{
492+
resourceId = environment.GetEndpoint(AzureEnvironment.Endpoint.ResourceManager);
493+
}
494+
495+
return resourceId;
496+
}
402497
}
403498
}

src/Accounts/Authentication/Authentication/ManagedServiceAppServiceAccessToken.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,11 @@ public ManagedServiceAppServiceAccessToken(IAzureAccount account, IAzureEnvironm
2424
{
2525
}
2626

27+
public ManagedServiceAppServiceAccessToken(IAzureAccount account, IAzureEnvironment environment, string resourceId, string tenant = "Common")
28+
: base(account, environment, resourceId, tenant)
29+
{
30+
}
31+
2732
protected override IEnumerable<string> BuildTokenUri(string baseUri, IAzureAccount account, IdentityType identityType,
2833
string resourceId)
2934
{

0 commit comments

Comments
 (0)