Guia de migração para Az 7.0.0

Az.Accounts

Cmdlets de contexto e conta

A saída dos seguintes cmdlets foi alterada:

  • Get-AzContext
  • Remove-AzContext
  • Renomear-AzContext
  • Select-AzContext
  • Connect-AzAccount
  • Desconectar-AzAccount
  • Import-AzContext
  • Salvar-AzContext

Removido ServicePrincipalSecret e CertificatePassword em PSAzureRmAccount

Antes

PS C:\> $cred = Get-Credential
PS C:\> Connect-AzAccount -ServicePrincipal -Tenant 54826b22-xxxx-xxxx-xxxx-xxxxxxxxxxxxx -Credential $cred
PS C:\> (Get-AzContext).Account.ExtendedProperties

Key                    Value
---                    -----
CertificatePath        C:\certificate.pfx
CertificatePassword    password****
Tenants                54826b22-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
ServicePrincipalSecret 7QK7Q********************************
Subscriptions          0b1f6471-xxxx-xxxx-xxxx-xxxxxxxxxxxxx

Depois de

PS C:\> $cred = Get-Credential
PS C:\> Connect-AzAccount -ServicePrincipal -Tenant 54826b22-xxxx-xxxx-xxxx-xxxxxxxxxxxxx -Credential $cred
PS C:\> (Get-AzContext).Account.ExtendedProperties

Key             Value
---             -----
CertificatePath C:\certificate.pfx
Tenants         54826b22-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
Subscriptions   0b1f6471-xxxx-xxxx-xxxx-xxxxxxxxxxxxx

Az.Aks

Get-AzAksVersion

Propriedade Upgrades na saída alterada para Upgrade.

Antes

PS C:\> (Get-AzAksVersion -location eastus).Upgrades

OrchestratorType OrchestratorVersion IsPreview
---------------- ------------------- ---------
Kubernetes       1.19.13
Kubernetes       1.20.7
Kubernetes       1.20.9
Kubernetes       1.20.7
Kubernetes       1.20.9
Kubernetes       1.20.9
Kubernetes       1.21.1
Kubernetes       1.21.2
Kubernetes       1.21.1
Kubernetes       1.21.2
Kubernetes       1.21.2
Kubernetes       1.22.1              True
Kubernetes       1.22.2              True
Kubernetes       1.22.1              True
Kubernetes       1.22.2              True
Kubernetes       1.22.2              True

Depois de

PS C:\> (Get-AzAksVersion -location eastus).Upgrade

OrchestratorType OrchestratorVersion IsPreview
---------------- ------------------- ---------
Kubernetes       1.19.13
Kubernetes       1.20.7
Kubernetes       1.20.9
Kubernetes       1.20.7
Kubernetes       1.20.9
Kubernetes       1.20.9
Kubernetes       1.21.1
Kubernetes       1.21.2
Kubernetes       1.21.1
Kubernetes       1.21.2
Kubernetes       1.21.2
Kubernetes       1.22.1              True
Kubernetes       1.22.2              True
Kubernetes       1.22.1              True
Kubernetes       1.22.2              True
Kubernetes       1.22.2              True

Az.ContainerInstance

New-AzContainerGroup

Removido parâmetro NetworkProfileId, adicionado SubnetId como sua alternativa

Antes

PS C:\>  $containerGroup = New-AzContainerGroup -ResourceGroupName test-rg -Name test-cg -Location eastus -Container $container -OsType Linux -NetworkProfileId "/subscriptions/{subId}/resourceGroups/{rg}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}"
PS C:\> $containerGroup.NetworkProfileId

/subscriptions/{subId}/resourceGroups/{rg}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}

Depois de

PS C:\> $container = New-AzContainerInstanceObject -Name test-container -Image nginx
PS C:\> $containerGroup = New-AzContainerGroup -ResourceGroupName test-rg -Name test-cg -Location eastus -Container $container -OsType Linux -RestartPolicy "Never" -IpAddressType 'Private' -SubnetId @{"Id"="/subscriptions/{subId}/resourceGroups/{rg}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}"; "Name"="subnet"}
PS C:\> $containerGroup.SubnetId | fl

Id :  /subscriptions/{subId}/resourceGroups/{rg}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}
Name : subnet

Invoke-AzContainerInstanceCommand

Exibido o resultado da execução do comando como a saída do cmdlet conectando websocket no back-end

Antes

PS C:\> $websocket = Invoke-AzContainerInstanceCommand -ContainerGroupName test-cg -ContainerName test-container -ResourceGroupName test-rg -Command "echo hello" -TerminalSizeCol 12 -TerminalSizeRow 12
PS C:\> $websocket

Password                                           WebSocketUri
--------                                           ------------
****************** wss://bridge-linux-xx.eastus.management.azurecontainer.io/exec/caas-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/bridge-xxxxxxxxxxxxxxx?rows=12&cols=12api-version=2018-02-01-preview

User needs connect websocket using password to fetch command execution result

Depois de

PS C:\> Invoke-AzContainerInstanceCommand -ContainerGroupName test-cg -ContainerName test-container -ResourceGroupName test-rg -Command "echo hello"

hello

Az.Functions

Update-AzFunctionApp, Update-AzFunctionAppPlan

Update-AzFunctionApp solicitará a confirmação. Esse comportamento pode ser ignorado especificando -Force.

Antes

Update-AzFunctionApp -Name MyUniqueFunctionAppName -ResourceGroupName MyResourceGroupName -PlanName NewPlanName

Depois de

Update-AzFunctionApp -Name MyUniqueFunctionAppName -ResourceGroupName MyResourceGroupName -PlanName NewPlanName -Force

New-AzFunctionApp

Se FunctionsVersion o parâmetro não for especificado ao executar o New-AzFunctionApp cmdlet, a versão padrão do Functions será definida como 4.

There is no change to the usage.

Remove-AzFunctionApp

Se este for o último aplicativo no plano de serviço do aplicativo, o plano não será excluído. Antes desta versão, o plano do aplicativo também será excluído.

There is no change to the usage.

Az.HDInsight

New-AzHDInsightCluster

Alterado o tipo de parâmetro "OSType" de Microsoft.Azure.Management.HDInsight.Models.OSType para System.string

There is no change to the usage.

New-AzHDInsightCluster, New-AzHDInsightClusterConfig

Alterado o tipo de parâmetro "ClusterTier" de Microsoft.Azure.Management.HDInsight.Models.ClusterTier para System.string

There is no change to the usage.

Set-AzHDInsightClusterDiskEncryptionKey, Set- AzHDInsightClusterSize

O tipo de saída foi alterado de 'Microsoft.Azure.Management.HDInsight.Models.Cluster' para 'Microsoft.Azure.Commands.HDInsight.Models.AzureHDInsightCluster'.

All properties remain the same, so there is no change to the usage.

Cluster cmdlets

O tipo de propriedade 'AssignedIdentity' foi alterado de 'Microsoft.Azure.Management.HDInsight.Models.ClusterIdentity' para 'Microsoft.Azure.Commands.HDInsight.Models.AzureHDInsightClusterIdentity'.

All properties remain the same, so there is no change to the usage.

Get-AzHDInsightProperties

O tipo genérico para saída 'propriedade VmSizes' foi alterado de System.Collections.Generic.IDictionary2[System.String,Microsoft.Azure.Commands.HDInsight.Models.Management.AzureHDInsightVmSizesCapability] para System.Collections.Generic.IList1[System.String].

Antes

PS C:\> $result = Get-AzHDInsightProperty -Location "South Central us"
PS C:\> $availableVmSizes = $result.VmSizes['iaas'].AvailableVmSizes

Depois de

PS C:\> $result = Get-AzHDInsightProperty -Location "South Central us"
PS C:\> $availableVmSizes = $result.VmSizes

Az.KeyVault

New-AzKeyVaultRoleDefinition, Get-AzKeyVaultRoleDefinition

As seguintes propriedades no PSKeyVaultPermission modelo são renomeadas:

  • AllowedActions ->Actions
  • DeniedActions ->NotActions
  • AllowedDataActions ->DataActions
  • DeniedDataActions ->NotDataActions

Antes

PS C:\> $backupRole = Get-AzKeyVaultRoleDefinition -HsmName myHsm -RoleDefinitionName "Managed HSM Backup User"

PS C:\> $backupRole.Permissions

AllowedActions DeniedActions AllowedDataActions DeniedDataActions
-------------- ------------- ------------------ -----------------
0 action(s)    0 action(s)   3 action(s)        0 action(s)

PS C:\> $backupRole.Permissions.AllowedDataActions

Microsoft.KeyVault/managedHsm/backup/start/action
Microsoft.KeyVault/managedHsm/backup/status/action
Microsoft.KeyVault/managedHsm/keys/backup/action

Depois de

PS C:\> $backupRole = Get-AzKeyVaultRoleDefinition -HsmName myHsm -RoleDefinitionName "Managed HSM Backup User"

PS C:\> $backupRole.Permissions

Actions     NotActions  DataActions NotDataActions
-------     ----------  ----------- --------------
0 action(s) 0 action(s) 3 action(s) 0 action(s)

PS C:\> $backupRole.Permissions.DataActions

Microsoft.KeyVault/managedHsm/backup/start/action
Microsoft.KeyVault/managedHsm/backup/status/action
Microsoft.KeyVault/managedHsm/keys/backup/action

Az.ManagedServices

New-AzManagedServicesDefinition

O -DisplayName parâmetro foi removido.

Antes

PS C:\> New-AzManagedServicesDefinition -DisplayName "MyTestDefinition" -ManagedByTenantId 00001111-aaaa-2222-bbbb-3333cccc4444 -RoleDefinitionId acdd72a7-3385-48ef-bd42-f606fba81ae7 -PrincipalId 714160ec-87d5-42bb-8b17-287c0dd7417d

Depois de

PS C:\> $permantAuth = New-AzManagedServicesAuthorizationObject -PrincipalId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -RoleDefinitionId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -PrincipalIdDisplayName "Test user" -DelegatedRoleDefinitionId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx","xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
PS C:\> New-AzManagedServicesDefinition -Name xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx -RegistrationDefinitionName "Test definition" -ManagedByTenantId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -Authorization $permantAuth -Description "Test definition desc" -Scope "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

Az.Monitor

Get-AzLog

O tipo das propriedades 'EventName', 'Category', 'ResourceProviderName', 'OperationName', 'Status', 'SubStatus foi alterado de Microsoft.Azure.Management.Monitor.Models.LocalizableString para System.String

Antes

PS C:\> $log = Get-AzLog -MaxRecord 1
PS C:\> $eventName = $log.EventName.LocalizedValue
PS C:\> $category = $log.Category.LocalizedValue
PS C:\> $resourceProviderName = $log.ResourceProviderName.LocalizedValue
PS C:\> $operationName = $log.OperationName.LocalizedValue
PS C:\> $status = $log.Status.LocalizedValue
PS C:\> $subStatus = $log.SubStatus.LocalizedValue

Depois de

PS C:\> $log = Get-AzLog -MaxRecord 1
PS C:\> $eventName = $log.EventName
PS C:\> $category = $log.Category
PS C:\> $resourceProviderName = $log.ResourceProviderName
PS C:\> $operationName = $log.OperationName
PS C:\> $status = $log.Status
PS C:\> $subStatus = $log.SubStatus

Get-AzMetric,Get-AzMetricDefinition

O tipo de propriedade 'Unidade' mudou para System.String

There is no change to the usage.

New-AzMetricAlertRuleV2Criteria

O tipo de propriedade 'TimeAggregation' foi alterado para System.String

There is no change to the usage.

Az.OperationalInsights

Get-AzOperationalInsightsCluster

Tornou "list" o conjunto de parâmetros padrão.

Antes

There is no default parameter set.

Depois de

Default parameter set is now "list", when providing resource group name - return all clusters for the given resource group.

Update-AzOperationalInsightsCluster

Tornou "UpdateByNameParameterSet" o conjunto de parâmetros padrão.

Antes

There is no default parameter set.

Depois de

Default parameter set is now "UpdateByNameParameterSet".

Az.RecoveryServices

Get-AzRecoveryServicesBackupContainer

Alterado o BackupManagementType de MARS para MAB. A funcionalidade permanece a mesma, isso é para trazer consistência entre cmdlets.

Antes

$containers = Get-AzRecoveryServicesBackupContainer -ContainerType Windows -BackupManagementType MARS -VaultId $vault.ID

Depois de

$cont = Get-AzRecoveryServicesBackupContainer -ContainerType Windows -BackupManagementType MAB -VaultId $vault.ID

Get-AzRecoveryServicesBackupItem

Alterado o BackupManagementType de MARS para MAB. A funcionalidade permanece a mesma, isso é para trazer consistência entre cmdlets

Antes

Get-AzRecoveryServicesBackupItem -BackupManagementType MARS -VaultId $vault.ID -WorkloadType FileFolder

Depois de

Get-AzRecoveryServicesBackupItem -BackupManagementType MAB -VaultId $vault.ID -WorkloadType FileFolder

Get-AzRecoveryServicesBackupJob

Alterado o BackupManagementType de MARS para MAB. A funcionalidade permanece a mesma, isso é para trazer consistência entre cmdlets

Antes

Get-AzRecoveryServicesBackupJob -BackupManagementType MARS -VaultId $vault.ID

Depois de

Get-AzRecoveryServicesBackupJob -BackupManagementType MAB -VaultId $vault.ID

Az.Resources

AzAD cmdlets

Consulte o guia de migração dos cmdlets do Ative Directory.

PolicyAssignment cmdlets

O tipo de propriedade 'Identity' do tipo 'Microsoft.Azure.Commands.ResourceManager.Cmdlets.Implementation.Policy.PsPolicyAssignment' foi alterado de 'System.Management.Automation.PSObject' para 'Microsoft.Azure.Commands.ResourceManager.Cmdlets.Implementation.Policy.PsPolicyIdentity'.

Antes

PS C:\> $v = Get-AzPolicyAssignment -Id $someId
PS C:\> Write-Host $v.type, $v.principalId, $v.tenantId

Depois de

PS C:\> $v = Get-AzPolicyAssignment -Id $someId
PS C:\> Write-Host $v.IdentityType, $v.PrincipalId, $v.TenantId, $v.UserAssignedIdentities

Az.Storage

Get-AzRmStorageShare

O parâmetro "Name" foi removido do conjunto de parâmetros "ShareResourceId", uma vez que o nome pode ser inferido a partir do ID do recurso.

Antes

$StorageShare = Get-AzRmStorageShare -ResourceId "/subscriptions/..." -Name "MyStorageShare"

Depois de

$StorageShare = Get-AzRmStorageShare -ResourceId "/subscriptions/..."