Řešení potíží s modulem Az PowerShell

Povolení protokolování ladění

Jedním z prvních kroků, které byste měli provést při řešení potíží s modulem Azure Az PowerShell, je povolení protokolování ladění.

Pokud chcete povolit protokolování ladění pro jednotlivé příkazy, zadejte parametr Ladění .

Get-AzResource -Name 'DoesNotExist' -Debug

Pokud chcete povolit protokolování ladění pro celou relaci PowerShellu, nastavíte hodnotu proměnné DebugPreference na Continuehodnotu .

$DebugPreference = 'Continue'

Instalace

Tato část obsahuje seznam řešení běžných problémů při instalaci modulu Azure Az PowerShell.

Koexistence Az a AzureRM

Upozorňující

Moduly PowerShellu AzureRM a Az současně nainstalované ve Windows PowerShellu 5.1 nejsou podporované.

Ve scénáři, ve kterém potřebujete nainstalovat modul AzureRM i Az PowerShell do stejného systému Windows:

  • AzureRM musí být nainstalovaný jenom v aktuálním oboru uživatele windows PowerShellu 5.1.
  • Nainstalujte modul Az PowerShell v PowerShellu 7.2 nebo novějším.

Upozorňující

Modul AzureRM PowerShell byl od 29. února 2024 oficiálně zastaralý. Uživatelům se doporučuje migrovat z AzureRM do modulu Az PowerShell, aby se zajistila nepřetržitá podpora a aktualizace.

I když může modul AzureRM stále fungovat, už se neudržuje ani nepodporuje, přičemž jakékoli další použití se bude umisťovat podle vlastního uvážení a rizika uživatele. Pokyny k přechodu na modul Az najdete v našich zdrojích informací o migraci.

Visual Studio

Starší verze sady Visual Studio můžou nainstalovat Azure PowerShell jako součást úlohy vývoje Pro Azure, která nainstaluje modul AzureRM. Azure PowerShell je možné odebrat pomocí instalačního programu sady Visual Studio nebo pomocí příkazu Odinstalovat v aplikacích a funkcích. Pokud jste už nainstalovali PowerShell 7.x, možná budete muset modul Az PowerShell nainstalovat ručně.

Proxy server blokuje připojení

Pokud dojde k chybám z Install-Module toho, že Galerie prostředí PowerShell je nedostupný, může se stát, že se nacházíte za proxy serverem. Různé operační systémy a síťová prostředí mají různé požadavky na konfiguraci proxy serveru v rámci celého systému. Informace o nastavení proxy serveru a postupu při jeho konfiguraci pro vaše prostředí vám sdělí správce systému.

Samotný PowerShell možná není nakonfigurovaný na automatické používání tohoto proxy serveru. Pokud používáte PowerShell 5.1 nebo novější, nakonfigurujte pro relaci PowerShellu používání proxy serveru pomocí následujících příkazů:

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

Pokud máte správně nakonfigurované přihlašovací údaje k operačnímu systému, tato konfigurace směruje požadavky PowerShellu přes proxy server. Pokud chcete toto nastavení zachovat mezi relacemi, přidejte tento příkaz do profilu PowerShellu.

Pokud chcete balíček nainstalovat, musí proxy server povolit připojení HTTPS k www.powershellgallery.com.

Odkaz na objekt není nastaven na instanci objektu

Zpráva "Odkaz na objekt není nastaven na instanci objektu" znamená, že odkazujete na objekt, který je null nebo prostředek Azure neexistuje nebo nemáte oprávnění k přístupu.

$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.

Pomocí této rutiny Get-AzResource můžete ověřit, že zadaný prostředek Azure existuje.

Get-AzResource -ResourceId $resourceId

Problémy s oprávněními u rutin AzAD

Modul Az PowerShell používá rozhraní Microsoft Graph API. Správa stering nebo správa prostředků v Azure pomocí modulu Az PowerShell vyžaduje stejná oprávnění jako provedení stejné úlohy z webu Azure Portal nebo jakéhokoli jiného nástroje příkazového řádku Azure. Konkrétní dotazy týkající se oprávnění najdete v referenčních informacích k oprávněním Microsoft Graphu.

Parametry dotazu Microsoft Graphu

Rutiny AzAd v části Az.Resources teď podporují parametry dotazu a parametry vyhledávacího dotazu. Podrobnosti o syntaxi najdete v odkazovaných odkazech.

Get-AzAdGroupMember nevrací instanční objekty

Kvůli omezením aktuálního rozhraní Graph API se instanční objekty nevrací rutinou Get-AzAdGroupMember v Az 7.x. Jako alternativní řešení je možné použít Invoke-AzRestMethod s beta verzí rozhraní Microsoft Graph API.

Následující příklad vyžaduje modul Az PowerShell. Na prvním řádku nahraďte myGroupName názvem vaší skupiny.

$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'}}

Příkaz byl nalezen, ale nelze ho načíst.

Následující zpráva se vrátí prostředím PowerShell při pokusu o spuštění některého z příkazů Az PowerShellu.

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'.

Tato zpráva se zobrazí, když máte nainstalované moduly Az i AzureRM PowerShellu ve stejném systému Windows a existují v $env:PSModulePath pro stejnou verzi PowerShellu.

Důležité

Když je AzureRM nainstalovaný v AllUsers oboru Prostředí Windows PowerShell, je nainstalovaný v umístění, které je součástí $env:PSModulePath prostředí PowerShell 7. Tato možnost není podporovaná kvůli konfliktům modulů PowerShellu AzureRM a Az.

Az i AzureRM můžou existovat ve stejném systému Windows, ale jenom v případě, že je AzureRM nainstalovaný v CurrentUser oboru Windows PowerShellu a Az nainstalovaného v PowerShellu 7. Další informace najdete v tématu Instalace modulu Az PowerShell.

Upozorňující

Modul AzureRM PowerShell byl od 29. února 2024 oficiálně zastaralý. Uživatelům se doporučuje migrovat z AzureRM do modulu Az PowerShell, aby se zajistila nepřetržitá podpora a aktualizace.

I když může modul AzureRM stále fungovat, už se neudržuje ani nepodporuje, přičemž jakékoli další použití se bude umisťovat podle vlastního uvážení a rizika uživatele. Pokyny k přechodu na modul Az najdete v našich zdrojích informací o migraci.

V systému MacOS se vrátí chyba, když selže autorizace klíčenky.

Při spuštění Azure PowerShellu v macOS se může při pokusu o přihlášení k účtu Azure z relace PowerShellu zobrazit chybová zpráva.

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

Jako alternativní řešení tohoto problému můžete zakázat ukládání přihlašovacích údajů mezi relacemi spuštěním následujícího příkazu. Po provedení této změny ale musíte spustit Connect-AzAccount pokaždé, když spustíte novou relaci PowerShellu.

Disable-AzContextAutosave

Připojení pro tento web není zabezpečené.

Pokud je výchozím prohlížečem Microsoft Edge, může při pokusu o přihlášení k Azure interaktivně Connect-AzAccountdojít k následující chybě: Připojení pro tento web není zabezpečené. Pokud chcete tento problém vyřešit, navštivte edge://net-internals/#hsts v Microsoft Edgi. Přidejte localhost v části Odstranit zásady zabezpečení domény a klikněte na Odstranit.

Chyba ověřené domény identifikátorem URI instančního objektu

Chyba: Hodnoty vlastnosti identifierUris musí používat ověřenou doménu organizace nebo její subdomény se zobrazí při spuštění New-AzADServicePrincipal nebo New-AzADApplication.

Kvůli zásadní změně Microsoft Entra, která vyžaduje , aby identifikátor URI AppId v aplikacích s jedním tenantem vyžadoval použití výchozího schématu nebo ověřených domén , musíte upgradovat modul Az.Resources na verzi 4.1.0 nebo novější, aby bylo možné pokračovat v používání New-AzADServicePrincipal nebo New-AzADApplication rutinách.

Můžete také upgradovat na modul Az PowerShell verze 6.0 nebo novější.

Časová osa

Požadavek začal platit 15. října 2021.

Ovlivněné verze

Změna způsobující chybu AzureAD ovlivňuje následující verze Azure PowerShellu:

  • Modul Az.Resources PowerShell verze 3.5.1-preview nebo nižší.
  • Modul Az PowerShell verze 5.9.0 nebo nižší.

Pokud po upgradu stále dochází k problémům, můžete problém otevřít.

Alternativní řešení

Pokud nemůžete upgradovat na dříve popsané moduly PowerShellu, můžete při vytváření instančního objektu postupovat podle těchto kroků:

Další problémy

Pokud narazíte na problém s produktem s Azure PowerShellem, který není uvedený v tomto článku nebo potřebujete další pomoc, vytvořte problém na GitHubu.