Risolvere gli errori comuni in Microsoft Entra PowerShell

Questo articolo illustra come determinare, diagnosticare e risolvere i problemi che possono verificarsi quando si usa Microsoft Entra PowerShell.

Prima di risolvere eventuali errori, assicurarsi di eseguire la versione più recente del Microsoft Entra PowerShell. Per controllare la versione del modulo installato, eseguire:

Get-InstalledModule -Name Microsoft.Entra

La versione del modulo Microsoft.Entra deve corrispondere alla release più recente disponibile nella PowerShell Gallery. Se il modulo installato non è aggiornato, aggiornarlo eseguendo:

Update-Module -Name Microsoft.Entra

Problemi relativi all'installazione

Durante l'installazione, è possibile riscontrare alcuni errori che impediscono l'installazione corretta del modulo. Ecco alcuni problemi comuni e le relative soluzioni.

Impossibile trovare il parametro AllowPrerelease

È possibile che venga visualizzato un errore se si usa una versione precedente di Install-Module: "Install-Module: Non è possibile trovare un parametro che corrisponda al nome AllowPrereleasedel parametro ." Per correggere questo errore, eseguire i comandi seguenti per eseguire l'aggiornamento:

## Update Nuget Package and PowerShellGet Module 

Install-PackageProvider NuGet -Scope CurrentUser -Force 

Install-Module PowerShellGet -Scope CurrentUser -Force -AllowClobber 

## Remove old modules from existing session 

Remove-Module PowerShellGet,PackageManagement -Force -ErrorAction Ignore 

## Import updated module 

Import-Module PowerShellGet -MinimumVersion 2.0 -Force 

Import-PackageProvider PowerShellGet -MinimumVersion 2.0 -Force 

La capacità della funzione 4096 è stata superata per questo ambito

In PowerShell 5.1 è possibile che venga visualizzato l'errore" "Impossibile creare la funzione {cmdlet-name} perché è stata superata la capacità della funzione 4096. Per correggere questo errore, aumentare il limite di funzioni eseguendo il comando seguente, quindi provare a importare di nuovo il modulo.

$MaximumFunctionCount = 32768

Comandi già disponibili nel modulo

Se si verifica un conflitto quando è già installato Beta oppure v1.0, è possibile che venga visualizzato l'errore: "I seguenti comandi sono già disponibili in questo sistema: Enable-EntraAzureADAlias, Get-EntraUnsupportedCommand, Test-EntraScript." Correggi questo errore aggiungendo il parametro -AllowClobber e rieseguendo il comando.

Dipendenze mancanti

Quando le dipendenze di Microsoft Entra PowerShell non sono installate, è possibile che venga visualizzato l'errore: "Il modulo dipendente module-name non è installato in questo computer. Per usare il modulo corrente Microsoft.Entra, assicurarsi che il relativo modulo dipendente module-name sia installato." Per correggere questo errore, installare le dipendenze utilizzando lo script seguente:

  • Installare le dipendenze di SDK PowerShell di Microsoft Graph v1.0.
$RequiredModules = (@'
Microsoft.Graph.DirectoryObjects
Microsoft.Graph.Users
Microsoft.Graph.Users.Actions
Microsoft.Graph.Users.Functions
Microsoft.Graph.Groups
Microsoft.Graph.Identity.DirectoryManagement
Microsoft.Graph.Identity.Governance
Microsoft.Graph.Identity.SignIns
Microsoft.Graph.Applications
'@).Split("`n")

# Check if the pre-requisite modules are installed and install them if needed
foreach ($module in $RequiredModules) {
    Write-Host -ForegroundColor Yellow -BackgroundColor DarkBlue "Checking for $module"
    if (!(Get-Module -Name $module -ListAvailable)) {
        Install-Module -Name $module -Scope CurrentUser
    }
}

<# Attribution: https://github.com/SamErde and https://github.com/alexandair #>

Problemi di autenticazione

L'impossibilità di autenticare o ricevere token può generare una risposta "401 Non autorizzata". L'errore può essere determinato da numerose cause. Per correggere questo errore, assicurarsi di usare le credenziali corrette e di disporre di autorizzazioni sufficienti. Verificare che le registrazioni dell'app (se applicabile) siano configurate correttamente con le autorizzazioni API necessarie in Microsoft Entra ID.

Cmdlet non riconosciuto

PowerShell non riconosce il cmdlet che si sta tentando di eseguire. Per correggere questo errore, assicurarsi che il modulo di PowerShell Microsoft Entra sia installato correttamente. È possibile controllare questo stato eseguendo:

Get-Module -Name Microsoft.Entra -ListAvailable

Se il modulo non è elencato, installarlo usando:

Install-Module -Name Microsoft.Entra -Repository PSGallery -Force

Conflitti di versione

Potrebbero verificarsi errori che indicano che sono installate più versioni del modulo, ad esempio il messaggio "Assembly con lo stesso nome è già caricato". Per correggere questo errore, disinstallare tutte le versioni in conflitto del modulo e quindi installare la versione più recente:

Install-Module <Module-Name> -Required Version x.x

Errori di autorizzazione

È possibile che vengano visualizzati errori relativi a autorizzazioni insufficienti quando si tenta di eseguire comandi o script. Per correggere questo errore, assicurarsi di disporre delle autorizzazioni necessarie per eseguire l'operazione. Potrebbe essere necessario modificare le autorizzazioni nel Interfaccia di amministrazione di Microsoft Entra.

Problemi di aggiornamento del modulo

È possibile che si verifichino problemi durante il tentativo di aggiornare il modulo di PowerShell Microsoft Entra. Per correggere questo errore, usare il frammento di codice per installare la versione più recente. In caso di errori, provare a disinstallare e reinstallare il modulo.

Install-Module -Name Microsoft.Entra -Repository PSGallery -Force

Problemi di prestazioni

Gli script o i comandi potrebbero essere in esecuzione lentamente o non completati come previsto. Per risolverlo, è consigliabile perfezionare le query per recuperare solo i dati necessari, usando filtri e selezionando proprietà specifiche. Aumentare i timeout se necessario.

Gestione degli errori

È possibile che si ricevano errori dal modulo di PowerShell Microsoft Entra difficile da comprendere o gestire. Per correggere l'errore, usare $Error[0].Exception | Format-List -Force per ottenere informazioni dettagliate sull'errore. Le informazioni possono essere utili per comprendere ulteriormente la risposta dell'API e la risoluzione dei problemi.

Il proxy blocca la connessione

Se si ricevono errori da Install-Module che indicano che PowerShell Gallery non è raggiungibile, è possibile che si sia dietro un proxy. I requisiti per configurare un proxy a livello di sistema variano a seconda del sistema operativo e dell'ambiente di rete. Per conoscere le impostazioni del proxy e sapere come configurarlo per l'ambiente corrente, contattare l'amministratore di sistema.

PowerShell potrebbe non essere configurato per l'uso automatico di questo proxy. Con PowerShell 5.1 e versioni successive usare i comandi seguenti per configurare la sessione di PowerShell per l'uso di un proxy:

$webClient = New-Object -TypeName System.Net.WebClient
$webClient.Proxy.Credentials = [System.Net.CredentialCache]::DefaultNetworkCredentials

Se le credenziali del sistema operativo sono configurate correttamente, questa configurazione instrada le richieste di PowerShell tramite il proxy. Per rendere persistente questa impostazione tra una sessione e l'altra, aggiungere i comandi al proprio profilo PowerShell.

Per installare il pacchetto, il proxy deve consentire le connessioni HTTPS a www.powershellgallery.com.

Altri problemi

Se si verifica un problema del prodotto con Microsoft Entra PowerShell non elencato in questo articolo o si richiede ulteriore assistenza, inviare un problema in GitHub.