Skip to content

Release-2022-12-06 #20356

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 16 commits into from
Dec 2, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
114 changes: 114 additions & 0 deletions ChangeLog.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,117 @@
## 9.2.0 - December 2022
#### Az.Accounts
* Enabled caching tokens when logging in with a client assertion. This fixed the incorrectly short lifespan of tokens.
* Upgraded target framework of Microsoft.Identity.Client to net461 [#20189]
* Stored 'ServicePrincipalSecret' and 'CertificatePassword' into 'AzKeyStore'.
* Updated the reference of Azure PowerShell Common to 1.3.67-preview.

#### Az.Aks
* Bumped API version to 2022-09-01
* Added parameter '-NodeOsSKU' for 'New-AzAksCluster' and parameter '-OsSKU' for 'New-AzAksNodePool'
* Added parameter '-Mode' for 'New-AzAksNodePool' and 'Update-AzAksNodePool'
* Added property '-NodeImageVersion' for the output of 'Get-AzAksNodePool'[#19893]
* Added parameter '-NodePoolLabel' for 'Set-AzAksCluster', '-NodeLabel' for 'New-AzAksNodePool' and 'Update-AzAksNodePool'
* Added parameter '-NodePoolTag' for 'New-AzAksCluster' and 'Set-AzAksCluster', '-Tag' for 'New-AzAksNodePool' and 'Update-AzAksNodePool'

#### Az.ApplicationInsights
* Supported Workbook function. Below is the new cmdlet
* 'Get-AzApplicationInsightsMyWorkbook'
* 'Get-AzApplicationInsightsWorkbook'
* 'Get-AzApplicationInsightsWorkbookRevision'
* 'Get-AzApplicationInsightsWorkbookTemplate'
* 'New-AzApplicationInsightsMyWorkbook'
* 'New-AzApplicationInsightsWorkbook'
* 'New-AzApplicationInsightsWorkbookTemplate'
* 'New-AzApplicationInsightsWorkbookTemplateGalleryObject'
* 'Remove-AzApplicationInsightsMyWorkbook'
* 'Remove-AzApplicationInsightsWorkbook'
* 'Remove-AzApplicationInsightsWorkbookTemplate'
* 'Update-AzApplicationInsightsMyWorkbook'
* 'Update-AzApplicationInsightsWorkbook'
* 'Update-AzApplicationInsightsWorkbookTemplate'

#### Az.Compute
* Fixed issue found for 'Set-AzVmssVMRunCommand' [#19985]
* Fixed 'Get-AzVm' cmdlet when parameter '-Status' is provided, return property 'OsName', 'OsVersion' and 'HyperVGeneration'
* Fixed 'New-AzVM' cmdlet when creating VM with bootdiagnostic storage causes exception 'Kind' cannot be null.

#### Az.CosmosDB
* Added support for Cosmos DB Service related cmdlets.

#### Az.DataFactory
* Updated ADF .Net SDK version to 8.0.0

#### Az.DataProtection
* Fixed spacing issues in Set-AzDataProtectionMSIPermission.ps1

#### Az.EventHub
* Added NamespaceV2 cmdlets for EventHub

#### Az.KeyVault
* Fixed certificate export parameter issue in 'Add-AzKeyVaultKey' [#19623]
* Fixed CertificateString decoding issue in 'Import-AzKeyVaultCertificate'
* Shifted the location of key CVM release policy to GitHub [#19984]
* Added fallback logic (reading default CVM policy from a local copy) if fetching default CVM Policy from GitHub failed.

#### Az.Monitor
* Fixed bug for 'New-AzActivityLogAlert' and 'Update-AzActivityLogAlert' [#19927]

#### Az.Network
* Added optional parameters 'CustomBlockResponseStatusCode' and 'CustomBlockResponseBody' parameter to 'AzApplicationGatewayFirewallPolicySettings'
* Added a new cmdlet to get the application gateway waf manifest and rules
- 'Get-AzApplicationGatewayWafDynamicManifest'

#### Az.RecoveryServices
* Added support for passing DiskEncryptionSetId for Cross region restore
* Fixed the pagination bug in 'Get-AzRecoveryServicesAsrProtectableItem' for the V2ARCM scenario.
* Fixed 'IncludeDiskId' property for 'New-ASRReplicationProtectedItem' cmdlet of H2A

#### Az.Resources
* Added cmdlet 'Get-AzADOrganization'
* Fixed 'Set-AzPolicySetDefinition' InternalServerError when the initiative is too large [#20238]

#### Az.ServiceBus
* Added NamespaceV2 cmdlets for ServiceBus.

#### Az.SignalR
* Updated to API version 2022-08-01-preview
- Added support for custom domain. Added new cmdlets New-AzWebPubSubCustomCertificate, Get-AzWebPubSubCustomCertificate, Remove-AzWebPubSubCustomCertificate, New-AzWebPubSubCustomDomain, Get-AzWebPubSubCustomDomain, Remove-AzWebPubSubCustomDomain.
- Added support for event listeners in hub settings. Added new cmdlets New-AzWebPubSubEventHubEndpointObject, New-AzWebPubSubEventNameFilterObject.

#### Az.StackHCI
* Enabled system-assigned identity on HCI cluster resource registration and repair registration flow.
* Added error message in the command Register-AzStackHCI if Arc is not enabled.
* Added default region confirmation prompt if the region is not mentioned in the command Register-AzStackHCI.
* Added general logging improvements.
* Added logic that skipping the Arc SPN permission check in Register-AzStackHCI if a customer doesn't have the required permissions to read Arc SPN credential.
* Added deprecation message for the command Test-AzStackHCIConnection. Customers can use Invoke-AzStackHciConnectivityValidation from the module AzStackHCI.EnvironmentChecker for connectivity verification tests.

#### Az.Storage
* Supported MaxPageSize, Include, and Filter parameters for listing encryption scopes
- 'Get-AzStorageEncryptionScope'
* Supported excludePrefix, includeDeleted, and many new schema fields in Blob Inventory
- 'New-AzStorageBlobInventoryPolicyRule'

#### Az.Synapse
* Added breaking change message for '-SparkConfigFilePath'. It will be deprecated around the middle of December.
* Updated 'New-AzSynapseSparkPool' and 'Update-AzSynapseSparkPool' to support for setting spark pool configuration artifact by '-SparkCongifuration'. '-SparkCongifuration' is an alternative of parameter '-SparkConfigFilePath'.

#### Az.Websites
* Added Tag parameter for 'New-AzWebApp' and 'New-AzWebAppSlot'
* Fixed 'Set-AzWebApp' and 'Set-AZWebAppSlot' to rethrow exception when Service Principal/User doesn't have permission to list web app configuration. [#19942]

### Thanks to our community contributors
* @Ajay1250, The example was using the wrong command (#20237)
* Hiroshi Yoshioka (@hyoshioka0128), Typo "resouce"→"resource" (#20321)
* Mats Estensen (@matsest), [Az.Tools.Installer]: Updates for a new minor/patch version (#20022)
* Matthew Burleigh (@mburleigh), fix typos (#20020)
* Mo Zaatar (@mzaatar), Change letter case in example of New-AzStorageBlobSASToken (#20018)
* @patchin404, Updates Enable-AzCdnCustomDomainCustomHttps Doc (#20165)
* Robin Malik (@robinmalik), Update New-AzADAppCredential.md (#20317)
* @SherrySahni, container name not supported with upper case (#20012)
* @sushil490023, Adding PS Cmdlets for Azure Automation Python3 operation (#19598)
* Thomas Pike (@thwpike), Typo Fix (#20087)

## 9.1.1 - November 2022
#### Az.Aks
* Upgraded AutoMapper to Microsoft.Azure.PowerShell.AutoMapper 6.2.2 with fix [#18721]
Expand Down
14 changes: 14 additions & 0 deletions documentation/breaking-changes/upcoming-breaking-changes.md
Original file line number Diff line number Diff line change
Expand Up @@ -1213,6 +1213,20 @@
- `-InputObject`
- Alias RegisteredServer is invalid and preserved for compatibility. Alias ServerEndpoint should be used instead

## Az.Synapse

### `New-AzSynapseSparkPool`

- Parameter breaking-change will happen to all parameter sets
- `-SparkConfigFilePath`
- The parameter : 'SparkConfigFilePath' is being replaced by parameter : 'SparkConfiguration'.

### `Update-AzSynapseSparkPool`

- Parameter breaking-change will happen to all parameter sets
- `-SparkConfigFilePath`
- The parameter : 'SparkConfigFilePath' is being replaced by parameter : 'SparkConfiguration'.

## Az.Websites

### `New-AzWebAppContainerPSSession`
Expand Down
2 changes: 1 addition & 1 deletion setup/generate.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ if( (-not (get-command -ea 0 light)) -or (-not (get-command -ea 0 heat)) -or (-n
$outputName ="Az-Cmdlets"

# generate the product name from the current month/year.
$productName = "Microsoft Azure PowerShell - November 2022"
$productName = "Microsoft Azure PowerShell - December 2022"

# where to put temp files
$tmp = Join-Path $env:temp azure-cmdlets-tmp
Expand Down
1 change: 1 addition & 0 deletions src/Accounts/Accounts.Test/AutosaveTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ public AutosaveTests(ITestOutputHelper output)
XunitTracingInterceptor.AddToContext(new XunitTracingInterceptor(output));
commandRuntimeMock = new MockCommandRuntime();
dataStore = new MemoryDataStore();
ResetState();
keyStore = SetMockedAzKeyStore();
}

Expand Down
9 changes: 6 additions & 3 deletions src/Accounts/Accounts/Az.Accounts.psd1
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#
# Generated by: Microsoft Corporation
#
# Generated on: 10/28/2022
# Generated on: 01/12/2022
#

@{
Expand All @@ -12,7 +12,7 @@
# RootModule = ''

# Version number of this module.
ModuleVersion = '2.10.3'
ModuleVersion = '2.10.4'

# Supported PSEditions
CompatiblePSEditions = 'Core', 'Desktop'
Expand Down Expand Up @@ -146,7 +146,10 @@ PrivateData = @{
# IconUri = ''

# ReleaseNotes of this module
ReleaseNotes = '* Updated ''Get-AzSubscription'' to retrieve subscription by Id rather than listed all the subscriptions from server if subscription Id is provided. [#19115]'
ReleaseNotes = '* Enabled caching tokens when logging in with a client assertion. This fixed the incorrectly short lifespan of tokens.
* Upgraded target framework of Microsoft.Identity.Client to net461 [#20189]
* Stored ''ServicePrincipalSecret'' and ''CertificatePassword'' into ''AzKeyStore''.
* Updated the reference of Azure PowerShell Common to 1.3.67-preview.'

# Prerelease string of this module
# Prerelease = ''
Expand Down
8 changes: 4 additions & 4 deletions src/Accounts/Accounts/ChangeLog.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,12 @@
-->

## Upcoming Release
* Enabled caching tokens when logging in with a service principal or client assertion. [#20013]
- This could reduce extra network traffic and improve performance.
- It also fixed the incorrectly short lifespan of tokens.

## Version 2.10.4
* Enabled caching tokens when logging in with a client assertion. This fixed the incorrectly short lifespan of tokens.
* Upgraded target framework of Microsoft.Identity.Client to net461 [#20189]
* Stored `ServicePrincipalSecret` and `CertificatePassword` into `AzKeyStore`.
* Updated the reference of Azure PowerShell Common to 1.3.65-preview.
* Updated the reference of Azure PowerShell Common to 1.3.67-preview.

## Version 2.10.3
* Updated `Get-AzSubscription` to retrieve subscription by Id rather than listed all the subscriptions from server if subscription Id is provided. [#19115]
Expand Down
4 changes: 2 additions & 2 deletions src/Accounts/Accounts/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,8 @@
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:

[assembly: AssemblyVersion("2.10.3")]
[assembly: AssemblyFileVersion("2.10.3")]
[assembly: AssemblyVersion("2.10.4")]
[assembly: AssemblyFileVersion("2.10.4")]
#if !SIGN
[assembly: InternalsVisibleTo("Microsoft.Azure.PowerShell.Cmdlets.Accounts.Test")]
#endif
Expand Down
58 changes: 54 additions & 4 deletions src/Accounts/Accounts/Utilities/CommandMappings.json
Original file line number Diff line number Diff line change
Expand Up @@ -330,25 +330,39 @@
"Get-AzApplicationInsightsApiKey": {},
"Get-AzApplicationInsightsContinuousExport": {},
"Get-AzApplicationInsightsLinkedStorageAccount": {},
"Get-AzApplicationInsightsMyWorkbook": {},
"Get-AzApplicationInsightsWebTest": {},
"Get-AzApplicationInsightsWorkbook": {},
"Get-AzApplicationInsightsWorkbookRevision": {},
"Get-AzApplicationInsightsWorkbookTemplate": {},
"New-AzApplicationInsights": {},
"New-AzApplicationInsightsApiKey": {},
"New-AzApplicationInsightsContinuousExport": {},
"New-AzApplicationInsightsLinkedStorageAccount": {},
"New-AzApplicationInsightsMyWorkbook": {},
"New-AzApplicationInsightsWebTest": {},
"New-AzApplicationInsightsWebTestGeolocationObject": {},
"New-AzApplicationInsightsWebTestHeaderFieldObject": {},
"New-AzApplicationInsightsWorkbook": {},
"New-AzApplicationInsightsWorkbookTemplate": {},
"New-AzApplicationInsightsWorkbookTemplateGalleryObject": {},
"Remove-AzApplicationInsights": {},
"Remove-AzApplicationInsightsApiKey": {},
"Remove-AzApplicationInsightsContinuousExport": {},
"Remove-AzApplicationInsightsLinkedStorageAccount": {},
"Remove-AzApplicationInsightsMyWorkbook": {},
"Remove-AzApplicationInsightsWebTest": {},
"Remove-AzApplicationInsightsWorkbook": {},
"Remove-AzApplicationInsightsWorkbookTemplate": {},
"Set-AzApplicationInsightsContinuousExport": {},
"Set-AzApplicationInsightsDailyCap": {},
"Set-AzApplicationInsightsPricingPlan": {},
"Update-AzApplicationInsights": {},
"Update-AzApplicationInsightsLinkedStorageAccount": {},
"Update-AzApplicationInsightsWebTestTag": {}
"Update-AzApplicationInsightsMyWorkbook": {},
"Update-AzApplicationInsightsWebTestTag": {},
"Update-AzApplicationInsightsWorkbook": {},
"Update-AzApplicationInsightsWorkbookTemplate": {}
},
"Az.Attestation": {
"Get-AzAttestationPolicy": {},
Expand Down Expand Up @@ -613,8 +627,10 @@
"Az.BotService": {
"Export-AzBotServiceApp": {},
"Get-AzBotService": {},
"Get-AzBotServiceHostSetting": {},
"Initialize-AzBotServicePrepareDeploy": {},
"New-AzBotService": {},
"New-AzBotServiceDirectLineKey": {},
"Publish-AzBotServiceApp": {},
"Remove-AzBotService": {},
"Update-AzBotService": {}
Expand Down Expand Up @@ -1355,7 +1371,21 @@
"Update-AzManagedCassandraDataCenter": {},
"Get-AzCosmosDbClientEncryptionKey": {},
"New-AzCosmosDbClientEncryptionKey": {},
"Update-AzCosmosDbClientEncryptionKey": {}
"Update-AzCosmosDbClientEncryptionKey": {},
"New-AzCosmosDBMongoDBRoleDefinition": {},
"New-AzCosmosDBMongoDBPrivilegeResource": {},
"New-AzCosmosDBMongoDBPrivilege": {},
"New-AzCosmosDBMongoDBRole": {},
"Remove-AzCosmosDBMongoDBRoleDefinition": {},
"Update-AzCosmosDBMongoDBRoleDefinition": {},
"Get-AzCosmosDBMongoDBRoleDefinition": {},
"New-AzCosmosDBMongoDBUserDefinition": {},
"Update-AzCosmosDBMongoDBUserDefinition": {},
"Get-AzCosmosDBMongoDBUserDefinition": {},
"Remove-AzCosmosDBMongoDBUserDefinition": {},
"Get-AzCosmosDBService": {},
"New-AzCosmosDBService": {},
"Remove-AzCosmosDBService": {}
},
"Az.CostManagement": {
"Get-AzCostManagementExport": {},
Expand Down Expand Up @@ -2307,7 +2337,12 @@
"Set-AzEventHubGeoDRConfigurationBreakPair": {},
"Set-AzEventHubGeoDRConfigurationFailOver": {},
"Set-AzEventHubNetworkRuleSet": {},
"Test-AzEventHubName": {}
"Test-AzEventHubName": {},
"Get-AzEventHubNamespaceV2": {},
"New-AzEventHubKeyVaultPropertiesObject": {},
"New-AzEventHubNamespaceV2": {},
"Remove-AzEventHubNamespaceV2": {},
"Set-AzEventHubNamespaceV2": {}
},
"Az.FluidRelay": {
"Get-AzFluidRelayContainer": {},
Expand Down Expand Up @@ -3464,6 +3499,7 @@
"Remove-AzApplicationGatewayAutoscaleConfiguration": {},
"Set-AzApplicationGatewayAutoscaleConfiguration": {},
"Get-AzApplicationGatewayAvailableWafRuleSet": {},
"Get-AzApplicationGatewayWafDynamicManifest": {},
"Get-AzApplicationGatewayAvailableSslOption": {},
"Add-AzApplicationGatewayBackendAddressPool": {},
"Get-AzApplicationGatewayBackendAddressPool": {},
Expand Down Expand Up @@ -5126,6 +5162,7 @@
"New-AzADAppFederatedCredential": {},
"Remove-AzADAppFederatedCredential": {},
"Update-AzADAppFederatedCredential": {},
"Get-AzADOrganization": {},
"Get-AzResourceProviderAction": {},
"Get-AzADServicePrincipalCredential": {},
"New-AzADServicePrincipalCredential": {},
Expand Down Expand Up @@ -5369,7 +5406,12 @@
"Set-AzServiceBusTopic": {},
"Start-AzServiceBusMigration": {},
"Stop-AzServiceBusMigration": {},
"Test-AzServiceBusName": {}
"Test-AzServiceBusName": {},
"Get-AzServiceBusNamespaceV2": {},
"New-AzServiceBusKeyVaultPropertiesObject": {},
"New-AzServiceBusNamespaceV2": {},
"Remove-AzServiceBusNamespaceV2": {},
"Set-AzServiceBusNamespaceV2": {}
},
"Az.ServiceFabric": {
"Add-AzServiceFabricClientCertificate": {},
Expand Down Expand Up @@ -5483,6 +5525,14 @@
"Restart-AzWebPubSub": {},
"Test-AzWebPubSubNameAvailability": {},
"Update-AzWebPubSub": {},
"Get-AzWebPubSubCustomCertificate": {},
"Get-AzWebPubSubCustomDomain": {},
"New-AzWebPubSubCustomCertificate": {},
"New-AzWebPubSubCustomDomain": {},
"New-AzWebPubSubEventHubEndpointObject": {},
"New-AzWebPubSubEventNameFilterObject": {},
"Remove-AzWebPubSubCustomCertificate": {},
"Remove-AzWebPubSubCustomDomain": {},
"Test-AzSignalR": {}
},
"Az.SpringCloud": {
Expand Down
4 changes: 2 additions & 2 deletions src/Accounts/Authentication/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,8 @@
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("2.10.3")]
[assembly: AssemblyFileVersion("2.10.3")]
[assembly: AssemblyVersion("2.10.4")]
[assembly: AssemblyFileVersion("2.10.4")]
#if !SIGN
[assembly: InternalsVisibleTo("Microsoft.Azure.PowerShell.Authentication.Test")]
#endif
4 changes: 2 additions & 2 deletions src/Accounts/Authenticators/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -48,5 +48,5 @@
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("2.10.3")]
[assembly: AssemblyFileVersion("2.10.3")]
[assembly: AssemblyVersion("2.10.4")]
[assembly: AssemblyFileVersion("2.10.4")]
8 changes: 5 additions & 3 deletions src/Accounts/Authenticators/ServicePrincipalAuthenticator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -43,12 +43,14 @@ public override Task<IAccessToken> Authenticate(AuthenticationParameters paramet
var authority = spParameters.Environment.ActiveDirectoryAuthority;

var requestContext = new TokenRequestContext(scopes);
var tokenCachePersistenceOptions = spParameters.TokenCacheProvider.GetTokenCachePersistenceOptions();
// var tokenCachePersistenceOptions = spParameters.TokenCacheProvider.GetTokenCachePersistenceOptions();
AzureSession.Instance.TryGetComponent(nameof(AzureCredentialFactory), out AzureCredentialFactory azureCredentialFactory);

var options = new ClientCertificateCredentialOptions()
{
TokenCachePersistenceOptions = tokenCachePersistenceOptions, // allows MSAL to cache access tokens
// commented due to https://github.com/AzureAD/microsoft-authentication-library-for-dotnet/issues/3218
// todo: investigate splitting user token cache and app token cache
// TokenCachePersistenceOptions = tokenCachePersistenceOptions, // allows MSAL to cache access tokens
AuthorityHost = new Uri(authority),
SendCertificateChain = spParameters.SendCertificateChain ?? default(bool)
};
Expand All @@ -67,7 +69,7 @@ public override Task<IAccessToken> Authenticate(AuthenticationParameters paramet
//Service principal with secret
var csOptions = new ClientSecretCredentialOptions()
{
TokenCachePersistenceOptions = tokenCachePersistenceOptions, // allows MSAL to cache access tokens
// TokenCachePersistenceOptions = tokenCachePersistenceOptions, // allows MSAL to cache access tokens
AuthorityHost = new Uri(authority)
};
tokenCredential = azureCredentialFactory.CreateClientSecretCredential(tenantId, spParameters.ApplicationId, spParameters.Secret, csOptions);
Expand Down
Loading