Guia de migração para o Az 7.0.0
Az.Accounts
Cmdlets de contexto e conta
A saída dos seguintes cmdlets foi alterada:
- Get-AzContext
- Remove-AzContext
- Rename-AzContext
- Select-AzContext
- Connect-AzAccount
- Disconnect-AzAccount
- Import-AzContext
- Save-AzContext
Remoção de 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
After (após)
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
Alteração da propriedade Upgrades
na saída 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
After (após)
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
Remoção do parâmetro NetworkProfileId; adição de SubnetId como 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}
After (após)
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
Exibição do resultado da execução de comando como a saída do cmdlet por meio da conexão do 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
After (após)
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 pela especificação de -Force
.
Antes
Update-AzFunctionApp -Name MyUniqueFunctionAppName -ResourceGroupName MyResourceGroupName -PlanName NewPlanName
After (após)
Update-AzFunctionApp -Name MyUniqueFunctionAppName -ResourceGroupName MyResourceGroupName -PlanName NewPlanName -Force
New-AzFunctionApp
Se o parâmetro FunctionsVersion
não for especificado durante a execução do cmdlet New-AzFunctionApp
, a versão padrão do Functions será definida como 4
.
There is no change to the usage.
Remove-AzFunctionApp
Se esse for o último aplicativo no Plano do Serviço de Aplicativo, o plano não será excluído. Antes dessa versão, o plano do aplicativo também será excluído.
There is no change to the usage.
Az.HDInsight
New-AzHDInsightCluster
Tipo do parâmetro "OSType" alterado de Microsoft.Azure.Management.HDInsight.Models.OSType
para System.string
There is no change to the usage.
New-AzHDInsightCluster, New-AzHDInsightClusterConfig
Tipo do parâmetro "ClusterTier" alterado 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 da 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 a 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
PS C:\> $result = Get-AzHDInsightProperty -Location "South Central us"
PS C:\> $availableVmSizes = $result.VmSizes
Az.KeyVault
New-AzKeyVaultRoleDefinition, Get-AzKeyVaultRoleDefinition
As seguintes propriedades do modelo PSKeyVaultPermission
foram 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
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 parâmetro -DisplayName
foi removido.
Antes
PS C:\> New-AzManagedServicesDefinition -DisplayName "MyTestDefinition" -ManagedByTenantId 72f9acbf-86f1-41af-91ab-2d7ef011db47 -RoleDefinitionId acdd72a7-3385-48ef-bd42-f606fba81ae7 -PrincipalId 714160ec-87d5-42bb-8b17-287c0dd7417d
After (após)
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' e '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
After (após)
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 da propriedade 'Unit' foi alterado para System.String
There is no change to the usage.
New-AzMetricAlertRuleV2Criteria
O tipo da propriedade 'TimeAggregation' foi alterado para System.String
There is no change to the usage.
Az.OperationalInsights
Get-AzOperationalInsightsCluster
"List" passou a ser o conjunto de parâmetros padrão.
Antes
There is no default parameter set.
After (após)
Default parameter set is now "list", when providing resource group name - return all clusters for the given resource group.
Update-AzOperationalInsightsCluster
"UpdateByNameParameterSet" passou a ser o conjunto de parâmetros padrão.
Antes
There is no default parameter set.
After (após)
Default parameter set is now "UpdateByNameParameterSet".
Az.RecoveryServices
Get-AzRecoveryServicesBackupContainer
Alteração de BackupManagementType de MARS para MAB. A funcionalidade permanece a mesma. A finalidade dessa alteração é gerar consistência entre os cmdlets.
Antes
$containers = Get-AzRecoveryServicesBackupContainer -ContainerType Windows -BackupManagementType MARS -VaultId $vault.ID
After (após)
$cont = Get-AzRecoveryServicesBackupContainer -ContainerType Windows -BackupManagementType MAB -VaultId $vault.ID
Get-AzRecoveryServicesBackupItem
Alteração de BackupManagementType de MARS para MAB. A funcionalidade permanece a mesma. A finalidade dessa alteração é gerar consistência entre os cmdlets
Antes
Get-AzRecoveryServicesBackupItem -BackupManagementType MARS -VaultId $vault.ID -WorkloadType FileFolder
After (após)
Get-AzRecoveryServicesBackupItem -BackupManagementType MAB -VaultId $vault.ID -WorkloadType FileFolder
Get-AzRecoveryServicesBackupJob
Alteração de BackupManagementType de MARS para MAB. A funcionalidade permanece a mesma. A finalidade dessa alteração é gerar consistência entre os cmdlets
Antes
Get-AzRecoveryServicesBackupJob -BackupManagementType MARS -VaultId $vault.ID
After (após)
Get-AzRecoveryServicesBackupJob -BackupManagementType MAB -VaultId $vault.ID
Az.Resources
AzAD cmdlets
Veja o guia de migração dos cmdlets do Active Directory.
PolicyAssignment cmdlets
O tipo da 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
After (após)
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", pois o nome pode ser inferido na ID do recurso.
Antes
$StorageShare = Get-AzRmStorageShare -ResourceId "/subscriptions/..." -Name "MyStorageShare"
After (após)
$StorageShare = Get-AzRmStorageShare -ResourceId "/subscriptions/..."
Azure PowerShell
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de