Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Neste artigo, você aprenderá como executar scripts legados do Azure AD PowerShell no Microsoft Entra PowerShell usando o modo de compatibilidade, permitindo a migração contínua de scripts com alterações mínimas. Esse processo permite que você faça a transição suave para o novo módulo, mantendo os fluxos de trabalho de automação existentes, garantindo eficiência e conformidade contínuas com as ferramentas atualizadas.
O Microsoft Entra PowerShell tem mais de 98% de compatibilidade com o módulo Azure AD PowerShell. No modo de compatibilidade, você pode executar seus scripts existentes do Azure AD PowerShell com modificações mínimas no Microsoft Entra PowerShell, por meio do comando Enable-EntraAzureADAlias. Para encontrar os cmdlets equivalentes do Azure AD PowerShell e do MSOnline no Microsoft Entra PowerShell, use o mapa de cmdlets do Azure AD PowerShell para o Microsoft Entra PowerShell.
Usar o modo de compatibilidade com Enable-EntraAzureADAlias
O Enable-EntraAzureADAlias cmdlet habilita o modo de compatibilidade por meio de aliases. Por padrão, Enable-EntraAzureADAlias habilita apenas os aliases de compatibilidade para a sessão atual do PowerShell Microsoft Entra. Para obter mais informações, consulte a documentação de referência sobre Enable-EntraAzureADAlias.
Para usar Microsoft Entra PowerShell com seus scripts existentes do PowerShell do AzureAD, substitua o Connect-AzureAD comando pelas três linhas fornecidas. Essas três linhas são o início do seu script migrado do AzureAD PowerShell.
Import-Module -Name Microsoft.Entra.Applications
Connect-Entra -Scopes 'Application.Read.All' #Replaces Connect-AzureAD for auth
Enable-EntraAzureADAlias #enable aliasing
Get-AzureADApplication -Top 2
Exemplo
Neste exemplo, você executa um script que exporta aplicativos com segredos expirando usando Microsoft Entra PowerShell. Este exemplo pressupõe que o módulo Microsoft Entra PowerShell já está instalado.
O script de exemplo a seguir é o script original do PowerShell do AzureAD.
Connect-AzureAD
$applications = Get-AzureADApplication -All $true
$Logs = @()
Write-Host "I would like to see the Applications with the Secrets and Certificates that expire in the next X amount of Days? <<Replace X with the number of days. The answer should be ONLY in Numbers>>" -ForegroundColor Green
$Days = Read-Host
Write-Host "Would you like to see Applications with already expired secrets or certificates as well? <<Answer with [Yes] [No]>>" -ForegroundColor Green
$alreadyExpired = Read-Host
$now = Get-Date
foreach ($app in $applications) {
$appName = $app.DisplayName
$appID = $app.objectid
$applID = $app.AppId
$appCreds = Get-AzureADApplication -ObjectId $appID | Select-Object -Property PasswordCredentials, KeyCredentials
$secret = $appCreds.PasswordCredentials
$cert = $appCreds.KeyCredentials
Nota: Esse snippet de código é abreviado para legibilidade. Consulte o exemplo completo para obter detalhes.
Para usar o script com o módulo Microsoft Entra PowerShell, substitua o Connect-AzureAD cmdlet pelas três linhas fornecidas no snippet. Você não precisa reescrever o script inteiro.
O script a seguir é o script migrado.
Import-Module -Name Microsoft.Entra.Users
Connect-Entra #Replaces Connect-AzureAD for auth
Enable-EntraAzureADAlias #Activate aliasing
$applications = Get-AzureADApplication -All $true
$logs = @()
Write-Host "I would like to see the Applications with the Secrets and Certificates that expire in the next X amount of Days? <<Replace X with the number of days. The answer should be ONLY in Numbers>>" -ForegroundColor Green
$days = Read-Host
Write-Host "Would you like to see Applications with already expired secrets or certificates as well? <<Answer with [Yes] [No]>>" -ForegroundColor Green
$alreadyExpired = Read-Host
$now = Get-Date
foreach ($app in $applications) {
$appName = $app.DisplayName
$appID = $app.Objectid
$applID = $app.AppId
$appCreds = Get-AzureADApplication -ObjectId $appID | Select-Object -Property PasswordCredentials, KeyCredentials
$secret = $appCreds.PasswordCredentials
$cert = $appCreds.KeyCredentials
Nota: Esse snippet de código é abreviado para legibilidade. Consulte o exemplo modificado completo para obter detalhes.
Testar a compatibilidade com o comando Test-EntraScript
O cmdlet Test-EntraScript verifica se um script com comandos do PowerShell Azure AD funciona com o módulo Microsoft Entra PowerShell. Se houver problemas de compatibilidade, ele os lista, incluindo o número de linha, o tipo de problema, o comando incompatível e o snippet de código específico.
Problemas conhecidos
Ao migrar do módulo Azure PowerShell do AD para Microsoft Entra PowerShell, você pode encontrar vários problemas conhecidos.
- O parâmetro
-Filterpode não funcionar corretamente. - O parâmetro
-SearchStringpode não funcionar corretamente. - Os objetos de saída podem ser ligeiramente diferentes dos objetos de saída do AzureAD.