Guia de migração para o Az 16.0.0

Az.DesktopVirtualization

Update-AzWvdApplication

  • Alteração de quebra de parâmetro ocorrerá em todos os conjuntos de parâmetros
    • -Tag
      • O parâmetro : 'Tag' está sendo alterado.
      • Descrição da alteração: o parâmetro 'Tag' será removido do cmdlet Atualização do Aplicativo.
      • Essa alteração entrará em vigor em '2/6/2026'- Espera-se que a alteração entre em vigor na versão do Az: '16.0.0'
      • Espera-se que a alteração entre em vigor em 'Az.DesktopVirtualization' da versão : '6.0.0'

Antes

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

Depois

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

Update-AzWvdDesktop

  • Alteração de quebra de parâmetro ocorrerá em todos os conjuntos de parâmetros
    • -Tag
      • O parâmetro : 'Tag' está sendo alterado.
      • Descrição da alteração: o parâmetro 'Tag' será removido do cmdlet de Atualização da Área de Trabalho.
      • Essa alteração entrará em vigor em '2/6/2026'- Espera-se que a alteração entre em vigor na versão do Az: '16.0.0'
      • Espera-se que a alteração entre em vigor em 'Az.DesktopVirtualization' da versão : '6.0.0'

Antes

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

Depois

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

Az.NetworkCloud

Update-AzNetworkCloudVirtualMachine

  • A alteração significativa do cmdlet afetará todos os conjuntos de parâmetros - o cmdlet não dará mais suporte aos conjuntos de parâmetros 'JsonString' e 'JsonFilePath'. Os conjuntos 'UpdateViaJsonString' e 'UpdateViaJsonFilePath' foram removidos. - Diretrizes: atualize os scripts para usar os conjuntos de parâmetros expandidos em vez de passar a entrada JSON. - Essa alteração deve entrar em vigor em 1/5/2026, na versão do Az.NetworkCloud: 3.0.0 e versão do Az: 16.0.0

Antes

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

Depois

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

Az.PolicyInsights

Get-AzPolicyAttestation

  • A alteração disruptiva do cmdlet afetará todos os conjuntos de parâmetros
    • O tipo de saída está mudando do tipo existente :'Microsoft.Azure. Commands.PolicyInsights.Models.Attestations.PSAttestation' para o novo tipo :'Atestado'
    • As seguintes propriedades no tipo de saída estão sendo preteridas: 'SystemData'
    • As seguintes propriedades estão sendo adicionadas ao tipo de saída: 'ResourceGroupName', 'SystemDataCreatedAt', 'SystemDataCreatedBy', 'SystemDataCreatedByType', 'SystemDataLastModifiedAt', 'SystemDataLastModifiedBy', 'SystemDataLastModifiedByType'
    • Espera-se que essa alteração entre em vigor a partir da versão Az.PolicyInsights: 2.0.0 e Az: 16.0.0.

Antes

$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

Depois

$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

  • A alteração disruptiva do cmdlet afetará todos os conjuntos de parâmetros
    • O tipo de saída 'Microsoft.Azure. Commands.PolicyInsights.Models.PolicyEvent' está mudando
    • As seguintes propriedades no tipo de saída estão sendo preteridas: 'ResourceTags' 'ManagementGroupIds'
    • As propriedades a seguir estão sendo adicionadas ao tipo de saída: 'ResourceTag' 'ManagementGroupId' 'ComplianceState' 'Component' 'EffectiveParameter' 'OdataContext' 'OdataId' 'Keys' 'Values' 'Count' 'AdditionalProperties'
    • Espera-se que essa alteração entre em vigor a partir da versão Az.PolicyInsights: 2.0.0 e Az: 16.0.0.

Antes

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

Depois

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

Get-AzPolicyMetadata

  • A alteração disruptiva do cmdlet afetará todos os conjuntos de parâmetros
    • O tipo de saída está mudando do tipo existente :'Microsoft.Azure. Commands.PolicyInsights.Models.PSPolicyMetadata' para o novo tipo :'PolicyMetadata'
    • As seguintes propriedades estão sendo adicionadas ao tipo de saída: 'ResourceGroupName'
    • Espera-se que essa alteração entre em vigor a partir da versão Az.PolicyInsights: 2.0.0 e Az: 16.0.0.

Antes

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

Depois

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

Get-AzPolicyRemediation

  • A alteração disruptiva do cmdlet afetará todos os conjuntos de parâmetros
    • O tipo de saída está mudando do tipo existente :'Microsoft.Azure.Commands.PolicyInsights.Models.Remediation.PSRemediation' para o novo tipo :'Remediação'
    • As seguintes propriedades no tipo de saída estão sendo preteridas: 'Filters' 'DeploymentSummary' 'FailureThreshold' 'ParallelDeployments'
    • As seguintes propriedades estão sendo adicionadas ao tipo de saída: 'FilterLocation' 'FilterResourceId' 'DeploymentStatusFailedDeployment' 'DeploymentStatusSuccessfulDeployment' 'DeploymentStatusTotalDeployment' 'FailureThresholdPercentage' 'ParallelDeployment' 'ResourceGroupName' 'SystemDataCreatedAt' 'SystemDataCreatedBy' 'SystemDataCreatedByType' 'SystemDataLastModifiedAt' 'SystemDataLastModifiedBy' 'SystemDataLastModifiedByType'
    • Espera-se que essa alteração entre em vigor a partir da versão Az.PolicyInsights: 2.0.0 e Az: 16.0.0.

Antes

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

Depois

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

Get-AzPolicyState

  • A alteração disruptiva do cmdlet afetará todos os conjuntos de parâmetros
    • O tipo de saída 'Microsoft.Azure. Commands.PolicyInsights.Models.PolicyState' está mudando
    • As seguintes propriedades no tipo de saída estão sendo preteridas: 'ResourceTags' 'ManagementGroupIds'
    • As seguintes propriedades estão sendo adicionadas ao tipo de saída: 'ResourceGroupName' 'ResourceTag' 'ManagementGroupId'
    • Espera-se que essa alteração entre em vigor a partir da versão Az.PolicyInsights: 2.0.0 e Az: 16.0.0.

Antes

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

Depois

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

Get-AzPolicyStateSummary

  • A alteração disruptiva do cmdlet afetará todos os conjuntos de parâmetros
    • O tipo de saída 'Microsoft.Azure.Commands.PolicyInsights.Models.PolicyStateSummary' está mudando.
    • As seguintes propriedades no tipo de saída estão sendo preteridas: 'PolicyAssignments' 'Results'
    • As propriedades a seguir estão sendo adicionadas ao tipo de saída: 'PolicyAssignment', 'ResultCompliantResource', 'ResultNonCompliantPolicy', 'ResultNonCompliantResource', 'ResultPolicyDetail', 'ResultPolicyGroupDetail', 'ResultQueryResultsUri', 'ResultResourceDetail', 'OdataId', 'OdataContext'.
    • Espera-se que essa alteração entre em vigor a partir da versão Az.PolicyInsights: 2.0.0 e Az: 16.0.0.

Antes

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

Depois

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

New-AzPolicyAttestation

  • A alteração disruptiva do cmdlet afetará todos os conjuntos de parâmetros
    • O tipo de saída está mudando do tipo existente :'Microsoft.Azure. Commands.PolicyInsights.Models.Attestations.PSAttestation' para o novo tipo :'Atestado'
    • As seguintes propriedades no tipo de saída estão sendo preteridas: 'SystemData'
    • As seguintes propriedades estão sendo adicionadas ao tipo de saída: 'ResourceGroupName', 'SystemDataCreatedAt', 'SystemDataCreatedBy', 'SystemDataCreatedByType', 'SystemDataLastModifiedAt', 'SystemDataLastModifiedBy', 'SystemDataLastModifiedByType'
    • Espera-se que essa alteração entre em vigor a partir da versão Az.PolicyInsights: 2.0.0 e Az: 16.0.0.

Antes

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

Depois

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

Set-AzPolicyAttestation

  • A alteração disruptiva do cmdlet afetará todos os conjuntos de parâmetros
    • O tipo de saída está mudando do tipo existente :'Microsoft.Azure. Commands.PolicyInsights.Models.Attestations.PSAttestation' para o novo tipo :'Atestado'
    • As seguintes propriedades no tipo de saída estão sendo preteridas: 'SystemData'
    • As seguintes propriedades estão sendo adicionadas ao tipo de saída: 'ResourceGroupName', 'SystemDataCreatedAt', 'SystemDataCreatedBy', 'SystemDataCreatedByType', 'SystemDataLastModifiedAt', 'SystemDataLastModifiedBy', 'SystemDataLastModifiedByType'
    • Espera-se que essa alteração entre em vigor a partir da versão Az.PolicyInsights: 2.0.0 e Az: 16.0.0.

Antes

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

Depois

$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

  • A alteração disruptiva do cmdlet afetará todos os conjuntos de parâmetros
    • Start-AzPolicyRemediation agora retornará quando a Remediação atingir um estado terminal, a menos que você use o novo parâmetro NoWait.
    • Espera-se que essa alteração entre em vigor a partir da versão Az.PolicyInsights: 2.0.0 e Az: 16.0.0.

Antes

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

Depois

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

Stop-AzPolicyRemediation

  • A alteração disruptiva do cmdlet afetará todos os conjuntos de parâmetros
    • Stop-AzPolicyRemediation agora terá um parâmetro de comutador NoWait, bem como retornará o objeto Remediation em vez de apenas um booliano.
    • Espera-se que essa alteração entre em vigor a partir da versão Az.PolicyInsights: 2.0.0 e Az: 16.0.0.

Antes

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

Depois

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

Az.Resources

Get-AzPolicyAssignment

O parâmetro BackwardCompatible foi introduzido anteriormente para preservar o formato de saída baseado no legado .Properties. Esse parâmetro foi removido agora. Os cmdlets sempre retornam a forma de objeto achatada moderna, e o acesso herdado por meio .Properties.* não tem mais suporte. Os scripts devem ser atualizados para fazer referência diretamente às propriedades de primeira classe.

Antes

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

Depois

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

Get-AzPolicyDefinition

O parâmetro BackwardCompatible foi introduzido anteriormente para preservar o formato de saída baseado no legado .Properties. Esse parâmetro foi removido agora. Os cmdlets sempre retornam a forma de objeto achatada moderna, e o acesso herdado por meio .Properties.* não tem mais suporte. Os scripts devem ser atualizados para fazer referência diretamente às propriedades de primeira classe.

Antes

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

Depois

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

Get-AzPolicyExemption

O parâmetro BackwardCompatible foi introduzido anteriormente para preservar o formato de saída baseado no legado .Properties. Esse parâmetro foi removido agora. Os cmdlets sempre retornam a forma de objeto achatada moderna, e o acesso herdado por meio .Properties.* não tem mais suporte. Os scripts devem ser atualizados para fazer referência diretamente às propriedades de primeira classe.

Antes

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

Depois

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

Get-AzPolicySetDefinition

O parâmetro BackwardCompatible foi introduzido anteriormente para preservar o formato de saída baseado no legado .Properties. Esse parâmetro foi removido agora. Os cmdlets sempre retornam a forma de objeto achatada moderna, e o acesso herdado por meio .Properties.* não tem mais suporte. Os scripts devem ser atualizados para fazer referência diretamente às propriedades de primeira classe.

Antes

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

Depois

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

New-AzPolicyAssignment

O parâmetro BackwardCompatible foi introduzido anteriormente para preservar o formato de saída baseado no legado .Properties. Esse parâmetro foi removido agora. Os cmdlets sempre retornam a forma de objeto achatada moderna, e o acesso herdado por meio .Properties.* não tem mais suporte. Os scripts devem ser atualizados para fazer referência diretamente às propriedades de primeira classe.

Antes

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

Depois

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

New-AzPolicyDefinition

O parâmetro BackwardCompatible foi introduzido anteriormente para preservar o formato de saída baseado no legado .Properties. Esse parâmetro foi removido agora. Os cmdlets sempre retornam a forma de objeto achatada moderna, e o acesso herdado por meio .Properties.* não tem mais suporte. Os scripts devem ser atualizados para fazer referência diretamente às propriedades de primeira classe.

Antes

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

Depois

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

New-AzPolicyExemption

O parâmetro BackwardCompatible foi introduzido anteriormente para preservar o formato de saída baseado no legado .Properties. Esse parâmetro foi removido agora. Os cmdlets sempre retornam a forma de objeto achatada moderna, e o acesso herdado por meio .Properties.* não tem mais suporte. Os scripts devem ser atualizados para fazer referência diretamente às propriedades de primeira classe.

Antes

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

Depois

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

New-AzPolicySetDefinition

O parâmetro BackwardCompatible foi introduzido anteriormente para preservar o formato de saída baseado no legado .Properties. Esse parâmetro foi removido agora. Os cmdlets sempre retornam a forma de objeto achatada moderna, e o acesso herdado por meio .Properties.* não tem mais suporte. Os scripts devem ser atualizados para fazer referência diretamente às propriedades de primeira classe.

Antes

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

Depois

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

Remove-AzPolicyAssignment

O parâmetro BackwardCompatible foi introduzido anteriormente para preservar o comportamento legado, segundo o qual os cmdlets Remove- sempre retornavam um valor. Esse parâmetro foi removido agora. Remove- Os cmdlets só retornarão um valor quando -PassThru for especificado.

Antes

$result = Remove-AzPolicyAssignment -Name MyAssignment -BackwardCompatible

Depois

$result = Remove-AzPolicyAssignment -Name MyAssignment -PassThru

Remove-AzPolicyDefinition

O parâmetro BackwardCompatible foi introduzido anteriormente para preservar o comportamento legado, segundo o qual os cmdlets Remove- sempre retornavam um valor. Esse parâmetro foi removido agora. Remove- Os cmdlets só retornarão um valor quando -PassThru for especificado.

Antes

$result = Remove-AzPolicyDefinition -Name MyDefinition -BackwardCompatible

Depois

$result = Remove-AzPolicyDefinition -Name MyDefinition -PassThru

Remove-AzPolicyExemption

O parâmetro BackwardCompatible foi introduzido anteriormente para preservar o comportamento legado, segundo o qual os cmdlets Remove- sempre retornavam um valor. Esse parâmetro foi removido agora. Remove- Os cmdlets só retornarão um valor quando -PassThru for especificado.

Antes

$result = Remove-AzPolicyExemption -Name MyExemption -BackwardCompatible

Depois

$result = Remove-AzPolicyExemption -Name MyExemption -PassThru

Remove-AzPolicySetDefinition

O parâmetro BackwardCompatible foi introduzido anteriormente para preservar o comportamento legado, segundo o qual os cmdlets Remove- sempre retornavam um valor. Esse parâmetro foi removido agora. Remove- Os cmdlets só retornarão um valor quando -PassThru for especificado.

Antes

$result = Remove-AzPolicySetDefinition -Name MySetDefinition -BackwardCompatible

Depois

$result = Remove-AzPolicySetDefinition -Name MySetDefinition -PassThru

Update-AzPolicyAssignment

O parâmetro BackwardCompatible foi introduzido anteriormente para preservar o formato de saída baseado no legado .Properties. Esse parâmetro foi removido agora. Os cmdlets sempre retornam a forma de objeto achatada moderna, e o acesso herdado por meio .Properties.* não tem mais suporte. Os scripts devem ser atualizados para fazer referência diretamente às propriedades de primeira classe.

Antes

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

Depois

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

Update-AzPolicyDefinition

O parâmetro BackwardCompatible foi introduzido anteriormente para preservar o formato de saída baseado no legado .Properties. Esse parâmetro foi removido agora. Os cmdlets sempre retornam a forma de objeto achatada moderna, e o acesso herdado por meio .Properties.* não tem mais suporte. Os scripts devem ser atualizados para fazer referência diretamente às propriedades de primeira classe.

Antes

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

Depois

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

Update-AzPolicyExemption

O parâmetro BackwardCompatible foi introduzido anteriormente para preservar o formato de saída baseado no legado .Properties. Esse parâmetro foi removido agora. Os cmdlets sempre retornam a forma de objeto achatada moderna, e o acesso herdado por meio .Properties.* não tem mais suporte. Os scripts devem ser atualizados para fazer referência diretamente às propriedades de primeira classe.

Antes

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

Depois

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

Update-AzPolicySetDefinition

O parâmetro BackwardCompatible foi introduzido anteriormente para preservar o formato de saída baseado no legado .Properties. Esse parâmetro foi removido agora. Os cmdlets sempre retornam a forma de objeto achatada moderna, e o acesso herdado por meio .Properties.* não tem mais suporte. Os scripts devem ser atualizados para fazer referência diretamente às propriedades de primeira classe.

Antes

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

Depois

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

Az.Sql

New-AzSqlServer

  • Alteração de quebra de parâmetro ocorrerá em todos os conjuntos de parâmetros – -EnableSoftDelete o parâmetro : 'EnableSoftDelete' está sendo alterado. - Descrição da alteração: o parâmetro 'EnableSoftDelete' será removido do cmdlet New-AzSqlServer do Aplicativo. - Essa alteração entrará em vigor em '2/6/2026'- Espera-se que a alteração entre em vigor a partir da versão do Az: '16.0.0' - A alteração deverá entrar em vigor no 'Az.Sql' da versão : '7.0.0'

Antes

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

Depois

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

Set-AzSqlServer

  • Alteração de quebra de parâmetro ocorrerá em todos os conjuntos de parâmetros – -EnableSoftDelete o parâmetro : 'EnableSoftDelete' está sendo alterado. - Descrição da alteração: o parâmetro 'EnableSoftDelete' será removido do cmdlet Set-AzSqlServer do Aplicativo. - Essa alteração entrará em vigor em '2/6/2026'- Espera-se que a alteração entre em vigor a partir da versão do Az: '16.0.0' - A alteração deverá entrar em vigor no 'Az.Sql' da versão : '7.0.0'

Antes

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

Depois

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

Az.StackHCIVM

New-AzStackHCIVMImage

  • Alteração de quebra de parâmetro ocorrerá em todos os conjuntos de parâmetros
    • -ImagePath

Antes

ImagePath is of type 'string'

Depois

ImagePath has been changed to SecureString

New-AzStackHCIVMVirtualMachine

  • Alteração de quebra de parâmetro ocorrerá em todos os conjuntos de parâmetros
    • -AdminPassword

Antes

AdminPassword is of type 'string'

Depois

AdminPassword has been changed to SecureString

Az.StorageAction

Get-AzStorageActionTask

  • A alteração disruptiva do cmdlet afetará todos os conjuntos de parâmetros
    • O tipo de saída 'Microsoft.Azure. PowerShell.Cmdlets.StorageAction.Models.IStorageTask' está mudando
    • As seguintes propriedades no tipo de saída estão sendo preteridas: 'IdentityUserAssignedIdentity'
    • As seguintes propriedades estão sendo adicionadas ao tipo de saída: 'IdentityUserAssignedIdentity'
    • Descrição da alteração: os tipos da propriedade 'IdentityUserAssignedIdentity' serão alterados de 'Microsoft.Azure. PowerShell.Cmdlets.StorageAction.Models.IUserAssignedIdentities" para "Microsoft.Azure. PowerShell.Cmdlets.StorageAction.Models.IManagedServiceIdentityUserAssignedIdentities'
    • Essa alteração entrará em vigor em '1/5/2026'- Espera-se que a alteração entre em vigor na versão do Az: '16.0.0'
    • Espera-se que a alteração entre em vigor em 'Az.StorageAction' da versão : '2.0.0'

Antes

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

Depois

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

New-AzStorageActionTask

  • A alteração disruptiva do cmdlet afetará todos os conjuntos de parâmetros
    • O tipo de saída 'Microsoft.Azure. PowerShell.Cmdlets.StorageAction.Models.IStorageTask' está mudando
    • As seguintes propriedades no tipo de saída estão sendo preteridas: 'IdentityUserAssignedIdentity'
    • As seguintes propriedades estão sendo adicionadas ao tipo de saída: 'IdentityUserAssignedIdentity'
    • Descrição da alteração: os tipos da propriedade 'IdentityUserAssignedIdentity' serão alterados de 'Microsoft.Azure. PowerShell.Cmdlets.StorageAction.Models.IUserAssignedIdentities" para "Microsoft.Azure. PowerShell.Cmdlets.StorageAction.Models.IManagedServiceIdentityUserAssignedIdentities'
    • Essa alteração entrará em vigor em '1/5/2026'- Espera-se que a alteração entre em vigor na versão do Az: '16.0.0'
    • Espera-se que a alteração entre em vigor em 'Az.StorageAction' da versão : '2.0.0'

Antes

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

Depois

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

Update-AzStorageActionTask

  • A alteração disruptiva do cmdlet afetará todos os conjuntos de parâmetros
    • O tipo de saída 'Microsoft.Azure. PowerShell.Cmdlets.StorageAction.Models.IStorageTask' está mudando
    • As seguintes propriedades no tipo de saída estão sendo preteridas: 'IdentityUserAssignedIdentity'
    • As seguintes propriedades estão sendo adicionadas ao tipo de saída: 'IdentityUserAssignedIdentity'
    • Descrição da alteração: os tipos da propriedade 'IdentityUserAssignedIdentity' serão alterados de 'Microsoft.Azure. PowerShell.Cmdlets.StorageAction.Models.IUserAssignedIdentities" para "Microsoft.Azure. PowerShell.Cmdlets.StorageAction.Models.IManagedServiceIdentityUserAssignedIdentities'
    • Essa alteração entrará em vigor em '1/5/2026'- Espera-se que a alteração entre em vigor na versão do Az: '16.0.0'
    • Espera-se que a alteração entre em vigor em 'Az.StorageAction' da versão : '2.0.0'

Antes

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

Depois

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

Módulos migrados do autorest v3 para o autorest v4

Para manter a consistência comportamental e introduzir novos recursos compatíveis com o AutoRest v4, atualizamos muitos módulos para usar o AutoRest v4. Essa atualização introduziu várias alterações significativas. Detalhes sobre possíveis mudanças disruptivas e suas abordagens de mitigação podem ser encontrados no link a seguir.

Módulos potencialmente afetados

  • 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