Partager via


Résolution des problèmes du module Az PowerShell

Activer l’enregistrement du débogage

L’une des premières étapes à suivre pour résoudre un problème avec le module Az PowerShell consiste à activer la journalisation du débogage.

Pour activer la journalisation du débogage pour chaque commande, spécifiez le paramètre Debug.

Get-AzResource -Name 'DoesNotExist' -Debug

Pour activer la journalisation du débogage pour une session PowerShell entière, vous définissez la valeur de la variable de DebugPreference sur Continue.

$DebugPreference = 'Continue'

Messages d’annonce dans les scénarios d’automatisation

Lors de la connexion à Azure avec Azure PowerShell, les messages d'annonce sont affichés à l'aide du flux d'informations de PowerShell pour éviter qu'ils ne modifient la sortie basée sur l'objet renvoyé. Même si nous avons fait tous les efforts pour vous assurer que les messages d’annonce n’ont pas d’impact sur votre expérience, il existe certains scénarios d’automatisation où ils peuvent affecter l’utilisation. Si vous rencontrez des problèmes, nous vous recommandons de supprimer le flux d’informations dans ces scénarios :

Connect-AzAccount -Subscription '<subscription name or id>' -InformationAction Ignore

Gestionnaire de comptes web (WAM)

  • La méthode de connexion interactive ne peut pas ouvrir de fenêtre pour WAM et retourne l’erreur : 'authentification annulée par l’utilisateur.
  • Les applets de commande Azure PowerShell ne peuvent pas s’exécuter après la connexion avec un nom d’utilisateur et un mot de passe ou un code d’appareil.
  • La fenêtre contextuelle WAM n'affiche pas l'option de compte professionnel et scolaire.
  • La méthode de connexion interactive ne peut pas ouvrir une fenêtre WAM dans la console Windows PowerShell ISE.

La solution de contournement pour ces problèmes consiste à désactiver WAM :

Update-AzConfig -EnableLoginByWam $false
  • La fenêtre contextuelle WAM pour sélectionner un compte n’est pas facile à trouver. Réduisez les autres fenêtres pour localiser la fenêtre contextuelle.

Installation

Cette section contient une liste de solutions aux problèmes courants lors de l’installation du module Az PowerShell.

Coexistence d’Az et AzureRM

Avertissement

Nous ne prenons pas en charge l’installation des modules AzureRM et Az PowerShell dans Windows PowerShell 5.1 en même temps.

Dans un scénario où vous devez installer à la fois le module AzureRM et Az PowerShell sur le même système Windows :

  • AzureRM doit être installé uniquement dans l’étendue utilisateur actuelle de Windows PowerShell 5.1.
  • Installez le module Az PowerShell dans PowerShell 7.2 ou version ultérieure.

Avertissement

Le module AzureRM PowerShell a été officiellement déconseillé depuis le 29 février 2024. Les utilisateurs sont invités à migrer d’AzureRM vers le module Az PowerShell pour garantir une prise en charge et des mises à jour continues.

Bien que le module AzureRM puisse toujours fonctionner, il n’est plus conservé ou pris en charge, plaçant toute utilisation continue à la discrétion et au risque de l’utilisateur. Reportez-vous à nos ressources de migration pour obtenir des conseils sur la transition vers le module Az.

Visual Studio

Les versions antérieures de Visual Studio peuvent installer Azure PowerShell dans le cadre de la charge de travail de développement Azure, qui installe le module AzureRM. Azure PowerShell peut être supprimé à l’aide du programme d’installation de Visual Studio ou à l’aide de la fonctionnalité « Désinstaller » dans les fonctionnalités des applications &. Si vous avez déjà installé PowerShell 7.x, vous devrez peut-être installer manuellement le module Az PowerShell.

Le proxy bloque la connexion

Si vous recevez des erreurs de Install-Module indiquant que PowerShell Gallery est inaccessible, vous êtes peut-être derrière un proxy. Différents systèmes d’exploitation et environnement réseau ont des exigences différentes pour configurer un proxy à l’échelle du système. Contactez votre administrateur système pour connaître vos paramètres de proxy et comment les configurer pour votre environnement.

PowerShell lui-même peut ne pas être configuré pour utiliser ce proxy automatiquement. Avec PowerShell 5.1 et versions ultérieures, configurez la session PowerShell pour utiliser un proxy à l’aide des commandes suivantes :

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

Si vos informations d’identification du système d’exploitation sont correctement configurées, cette configuration route les demandes PowerShell via le proxy. Pour conserver ce paramètre entre les sessions, ajoutez les commandes à votre profil PowerShell .

Pour installer le package, votre proxy doit autoriser les connexions HTTPS à www.powershellgallery.com.

Référence d’objet non définie sur une instance d’un objet

Le message «référence d’objet non définie sur une instance d’un objet» signifie que vous faites référence à un objet null ou à une ressource Azure qui n’existe pas ou que vous n’avez pas les autorisations d’accès.

$resourceId =  '/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/<resource-group-name>/providers/Microsoft.Web/sites/<webapp-name>/privateEndpointConnections/<endpoint-name>'
Get-AzPrivateEndpointConnection -ResourceId $resourceId
Get-AzPrivateEndpointConnection: Object reference not set to an instance of an object.

Vous pouvez utiliser l’applet de commande Get-AzResource pour vérifier que la ressource Azure spécifiée existe.

Get-AzResource -ResourceId $resourceId

Problèmes d’autorisation avec les applets de commande AzAD

Le module Az PowerShell utilise l’API Microsoft Graph. L’administration ou la gestion des ressources dans Azure avec le module Az PowerShell nécessite les mêmes autorisations que l’exécution de la tâche identique à partir du portail Azure ou de tout autre outil en ligne de commande Azure. Pour des questions spécifiques sur les permissions, voir la référence sur les permissions Microsoft Graph.

Paramètres de requête Microsoft Graph

Les applets de commande AzAd sous Az.Resources prennent désormais en charge les paramètres de requête et les paramètres de requête de recherche . Pour plus d’informations sur la syntaxe, consultez les liens précédemment référencés.

Get-AzAdGroupMember ne retourne pas les principaux de service

En raison des limitations de l’API Graph actuelle, les principaux de service ne sont pas retournés par Get-AzAdGroupMember dans Az 7.x. Pour contourner ce problème, Invoke-AzRestMethod pouvez être utilisé avec la version bêta de l’API Microsoft Graph.

L’exemple suivant nécessite le module Az PowerShell. Remplacez myGroupName dans la première ligne par le nom de votre groupe.

$Group = Get-AzADGroup -DisplayName myGroupName
((Invoke-AzRestMethod -Uri "https://graph.microsoft.com/beta/groups/$($Group.id)/members").Content |
  ConvertFrom-Json).value |
  Select-Object -Property DisplayName, Id, @{label='OdataType';expression={$_.'@odata.type'}}

Commande trouvée, mais qui n’a pas pu être chargée

Le message suivant est retourné par PowerShell lorsque vous tentez d’exécuter l’une des commandes Az PowerShell.

Connect-AzAccount: The 'Connect-AzAccount' command was found in the module 'Az.Accounts', but the module could not be loaded. For more information, run 'Import-Module Az.Accounts'.

Ce message se produit lorsque les modules Az et AzureRM PowerShell sont installés sur le même système Windows et qu’ils existent dans $env :PSModulePath pour la même version de PowerShell.

Important

Quand AzureRM est installé dans l’étendue AllUsers de Windows PowerShell, il est installé dans un emplacement qui fait partie de la $env:PSModulePath pour PowerShell 7. Cela n’est pas pris en charge en raison de conflits entre les modules AzureRM et Az PowerShell.

Az et AzureRM peuvent coexister sur le même système Windows, mais uniquement si AzureRM est installé dans l’étendue CurrentUser de Windows PowerShell et Az installée dans PowerShell 7. Pour plus d’informations, consultez Installer le module Az PowerShell.

Avertissement

Le module AzureRM PowerShell a été officiellement déconseillé depuis le 29 février 2024. Les utilisateurs sont invités à migrer d’AzureRM vers le module Az PowerShell pour garantir une prise en charge et des mises à jour continues.

Bien que le module AzureRM puisse toujours fonctionner, il n’est plus conservé ou pris en charge, plaçant toute utilisation continue à la discrétion et au risque de l’utilisateur. Reportez-vous à nos ressources de migration pour obtenir des conseils sur la transition vers le module Az.

Sur MacOS, une erreur est retournée lorsque l’autorisation KeyChain échoue

Lors de l’exécution d’Azure PowerShell sur MacOS, vous pouvez rencontrer un message d’erreur lors de la tentative de connexion à votre compte Azure à partir d’une session PowerShell.

DeviceCodeCredential authentication failed: Persistence check failed. Reason: KeyChain authorization/authentication failed. .Error code: -25293. OS error code -25293.

Pour résoudre ce problème, vous pouvez désactiver le stockage des informations d’identification entre les sessions en exécutant la commande suivante. Après avoir apporté cette modification, vous devez exécuter Connect-AzAccount chaque fois que vous démarrez une nouvelle session PowerShell.

Disable-AzContextAutosave

La connexion pour ce site n’est pas sécurisée

Lorsque votre navigateur par défaut est Microsoft Edge, vous pouvez rencontrer l’erreur suivante lors de la tentative de connexion à Azure de manière interactive avec Connect-AzAccount: «La connexion pour ce site n’est pas sécurisée.« Pour résoudre ce problème, visitez edge://net-internals/#hsts dans Microsoft Edge. Ajoutez localhost sous «Supprimer la stratégie de sécurité de domaine», puis cliquez sur Supprimer.

Erreur du domaine vérifié de l’IdentifierUri du principal du service

Erreur : Les valeurs de la propriété identifierUris doivent utiliser un domaine vérifié de l’organisation ou de son sous-domaine. s’affiche lors de l’exécution de New-AzADServicePrincipal ou de New-AzADApplication.

En raison du changement cassant Microsoft Entra qui exige que l’URI AppId dans les applications monolocataires demande l’utilisation du modèle par défaut ou des domaines vérifiés, vous devez mettre à niveau le module Az.Resources vers la version 4.1.0 ou ultérieure pour continuer à utiliser les applets de commande New-AzADServicePrincipal ou New-AzADApplication.

Vous pouvez également effectuer une mise à niveau vers le module Az PowerShell version 6.0 ou ultérieure.

Chronologie

L’exigence a pris effet le 15 octobre 2021.

Versions impactées

Les versions suivantes d’Azure PowerShell sont affectées par la modification majeure d'AzureAD :

  • Module PowerShell Az.Resources version 3.5.1-preview ou inférieure.
  • Module Az PowerShell version 5.9.0 ou inférieure.

Si vous rencontrez toujours des problèmes après la mise à niveau, n’hésitez pas à ouvrir un problème.

Solution de contournement

Si vous ne pouvez pas effectuer de mise à niveau vers les modules PowerShell décrits précédemment, vous pouvez suivre ces étapes lors de la création d’un principal de service :

Autres problèmes

Si vous rencontrez un problème de produit avec Azure PowerShell non répertorié dans cet article ou si vous avez besoin d’aide supplémentaire, fichier un problème sur GitHub.