Guida alla migrazione per Az 16.0.0

Az.DesktopVirtualization

Update-AzWvdApplication

  • La modifica dirompente del parametro si applicherà a tutti i set di parametri.
    • -Tag
      • Il parametro : 'Tag' sta cambiando.
      • Descrizione modifica: il parametro 'Tag' verrà rimosso dal cmdlet Update dell'applicazione.
      • Questa modifica avrà effetto sul '2/6/2026': la modifica dovrebbe essere applicata dalla versione az : '16.0.0'
      • La modifica dovrebbe essere applicata in 'Az.DesktopVirtualization' dalla versione : '6.0.0'

Prima

Update-AzWvdApplication -ResourceGroupName 'RGName' -GroupName 'AppGroupName' -Name 'AppName' -Tag @{ Env = "Prod" } -FriendlyName 'AppFriendlyName' 

Dopo

Update-AzWvdApplication -ResourceGroupName 'RGName' -GroupName 'AppGroupName' -Name 'AppName' -FriendlyName 'AppFriendlyName' 

Update-AzWvdDesktop

  • La modifica dirompente del parametro si applicherà a tutti i set di parametri.
    • -Tag
      • Il parametro : 'Tag' sta cambiando.
      • Descrizione modifica: il parametro 'Tag' verrà rimosso dal cmdlet Update di Desktop.
      • Questa modifica avrà effetto sul '2/6/2026': la modifica dovrebbe essere applicata dalla versione az : '16.0.0'
      • La modifica dovrebbe essere applicata in 'Az.DesktopVirtualization' dalla versione : '6.0.0'

Prima

Update-AzWvdDesktop -ResourceGroupName 'RGName' -ApplicationGroupName 'AppGroupName' -Name 'DesktopName' -FriendlyName 'DesktopFriendlyName' -Tag @{ Env = "Prod" }

Dopo

Update-AzWvdDesktop -ResourceGroupName 'RGName' -ApplicationGroupName 'AppGroupName' -Name 'DesktopName' -FriendlyName 'DesktopFriendlyName'

Az.NetworkCloud

Update-AzNetworkCloudVirtualMachine

  • La modifica incompatibile del cmdlet interesserà tutti i set di parametri - il cmdlet non supporterà più i set di parametri 'JsonString' e 'JsonFilePath'. I set 'UpdateViaJsonString' e 'UpdateViaJsonFilePath' sono stati rimossi. - Indicazioni: aggiornare gli script per usare i set di parametri espansi anziché passare l'input JSON. - Questa modifica dovrebbe avere effetto il 5/1/2026, dalla versione Az.NetworkCloud: 3.0.0 e Az versione: 16.0.0

Prima

$json = @"
{ "location": "eastus", "extendedLocation": { "name": "myCustomLocation", "type": "CustomLocation" }, "tags": { "env": "test" }
}
"@
Update-AzNetworkCloudVirtualMachine ` -ResourceGroupName MyRg ` -Name MyResource ` -JsonString $json

Dopo

Update-AzNetworkCloudVirtualMachine -ResourceGroupName MyRg -Name MyResource -Location "eastus" -ExtendedLocationName "myCustomLocation" -ExtendedLocationType "CustomLocation" -Tag @{ env = "test" }

Az.PolicyInsights

Get-AzPolicyAttestation

  • La modifica che causa un'interruzione del cmdlet verrà eseguita in tutti i set di parametri
    • Il tipo di output cambia dal tipo esistente :'Microsoft.Azure.Commands.PolicyInsights.Models.Attestations.PSAttestation' al nuovo tipo :'Attestation'
    • Le proprietà seguenti nel tipo di output sono deprecate: 'SystemData'
    • Al tipo di output vengono aggiunte le proprietà seguenti: 'ResourceGroupName' 'SystemDataCreatedAt' 'SystemDataCreatedBy' 'SystemDataCreatedByType' 'SystemDataLastModifiedAt' 'SystemDataLastModifiedBy' 'SystemDataLastModifiedByType'
    • Questa modifica avrà effetto a partire da Az.PolicyInsights versione 2.0.0 e Az versione 16.0.0

Prima

$attestation = Get-AzPolicyAttestation -ResourceGroupName "ps-attestation-test-rg" -Name "Attestation-RGScope-Crud"
[Microsoft.Azure.Commands.PolicyInsights.Models.Attestations.PSAttestation]$attestation = $attestation
$creationTime = $attestation.SystemData.CreatedAt

Dopo

$attestation = Get-AzPolicyAttestation -ResourceGroupName "ps-attestation-test-rg" -Name "Attestation-RGScope-Crud"
[Microsoft.Azure.PowerShell.Cmdlets.PolicyInsights.Models.IAttestation]$attestation = $attestation
$creationTime = $attestation.SystemDataCreatedAt

Get-AzPolicyEvent

  • La modifica che causa un'interruzione del cmdlet verrà eseguita in tutti i set di parametri
    • Tipo di output 'Microsoft.Azure. Commands.PolicyInsights.Models.PolicyEvent' sta cambiando
    • Le proprietà seguenti nel tipo di output sono deprecate: 'ResourceTags' 'ManagementGroupIds'
    • Al tipo di output vengono aggiunte le proprietà seguenti: 'ResourceTag' 'ManagementGroupId' 'ComplianceState' 'Component' 'EffectiveParameter' 'OdataContext' 'OdataId' 'Keys' 'Values' 'Count' 'AdditionalProperties'
    • Questa modifica avrà effetto a partire da Az.PolicyInsights versione 2.0.0 e Az versione 16.0.0

Prima

$event = Get-AzPolicyEvent -ResourceGroupName "myResourceGroup" -PolicyAssignmentName "ddd8ef92e3714a5ea3d208c1"
[Microsoft.Azure.Commands.PolicyInsights.Models.PolicyEvent]$event = $event 
$managementGroup = $event[0].ManagementGroupIds

Dopo

$event = Get-AzPolicyEvent -ResourceGroupName "myResourceGroup" -PolicyAssignmentName "ddd8ef92e3714a5ea3d208c1"
[Microsoft.Azure.PowerShell.Cmdlets.PolicyInsights.Models.IPolicyEvent]$event = $event
$managementGroup = $event[0].ManagementGroupId

Get-AzPolicyMetadata

  • La modifica che causa un'interruzione del cmdlet verrà eseguita in tutti i set di parametri
    • Il tipo di output cambia dal tipo esistente :'Microsoft.Azure. Commands.PolicyInsights.Models.PSPolicyMetadata' al nuovo tipo :'PolicyMetadata'
    • Le proprietà seguenti vengono aggiunte al tipo di output : 'ResourceGroupName'
    • Questa modifica avrà effetto a partire da Az.PolicyInsights versione 2.0.0 e Az versione 16.0.0

Prima

$metadata = Get-AzPolicyMetadata -Name ACF1348
[Microsoft.Azure.Commands.PolicyInsights.Models.PSPolicyMetadata]$metadata = $metadata

Dopo

$metadata = Get-AzPolicyMetadata -Name ACF1348
[Microsoft.Azure.PowerShell.Cmdlets.PolicyInsights.Models.PolicyMetadata]$metadata = $metadata

Get-AzPolicyRemediation

  • La modifica che causa un'interruzione del cmdlet verrà eseguita in tutti i set di parametri
    • Il tipo di output cambia dal tipo esistente :'Microsoft.Azure. Commands.PolicyInsights.Models.Remediation.PSRemediation' al nuovo tipo :'Remediation'
    • Le seguenti proprietà nel tipo di output sono considerate obsolete: 'Filters' 'DeploymentSummary' 'FailureThreshold' 'ParallelDeployments'
    • Le seguenti proprietà vengono aggiunte al tipo di output: 'FilterLocation' 'FilterResourceId' 'DeploymentStatusFailedDeployment' 'DeploymentStatusSuccessfulDeployment' 'DeploymentStatusTotalDeployment' 'FailureThresholdPercentage' 'ParallelDeployment' 'ResourceGroupName' 'SystemDataCreatedAt' 'SystemDataCreatedBy' 'SystemDataCreatedByType' 'SystemDataLastModifiedAt' 'SystemDataLastModifiedBy' 'SystemDataLastModifiedByType'
    • Questa modifica avrà effetto a partire da Az.PolicyInsights versione 2.0.0 e Az versione 16.0.0

Prima

$remediation = Get-AzPolicyRemediation -ResourceGroupName "myResourceGroup" -Name "remediation1" -IncludeDetail
[Microsoft.Azure.Commands.PolicyInsights.Models.Remediation.PSRemediation]$remediation = $remediation
$locationFilter = $remediation.Filters.Locations

Dopo

$remediation = Get-AzPolicyRemediation -ResourceGroupName "myResourceGroup" -Name "remediation1" -IncludeDetail
[Microsoft.Azure.PowerShell.Cmdlets.PolicyInsights.Models.IRemediation]$remediation = $remediation
$locationFilter = $remediation.FilterLocation

Get-AzPolicyState

  • La modifica che causa un'interruzione del cmdlet verrà eseguita in tutti i set di parametri
    • Tipo di output 'Microsoft.Azure. Commands.PolicyInsights.Models.PolicyState' sta cambiando
    • Le proprietà seguenti nel tipo di output sono deprecate: 'ResourceTags' 'ManagementGroupIds'
    • Al tipo di output vengono aggiunte le proprietà seguenti: 'ResourceGroupName' 'ResourceTag' 'ManagementGroupId'
    • Questa modifica avrà effetto a partire da Az.PolicyInsights versione 2.0.0 e Az versione 16.0.0

Prima

$state = Get-AzPolicyState -ResourceGroupName "myResourceGroup" -PolicyAssignmentName "ddd8ef92e3714a5ea3d208c1"
[Microsoft.Azure.Commands.PolicyInsights.Models.PolicyState]$state = $state
$managementGroup = $state[0].ManagementGroupIds

Dopo

$state = Get-AzPolicyState -ResourceGroupName "myResourceGroup" -PolicyAssignmentName "ddd8ef92e3714a5ea3d208c1"
[Microsoft.Azure.PowerShell.Cmdlets.PolicyInsights.Models.IPolicyState]$state = $state
$managementGroup = $state[0].ManagementGroupId

Get-AzPolicyStateSummary

  • La modifica che causa un'interruzione del cmdlet verrà eseguita in tutti i set di parametri
    • Tipo di output 'Microsoft.Azure. Commands.PolicyInsights.Models.PolicyStateSummary' sta cambiando
    • Le proprietà seguenti nel tipo di output sono deprecate: 'PolicyAssignments' 'Results'
    • Al tipo di output vengono aggiunte le proprietà seguenti: 'PolicyAssignment' 'ResultCompliantResource' 'ResultNonCompliantPolicy' 'ResultNonCompliantResource' 'ResultPolicyDetail' 'ResultPolicyGroupDetail' 'ResultQueryResultsUri' 'ResultResourceDetail' 'OdataId' 'OdataContext'
    • Questa modifica avrà effetto a partire da Az.PolicyInsights versione 2.0.0 e Az versione 16.0.0

Prima

$stateSummary = Get-AzPolicyStateSummary -ManagementGroupName "myManagementGroup"
[Microsoft.Azure.Commands.PolicyInsights.Models.PolicyStateSummary]$stateSummary = $stateSummary
$nonCompliantResourceCount = $stateSummary.Results.NonCompliantResources

Dopo

$stateSummary = Get-AzPolicyStateSummary -ManagementGroupName "myManagementGroup"
[Microsoft.Azure.PowerShell.Cmdlets.PolicyInsights.Models.ISummary]$stateSummary = $stateSummary
$nonCompliantResourceCount = $stateSummary.ResultNonCompliantResource

New-AzPolicyAttestation

  • La modifica che causa un'interruzione del cmdlet verrà eseguita in tutti i set di parametri
    • Il tipo di output cambia dal tipo esistente :'Microsoft.Azure.Commands.PolicyInsights.Models.Attestations.PSAttestation' al nuovo tipo :'Attestation'
    • Le proprietà seguenti nel tipo di output sono deprecate: 'SystemData'
    • Al tipo di output vengono aggiunte le proprietà seguenti: 'ResourceGroupName' 'SystemDataCreatedAt' 'SystemDataCreatedBy' 'SystemDataCreatedByType' 'SystemDataLastModifiedAt' 'SystemDataLastModifiedBy' 'SystemDataLastModifiedByType'
    • Questa modifica avrà effetto a partire da Az.PolicyInsights versione 2.0.0 e Az versione 16.0.0

Prima

$attestation = New-AzPolicyAttestation -PolicyAssignmentId $policyAssignmentId -Name $attestationName -ComplianceState "Compliant"
[Microsoft.Azure.Commands.PolicyInsights.Models.Attestations.PSAttestation]$attestation = $attestation
$creationTime = $attestation.SystemData.CreatedAt

Dopo

$attestation = New-AzPolicyAttestation -PolicyAssignmentId $policyAssignmentId -Name $attestationName -ComplianceState "Compliant"
[Microsoft.Azure.PowerShell.Cmdlets.PolicyInsights.Models.IAttestation]$attestation = $attestation
$creationTime = $attestation.SystemDataCreatedAt

Set-AzPolicyAttestation

  • La modifica che causa un'interruzione del cmdlet verrà eseguita in tutti i set di parametri
    • Il tipo di output cambia dal tipo esistente :'Microsoft.Azure.Commands.PolicyInsights.Models.Attestations.PSAttestation' al nuovo tipo :'Attestation'
    • Le proprietà seguenti nel tipo di output sono deprecate: 'SystemData'
    • Al tipo di output vengono aggiunte le proprietà seguenti: 'ResourceGroupName' 'SystemDataCreatedAt' 'SystemDataCreatedBy' 'SystemDataCreatedByType' 'SystemDataLastModifiedAt' 'SystemDataLastModifiedBy' 'SystemDataLastModifiedByType'
    • Questa modifica avrà effetto a partire da Az.PolicyInsights versione 2.0.0 e Az versione 16.0.0

Prima

$attestation = Set-AzPolicyAttestation -PolicyAssignmentId $policyAssignmentId -Name $attestationName -ComplianceState "NonCompliant" -Comment $comment
[Microsoft.Azure.Commands.PolicyInsights.Models.Attestations.PSAttestation]$attestation = $attestation
$creationTime = $attestation.SystemData.CreatedAt

Dopo

$attestation = Update-AzPolicyAttestation -PolicyAssignmentId $policyAssignmentId -Name $attestationName -ComplianceState "NonCompliant" -Comment $comment
[Microsoft.Azure.PowerShell.Cmdlets.PolicyInsights.Models.IAttestation]$attestation = $attestation
$creationTime = $attestation.SystemDataCreatedAt

Start-AzPolicyRemediation

  • La modifica che causa un'interruzione del cmdlet verrà eseguita in tutti i set di parametri
    • Start-AzPolicyRemediation restituirà ora quando la correzione raggiunge uno stato terminale, a meno che non si usi il nuovo parametro NoWait.
    • Questa modifica avrà effetto a partire da Az.PolicyInsights versione 2.0.0 e Az versione 16.0.0

Prima

$remediation = Start-AzPolicyRemediation -PolicyAssignmentId $policyAssignmentId -Name "remediation1"
[Microsoft.Azure.Commands.PolicyInsights.Models.Remediation.PSRemediation]$remediation = $remediation
$locationFilter = $remediation.Filters.Locations

Dopo

$remediation = Start-AzPolicyRemediation -PolicyAssignmentId $policyAssignmentId -Name "remediation1" -NoWait
[Microsoft.Azure.PowerShell.Cmdlets.PolicyInsights.Models.IRemediation]$remediation = $remediation
$locationFilter = $remediation.FilterLocation

Stop-AzPolicyRemediation

  • La modifica che causa un'interruzione del cmdlet verrà eseguita in tutti i set di parametri
    • Stop-AzPolicyRemediation avrà ora un parametro switch NoWait, oltre a restituire l'oggetto Remediation anziché solo un valore booleano.
    • Questa modifica avrà effetto a partire da Az.PolicyInsights versione 2.0.0 e Az versione 16.0.0

Prima

$successfulBoolean = Stop-AzPolicyRemediation -ResourceGroupName "myRG" -Name "remediation1"

Dopo

$remediation = Stop-AzPolicyRemediation -ResourceGroupName "myRG" -Name "remediation1"
[Microsoft.Azure.PowerShell.Cmdlets.PolicyInsights.Models.IRemediation]$remediation = $remediation

Az.Resources

Get-AzPolicyAssignment

Il BackwardCompatible parametro è stato introdotto in precedenza per mantenere la forma di output basata su legacy .Properties. Questo parametro è stato rimosso. I cmdlet restituiscono sempre la struttura moderna e appiattita dell'oggetto e l'accesso precedente tramite .Properties.* non è più supportato. Gli script devono essere aggiornati per fare riferimento direttamente alle proprietà di prima classe.

Prima

$policyAssignment = Get-AzPolicyAssignment -Name MyAssignment -BackwardCompatible
$description = $policyAssignment.Properties.Description

Dopo

$policyAssignment = Get-AzPolicyAssignment -Name MyAssignment
$description = $policyAssignment.Description

Get-AzPolicyDefinition

Il BackwardCompatible parametro è stato introdotto in precedenza per mantenere la forma di output basata su legacy .Properties. Questo parametro è stato rimosso. I cmdlet restituiscono sempre la struttura moderna e appiattita dell'oggetto e l'accesso precedente tramite .Properties.* non è più supportato. Gli script devono essere aggiornati per fare riferimento direttamente alle proprietà di prima classe.

Prima

$policyDefinition = Get-AzPolicyDefinition -Builtin -BackwardCompatible | select -First 1
$policyRule = $policyDefinition.Properties.PolicyRule

Dopo

$policyDefinition = Get-AzPolicyDefinition -Builtin | select -First 1
$policyRule = $policyDefinition.PolicyRule

Get-AzPolicyExemption

Il BackwardCompatible parametro è stato introdotto in precedenza per mantenere la forma di output basata su legacy .Properties. Questo parametro è stato rimosso. I cmdlet restituiscono sempre la struttura moderna e appiattita dell'oggetto e l'accesso precedente tramite .Properties.* non è più supportato. Gli script devono essere aggiornati per fare riferimento direttamente alle proprietà di prima classe.

Prima

$policyExemption = Get-AzPolicyExemption -Scope /providers/Microsoft.Management/managementGroups/myManagementGroup -Name MyExemption -BackwardCompatible
$expiresOn = $policyExemption.Properties.ExpiresOn

Dopo

$policyExemption = Get-AzPolicyExemption -Scope /providers/Microsoft.Management/managementGroups/myManagementGroup -Name MyExemption
$expiresOn = $policyExemption.ExpiresOn

Get-AzPolicySetDefinition

Il BackwardCompatible parametro è stato introdotto in precedenza per mantenere la forma di output basata su legacy .Properties. Questo parametro è stato rimosso. I cmdlet restituiscono sempre la struttura moderna e appiattita dell'oggetto e l'accesso precedente tramite .Properties.* non è più supportato. Gli script devono essere aggiornati per fare riferimento direttamente alle proprietà di prima classe.

Prima

$policySetDefinition = Get-AzPolicySetDefinition -Builtin -BackwardCompatible | select -First 1
$policySetParameters = $policySetDefinition.Properties.Parameters

Dopo

$policySetDefinition = Get-AzPolicySetDefinition -Builtin | select -First 1
$policySetParameters = $policySetDefinition.Parameter

New-AzPolicyAssignment

Il BackwardCompatible parametro è stato introdotto in precedenza per mantenere la forma di output basata su legacy .Properties. Questo parametro è stato rimosso. I cmdlet restituiscono sempre la struttura moderna e appiattita dell'oggetto e l'accesso precedente tramite .Properties.* non è più supportato. Gli script devono essere aggiornati per fare riferimento direttamente alle proprietà di prima classe.

Prima

$policyAssignment = New-AzPolicyAssignment -Name MyAssignment -PolicyDefinition MyPolicyDefinition -BackwardCompatible
$enforcementMode = $policyAssignment.Properties.EnforcementMode

Dopo

$policyAssignment = New-AzPolicyAssignment -Name MyAssignment -PolicyDefinition MyPolicyDefinition
$enforcementMode = $policyAssignment.EnforcementMode

New-AzPolicyDefinition

Il BackwardCompatible parametro è stato introdotto in precedenza per mantenere la forma di output basata su legacy .Properties. Questo parametro è stato rimosso. I cmdlet restituiscono sempre la struttura moderna e appiattita dell'oggetto e l'accesso precedente tramite .Properties.* non è più supportato. Gli script devono essere aggiornati per fare riferimento direttamente alle proprietà di prima classe.

Prima

$policyRule = '{ "if": { "field": "type", "like": "Microsoft.DesktopVirtualization/*" }, "then": { "effect": "deny" } }'
$policyDefinition = New-AzPolicyDefinition -Name MyDefinition -Policy $policyRule -BackwardCompatible
$policyType = $policyDefinition.Properties.PolicyType

Dopo

$policyRule = '{ "if": { "field": "type", "like": "Microsoft.DesktopVirtualization/*" }, "then": { "effect": "deny" } }'
$policyDefinition = New-AzPolicyDefinition -Name MyDefinition -Policy $policyRule
$policyType = $policyDefinition.PolicyType

New-AzPolicyExemption

Il BackwardCompatible parametro è stato introdotto in precedenza per mantenere la forma di output basata su legacy .Properties. Questo parametro è stato rimosso. I cmdlet restituiscono sempre la struttura moderna e appiattita dell'oggetto e l'accesso precedente tramite .Properties.* non è più supportato. Gli script devono essere aggiornati per fare riferimento direttamente alle proprietà di prima classe.

Prima

$policyExemption = Get-AzPolicyAssignment -Name MyAssignment | New-AzPolicyExemption -Name MyExemption -ExemptionCategory Mitigated -BackwardCompatible
$policyAssignmentId = $policyExemption.Properties.PolicyAssignmentId

Dopo

$policyExemption = Get-AzPolicyAssignment -Name MyAssignment | New-AzPolicyExemption -Name MyExemption -ExemptionCategory Mitigated
$policyAssignmentId = $policyExemption.PolicyAssignmentId

New-AzPolicySetDefinition

Il BackwardCompatible parametro è stato introdotto in precedenza per mantenere la forma di output basata su legacy .Properties. Questo parametro è stato rimosso. I cmdlet restituiscono sempre la struttura moderna e appiattita dell'oggetto e l'accesso precedente tramite .Properties.* non è più supportato. Gli script devono essere aggiornati per fare riferimento direttamente alle proprietà di prima classe.

Prima

$policyDefinitionReferences = ('[{ "policyDefinitionId": "' + (Get-AzPolicyDefinition -Name MyDefinition).ResourceId + '"}]')
$policySetDefinition = New-AzPolicySetDefinition -Name MySetDefinition -PolicyDefinition $policyDefinitionReferences -BackwardCompatible
$policyDefinitionReferenceId = $policySetDefinition.Properties.PolicyDefinitions[0].policyDefinitionReferenceId

Dopo

$policyDefinitionReferences = ('[{ "policyDefinitionId": "' + (Get-AzPolicyDefinition -Name MyDefinition).ResourceId + '"}]')
$policySetDefinition = New-AzPolicySetDefinition -Name MySetDefinition -PolicyDefinition $policyDefinitionReferences
$policyDefinitionReferenceId = $policySetDefinition.PolicyDefinition[0].policyDefinitionReferenceId

Remove-AzPolicyAssignment

Il BackwardCompatible parametro è stato introdotto in precedenza per mantenere il comportamento legacy in cui Remove- i cmdlet hanno sempre restituito un valore. Questo parametro è stato rimosso. Remove- I cmdlet restituiranno solo un valore quando -PassThru viene specificato.

Prima

$result = Remove-AzPolicyAssignment -Name MyAssignment -BackwardCompatible

Dopo

$result = Remove-AzPolicyAssignment -Name MyAssignment -PassThru

Remove-AzPolicyDefinition

Il BackwardCompatible parametro è stato introdotto in precedenza per mantenere il comportamento legacy in cui Remove- i cmdlet hanno sempre restituito un valore. Questo parametro è stato rimosso. Remove- I cmdlet restituiranno solo un valore quando -PassThru viene specificato.

Prima

$result = Remove-AzPolicyDefinition -Name MyDefinition -BackwardCompatible

Dopo

$result = Remove-AzPolicyDefinition -Name MyDefinition -PassThru

Remove-AzPolicyExemption

Il BackwardCompatible parametro è stato introdotto in precedenza per mantenere il comportamento legacy in cui Remove- i cmdlet hanno sempre restituito un valore. Questo parametro è stato rimosso. Remove- I cmdlet restituiranno solo un valore quando -PassThru viene specificato.

Prima

$result = Remove-AzPolicyExemption -Name MyExemption -BackwardCompatible

Dopo

$result = Remove-AzPolicyExemption -Name MyExemption -PassThru

Remove-AzPolicySetDefinition

Il BackwardCompatible parametro è stato introdotto in precedenza per mantenere il comportamento legacy in cui Remove- i cmdlet hanno sempre restituito un valore. Questo parametro è stato rimosso. Remove- I cmdlet restituiranno solo un valore quando -PassThru viene specificato.

Prima

$result = Remove-AzPolicySetDefinition -Name MySetDefinition -BackwardCompatible

Dopo

$result = Remove-AzPolicySetDefinition -Name MySetDefinition -PassThru

Update-AzPolicyAssignment

Il BackwardCompatible parametro è stato introdotto in precedenza per mantenere la forma di output basata su legacy .Properties. Questo parametro è stato rimosso. I cmdlet restituiscono sempre la struttura moderna e appiattita dell'oggetto e l'accesso precedente tramite .Properties.* non è più supportato. Gli script devono essere aggiornati per fare riferimento direttamente alle proprietà di prima classe.

Prima

$policyAssignment = Update-AzPolicyAssignment -Name MyAssignment -DisplayName 'My cool assignment' -BackwardCompatible
$displayName = $policyAssignment.Properties.DisplayName

Dopo

$policyAssignment = Update-AzPolicyAssignment -Name MyAssignment -DisplayName 'My cool assignment'
$displayName = $policyAssignment.DisplayName

Update-AzPolicyDefinition

Il BackwardCompatible parametro è stato introdotto in precedenza per mantenere la forma di output basata su legacy .Properties. Questo parametro è stato rimosso. I cmdlet restituiscono sempre la struttura moderna e appiattita dell'oggetto e l'accesso precedente tramite .Properties.* non è più supportato. Gli script devono essere aggiornati per fare riferimento direttamente alle proprietà di prima classe.

Prima

$policyDefinition = Update-AzPolicyDefinition -Name MyDefinition -Description 'A much better policy definition' -BackwardCompatible
$description = $policyDefinition.Properties.Description

Dopo

$policyDefinition = Update-AzPolicyDefinition -Name MyDefinition -Description 'A much better policy definition'
$description = $policyDefinition.Description

Update-AzPolicyExemption

Il BackwardCompatible parametro è stato introdotto in precedenza per mantenere la forma di output basata su legacy .Properties. Questo parametro è stato rimosso. I cmdlet restituiscono sempre la struttura moderna e appiattita dell'oggetto e l'accesso precedente tramite .Properties.* non è più supportato. Gli script devono essere aggiornati per fare riferimento direttamente alle proprietà di prima classe.

Prima

$policyExemption = Update-AzPolicyExemption -Name MyExemption -ExemptionCategory Waiver -BackwardCompatible
$exemptionCategory = $policyExemption.Properties.ExemptionCategory

Dopo

$policyExemption = Update-AzPolicyExemption -Name MyExemption -ExemptionCategory Waiver
$exemptionCategory = $policyExemption.ExemptionCategory

Update-AzPolicySetDefinition

Il BackwardCompatible parametro è stato introdotto in precedenza per mantenere la forma di output basata su legacy .Properties. Questo parametro è stato rimosso. I cmdlet restituiscono sempre la struttura moderna e appiattita dell'oggetto e l'accesso precedente tramite .Properties.* non è più supportato. Gli script devono essere aggiornati per fare riferimento direttamente alle proprietà di prima classe.

Prima

$policySetDefinition = Update-AzPolicySetDefinition -Name MySetDefinition -Metadata '{ "MyThing": "A really good thing" }' -BackwardCompatible
$myThing = $policySetDefinition.Properties.Metadata.MyThing

Dopo

$policySetDefinition = Update-AzPolicySetDefinition -Name MySetDefinition -Metadata '{ "MyThing": "A really good thing" }'
$myThing = $policySetDefinition.Metadata.MyThing

Az.Sql

New-AzSqlServer

  • La modifica che causa un'interruzione del parametro verrà eseguita in tutti i set di parametri- -EnableSoftDelete - Il parametro : 'EnableSoftDelete' sta cambiando. - Modificare la descrizione: il parametro 'EnableSoftDelete' verrà rimosso dal cmdlet New-AzSqlServer dell'applicazione. - Questa modifica avrà effetto sul '2/6/2026'- La modifica dovrebbe essere applicata dalla versione az : '16.0.0': la modifica dovrebbe essere applicata in 'Az.Sql' dalla versione : '7.0.0'

Prima

New-AzSqlServer -ResourceGroupName $rg -ServerName $server -SqlAdministratorCredentials $sqlCred -Location $location-EnableSoftDelete $true

Dopo

New-AzSqlServer -ResourceGroupName $rg -ServerName $server -SqlAdministratorCredentials $sqlCred -Location $location -SoftDeleteRetentionDays 7

Set-AzSqlServer

  • La modifica che causa un'interruzione del parametro verrà eseguita in tutti i set di parametri- -EnableSoftDelete - Il parametro : 'EnableSoftDelete' sta cambiando. - Modificare la descrizione: il parametro 'EnableSoftDelete' verrà rimosso dal cmdlet Set-AzSqlServer dell'applicazione. - Questa modifica avrà effetto sul '2/6/2026'- La modifica dovrebbe essere applicata dalla versione az : '16.0.0': la modifica dovrebbe essere applicata in 'Az.Sql' dalla versione : '7.0.0'

Prima

Set-AzSqlServer -ResourceGroupName $rg -ServerName -EnableSoftDelete $true

Dopo

Set-AzSqlServer -ResourceGroupName $rg -ServerName -SoftDeleteRetentionDays 7

Az.StackHCIVM

New-AzStackHCIVMImage

  • La modifica dirompente del parametro si applicherà a tutti i set di parametri.
    • -ImagePath

Prima

ImagePath is of type 'string'

Dopo

ImagePath has been changed to SecureString

New-AzStackHCIVMVirtualMachine

  • La modifica dirompente del parametro si applicherà a tutti i set di parametri.
    • -AdminPassword

Prima

AdminPassword is of type 'string'

Dopo

AdminPassword has been changed to SecureString

Az.StorageAction

Get-AzStorageActionTask

  • La modifica che causa un'interruzione del cmdlet verrà eseguita in tutti i set di parametri
    • Tipo di output 'Microsoft.Azure. PowerShell.Cmdlets.StorageAction.Models.IStorageTask' sta cambiando
    • Le seguenti proprietà nel tipo di output sono in fase di dismissione: 'IdentityUserAssignedIdentity'
    • Vengono aggiunte le seguenti proprietà al tipo di output: 'IdentityUserAssignedIdentity'
    • Descrizione modifica: i tipi della proprietà 'IdentityUserAssignedIdentity' verranno modificati da 'Microsoft.Azure. PowerShell.Cmdlets.StorageAction.Models.IUserAssignedIdentities" a "Microsoft.Azure. PowerShell.Cmdlets.StorageAction.Models.IManagedServiceIdentityUserAssignedIdentities'
    • Questa modifica avrà effetto su '5/1/2026': la modifica dovrebbe essere applicata dalla versione az : '16.0.0'
    • La modifica dovrebbe essere applicata in 'Az.StorageAction' dalla versione : '2.0.0'

Prima

$task = Get-AzStorageActionTask -ResourceGroupName MyRg -Name MyTask
[Microsoft.Azure.PowerShell.Cmdlets.StorageAction.Models.IUserAssignedIdentities]$identity = $task.IdentityUserAssignedIdentity

Dopo

$task = Get-AzStorageActionTask -ResourceGroupName MyRg -Name MyTask
[Microsoft.Azure.PowerShell.Cmdlets.StorageAction.Models.IManagedServiceIdentityUserAssignedIdentities]$identity = $task.IdentityUserAssignedIdentity

New-AzStorageActionTask

  • La modifica che causa un'interruzione del cmdlet verrà eseguita in tutti i set di parametri
    • Tipo di output 'Microsoft.Azure. PowerShell.Cmdlets.StorageAction.Models.IStorageTask' sta cambiando
    • Le seguenti proprietà nel tipo di output sono in fase di dismissione: 'IdentityUserAssignedIdentity'
    • Vengono aggiunte le seguenti proprietà al tipo di output: 'IdentityUserAssignedIdentity'
    • Descrizione modifica: i tipi della proprietà 'IdentityUserAssignedIdentity' verranno modificati da 'Microsoft.Azure. PowerShell.Cmdlets.StorageAction.Models.IUserAssignedIdentities" a "Microsoft.Azure. PowerShell.Cmdlets.StorageAction.Models.IManagedServiceIdentityUserAssignedIdentities'
    • Questa modifica avrà effetto su '5/1/2026': la modifica dovrebbe essere applicata dalla versione az : '16.0.0'
    • La modifica dovrebbe essere applicata in 'Az.StorageAction' dalla versione : '2.0.0'

Prima

$task = New-AzStorageActionTask -ResourceGroupName MyRg -Name MyTask
[Microsoft.Azure.PowerShell.Cmdlets.StorageAction.Models.IUserAssignedIdentities]$identity = $task.IdentityUserAssignedIdentity

Dopo

$task = New-AzStorageActionTask -ResourceGroupName MyRg -Name MyTask
[Microsoft.Azure.PowerShell.Cmdlets.StorageAction.Models.IManagedServiceIdentityUserAssignedIdentities]$identity = $task.IdentityUserAssignedIdentity

Update-AzStorageActionTask

  • La modifica che causa un'interruzione del cmdlet verrà eseguita in tutti i set di parametri
    • Tipo di output 'Microsoft.Azure. PowerShell.Cmdlets.StorageAction.Models.IStorageTask' sta cambiando
    • Le seguenti proprietà nel tipo di output sono in fase di dismissione: 'IdentityUserAssignedIdentity'
    • Vengono aggiunte le seguenti proprietà al tipo di output: 'IdentityUserAssignedIdentity'
    • Descrizione modifica: i tipi della proprietà 'IdentityUserAssignedIdentity' verranno modificati da 'Microsoft.Azure. PowerShell.Cmdlets.StorageAction.Models.IUserAssignedIdentities" a "Microsoft.Azure. PowerShell.Cmdlets.StorageAction.Models.IManagedServiceIdentityUserAssignedIdentities'
    • Questa modifica avrà effetto su '5/1/2026': la modifica dovrebbe essere applicata dalla versione az : '16.0.0'
    • La modifica dovrebbe essere applicata in 'Az.StorageAction' dalla versione : '2.0.0'

Prima

$task = Update-AzStorageActionTask -ResourceGroupName MyRg -Name MyTask
[Microsoft.Azure.PowerShell.Cmdlets.StorageAction.Models.IUserAssignedIdentities]$identity = $task.IdentityUserAssignedIdentity

Dopo

$task = Update-AzStorageActionTask -ResourceGroupName MyRg -Name MyTask
[Microsoft.Azure.PowerShell.Cmdlets.StorageAction.Models.IManagedServiceIdentityUserAssignedIdentities]$identity = $task.IdentityUserAssignedIdentity

Moduli migrati da autorest v3 a autorest v4

Per mantenere la coerenza comportamentale e introdurre nuove funzionalità supportate da AutoRest v4, sono stati aggiornati molti moduli per l'uso di AutoRest v4. Questo aggiornamento ha introdotto diverse modifiche di rilievo. I dettagli sulle potenziali modifiche che causano un'interruzione e sui relativi approcci di mitigazione sono disponibili nel collegamento seguente.

Moduli potenzialmente interessati

  • Az.CloudService
  • Az.ContainerInstance
  • Az.Databricks
  • Az.DataProtection
  • Az.DnsResolver
  • Az.Functions
  • Az.Kusto
  • Az.LoadTesting
  • Az.MachineLearningServices
  • Az.ManagedServices
  • Az.Migrate
  • Az.Monitor
  • Az.MySql
  • Az.RedisEnterpriseCache
  • Az.ResourceMover
  • Az.SecurityInsights
  • Az.SignalR
  • Az.SqlVirtualMachine
  • Az.StackHCI
  • Az.Websites