Régi szkriptek futtatása kompatibilitási módban

Ebből a cikkből megtudhatja, hogyan futtathat régebbi Azure AD PowerShell-szkripteket Microsoft Entra PowerShell-módban kompatibilitási módban, és hogyan engedélyezheti a zökkenőmentes szkriptmigrálást minimális módosításokkal. Ez a folyamat lehetővé teszi, hogy zökkenőmentesen áttérjen az új modulra a meglévő automatizálási munkafolyamatok fenntartása mellett, biztosítva a folyamatos hatékonyságot és a frissített eszközöknek való megfelelőséget.

Microsoft Entra PowerShell több mint 98% kompatibilis Azure AD PowerShell-modullal. Kompatibilitási módban a parancs használatával minimális módosításokkal futtathatja a meglévő Azure AD PowerShell-szkripteket Microsoft Entra PowerShell használatávalEnable-EntraAzureADAlias. Ha meg szeretné találni az Azure AD PowerShell- és az MSOnline-parancsmagok Microsoft Entra PowerShellben található megfelelőit, használja a Azure AD PowerShell–Microsoft Entra PowerShell parancsmagmegfeleltetési térképet.

Használja a kompatibilitási módot az Enable-EntraAzureADAlias használatával.

A Enable-EntraAzureADAlias parancsmag aliasokon keresztül teszi lehetővé a kompatibilitási módot. Alapértelmezés szerint Enable-EntraAzureADAlias csak az aktuális Microsoft Entra PowerShell-munkamenet kompatibilitási aliasainak engedélyezése engedélyezett. További információ: Enable-EntraAzureADAlias referenciadokumentáció.

Ha Microsoft Entra PowerShellt a meglévő AzureAD PowerShell-szkriptekkel szeretné használni, cserélje le a Connect-AzureAD parancsot a három megadott sorra. Ez a három sor a migrált AzureAD PowerShell-szkript kezdete.

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

Example

Ebben a példában egy szkriptet futtat, amely a lejáró titkos kóddal rendelkező alkalmazásokat exportálja Microsoft Entra PowerShell használatával. Ez a példa feltételezi, hogy a Microsoft Entra PowerShell-modul már telepítve van.

Az alábbi példaszkript az eredeti AzureAD PowerShell-szkript.

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

Megjegyzés: Ez a kódrészlet rövidítve van az olvashatóság érdekében. Részletekért tekintse meg a teljes mintát.

Ha a szkriptet a Microsoft Entra PowerShell-modullal szeretné használni, cserélje le a Connect-AzureAD parancsmagot a kódrészletben megadott három sorra. Nem kell újraírnia a teljes szkriptet.

A következő szkript a migrált szkript.

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

Megjegyzés: Ez a kódrészlet rövidítve van az olvashatóság érdekében. Részletekért tekintse meg a teljes módosított mintát.

Kompatibilitás tesztelése Test-EntraScript paranccsal

A Test-EntraScript parancsmag ellenőrzi, hogy egy Azure AD PowerShell-parancsokat tartalmazó szkript működik-e a Microsoft Entra PowerShell-modullal. Kompatibilitási problémák esetén felsorolja őket, beleértve a sorszámot, a probléma típusát, az inkompatibilis parancsot és az adott kódrészletet.

Ismert problémák

Az Azure AD PowerShell-modulból a PowerShell Microsoft Entra való migráláskor számos ismert probléma merülhet fel.

  • Előfordulhat, hogy a paraméter -Filter nem működik megfelelően.
  • Előfordulhat, hogy a paraméter -SearchString nem működik megfelelően.
  • A kimeneti objektumok némileg eltérhetnek az AzureAD kimeneti objektumaitól.