Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Povolte protokolování ladění
Jeden z prvních kroků při odstraňování problémů s modulem Az PowerShell je povolit záznam ladění.
Pokud chcete povolit protokolování ladění pro každý příkaz zvlášť, zadejte parametr Debug.
Get-AzResource -Name 'DoesNotExist' -Debug
Pokud chcete povolit protokolování ladění pro celou relaci v PowerShellu, změňte hodnotu proměnné DebugPreference na Continue.
$DebugPreference = 'Continue'
Známý problém: Selhání instalace modulů Az z MAR
Při instalaci určitých modulů Az PowerShellu z registru artefaktů Microsoft (MAR) pomocí PSResourceGet může dojít k chybě, například:
Install-PSResource: Package(s) 'Az.Keyvault' could not be installed from repository 'MAR'.
Note
Jako dočasné alternativní řešení nainstalujte modul z jiného úložiště, jako je například Galerie prostředí PowerShell, dokud se problém nevyřeší.
Další informace naleznete v Opravě chyby při porovnávání názvu cesty k souboru pro určení přesné shody.
Řešení potíží s vícefaktorovým ověřováním (MFA)
Selhání interaktivního přihlášení
Pokud při spouštění rutin Azure PowerShell, které vytvářejí, upravují nebo odstraňují prostředky, dochází k chybám, může být příčinou problému Microsoft Entra ID zásady podmíněného přístupu, které vyžadují vícefaktorové ověřování (MFA).
K těmto chybám obvykle dochází v případě, že zásady vyžadují vícefaktorové ověřování, ale během přihlášení se nevynucují.
Nelze provést ověřování pomocí SharedTokenCacheCredential.
Při použití se může zobrazit tato chyba:
- Az Modul PowerShell verze 14.2.0 nebo starší
- Modul Az.Accounts PowerShell 5.1.1 nebo starší
SharedTokenCacheCredential authentication unavailable. Token acquisition failed for user
someone@contoso.com. Ensure that you have authenticated with a developer tool that supports Azure
single sign on.
Upgradujte na následující verze nebo novější, abyste dostávali informativnější chybové zprávy a podrobnosti o zásadách:
- Az Modul PowerShellu: verze 14.3.0 nebo novější
- Modul Az.Accounts: verze 5.2.0 nebo novější
Podle zásad nebyl prostředek povolen
K této chybě dochází v novějších verzích modulů (Az 14.3.0+ a Az.Accounts 5.2.0+), kde podmíněný přístup vyžaduje vícefaktorové ověřování pro konkrétní operace.
Resource was disallowed by policy. Users must use MFA for Create operation.
Users must authenticate with multi-factor authentication to create or update resources.
Run the cmdlet below to authenticate interactively; additional parameters may be added as needed.
Connect-AzAccount -Tenant (Get-AzContext).Tenant.Id -ClaimsChallenge "<claims-challenge-token>"
Možnosti řešení
Požádejte správce Azure, aby při přihlášení vynutil vícefaktorové ověřování. To umožňuje, aby vaše relace splnila požadavky podmíněného přístupu bez dalších kroků.
Pokud vynucování vícefaktorového ověřování při přihlášení není možné, použijte k interaktivnímu ověření parametr ClaimsChallenge :
Connect-AzAccount -Tenant (Get-AzContext).Tenant.Id -ClaimsChallenge "<claims-challenge-token>"
Další informace najdete v tématu Plánování povinného vícefaktorového ověřování pro Azure a další portály pro správu
Chyba ROPC: Kvůli změně konfigurace provedené správcem
Při přihlašování do Azure pomocí hesla použijete přihlašovací tok ROPC (Resource Owner Password Credential). Tato metoda ověřování nepodporuje vícefaktorové ověřování. Tady je příklad:
Connect-AzAccount -Credential $Credential
Pokud uživatelský účet vyžaduje vícefaktorové ověřování, příkaz selže s následující chybou:
Connect-AzAccount : UsernamePasswordCredential authentication failed: Response status code does not
indicate success: 400 (BadRequest). See the troubleshooting guide for more information
https://aka.ms/azsdk/net/identity/usernamepasswordcredential/troubleshoot
Řešení: Použít metodu ověřování, která je kompatibilní s vícefaktorovým ověřováním.
Upozornění mezi tenanty: Ověřování selhalo u tenanta
Pokud máte přístup k více tenantům a jeden z nich vyžaduje vícefaktorové ověřování, Azure PowerShell může zobrazit následující upozornění:
WARNING: Unable to acquire token for tenant '00000000-0000-0000-0000-000000000000' with error
'Authentication failed against tenant 00000000-0000-0000-0000-000000000000. User interaction is
required. This may be due to the conditional access policy settings such as multi-factor
authentication (MFA). If you need to access subscriptions in that tenant, please rerun
'Connect-AzAccount' with additional parameter '-TenantId 00000000-0000-0000-0000-000000000000.'
Azure PowerShell se pokusí přihlásit pomocí prvního tenanta nalezeného během přihlášení. Pokud tento tenant vynucuje vícefaktorové ověřování, ověřování může selhat. Pokud se chcete tomuto problému vyhnout, explicitně zadejte cílového tenanta pomocí parametru TenantId:
Connect-AzAccount -TenantId 00000000-0000-0000-0000-000000000000
Tím se zajistí, že je ověřování provedeno vůči správnému nájemci, což snižuje pravděpodobnost selhání souvisejících s vícefaktorovým ověřováním (MFA).
Zprávy oznámení ve scénářích automatizace
Při připojování k Azure pomocí Azure PowerShell se zprávy oznámení zobrazují pomocí informačního streamu PowerShellu, aby se zabránilo změně vráceného výstupu založeného na objektech. I když jsme se snažili zajistit, aby zprávy s oznámeními neměly vliv na vaše prostředí, existují některé scénáře automatizace, ve kterých můžou mít vliv na využití. Pokud dojde k problémům, doporučujeme v těchto scénářích potlačit informační stream:
Connect-AzAccount -Subscription '<subscription name or id>' -InformationAction Ignore
Správce webových účtů (WAM)
- Interaktivní metoda přihlašování nemůže otevřít okno pro WAM a vrátí chybu: uživatel zrušil ověřování.
- Azure PowerShell rutiny se po přihlášení pomocí uživatelského jména a hesla nebo kódu zařízení nedají spustit.
- Automaticky otevírané okno WAM nezobrazuje možnost Pracovní a školní účet .
- Interaktivní metoda přihlašování nemůže otevřít okno WAM v konzole prostředí Windows PowerShell ISE.
Alternativním řešením těchto problémů je zakázat WAM:
Update-AzConfig -EnableLoginByWam $false
- Vyskakovací okno WAM pro výběr účtu není snadné najít. Minimalizujte ostatní okna a vyhledejte automaticky otevírané okno.
Installation
Tato část obsahuje seznam řešení běžných problémů při instalaci modulu Az PowerShell.
Koexistence Az a AzureRM
Warning
Nepodporujeme instalaci modulů AzureRM i Az PowerShell ve Windows PowerShellu 5.1 současně.
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 nainstalován pouze v rámci aktuálního uživatelského oboru Windows PowerShellu 5.1.
- Nainstalujte modul Az PowerShell v PowerShellu 7.2 nebo novějším.
Warning
Modul AzureRM PowerShell je 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.
Ačkoli modul AzureRM může stále fungovat, již se neudržuje ani nepodporuje, takže jakékoli další použití je na vlastní riziko uživatele. Pokyny k přechodu na modul Az najdete v našich zdrojích informací o migraci.
Visual Studio
Starší verze Visual Studio mohou nainstalovat Azure PowerShell jako součást pracovní zátěže pro vývoj Azure, která zahrnuje instalaci modulu AzureRM. Azure PowerShell je možné odebrat pomocí instalačního programu 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 blokuje připojení
Pokud dojde k chybám z Install-Module hlásícím, že Galerie prostředí PowerShell je nedostupná, může být, že jste 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. Požádejte správce systému o nastavení proxy serveru a o tom, jak je nakonfigurovat pro vaše prostředí.
Samotný PowerShell možná není nakonfigurovaný na automatické používání tohoto proxy serveru. V PowerShellu 5.1 a novějším nakonfigurujte relaci PowerShellu tak, aby používala proxy server pomocí následujících příkazů:
$webClient = New-Object -TypeName System.Net.WebClient
$webClient.Proxy.Credentials = [System.Net.CredentialCache]::DefaultNetworkCredentials
Pokud jsou vaše přihlašovací údaje operačního systému správně nakonfigurované, 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.
Reference na objekt není přiřazena k instanci objektu
Zpráva "odkaz na objekt není nastaven na instanci objektu" znamená, že odkazujete na objekt, který má hodnotu null nebo Azure zdroj, který 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í cmdletu Get-AzResource můžete zkontrolovat, zda zadaný prostředek Azure existuje.
Get-AzResource -ResourceId $resourceId
Problémy s oprávněními u příkazů AzAD
Modul Az PowerShell používá rozhraní Microsoft Graph API. Správa nebo správa prostředků v Azure pomocí modulu Az PowerShell vyžaduje stejná oprávnění jako provádění identických úloh z portálu Azure 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 Graph.
parametry dotazu Microsoft Graph
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í principály služeb
Kvůli omezením aktuálního rozhraní Graph API se objekty Service Principal nevrací příkazem 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. Nahraďte myGroupName v prvním řádku 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 moduly Az i AzureRM PowerShell nainstalované ve stejném systému Windows a existují v $env:PSModulePath pro stejnou verzi PowerShellu.
Important
Když je AzureRM nainstalovaný v oboru AllUsers prostředí Windows PowerShell, je nainstalovaný v umístění, které je součástí $env:PSModulePath pro PowerShell 7. To se nepodporuje kvůli konfliktům mezi moduly AzureRM a Az PowerShell.
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.
Warning
Modul AzureRM PowerShell je 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.
Ačkoli modul AzureRM může stále fungovat, již se neudržuje ani nepodporuje, takže jakékoli další použití je na vlastní riziko 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 vaším výchozím prohlížečem Microsoft Edge, při interaktivním pokusu o přihlášení k Azure pomocí Connect-AzAccountmůže dojí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. Nejprve přidejte localhost do části "Odstranit zásady zabezpečení domény", poté klikněte na Odstranit.
Chyba ověřené domény v identifikátoru URI objektu služeb
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.
Vzhledem k zásadní změně Microsoft Entra, která vyžaduje, aby identifikátor URI AppId v aplikacích s jedním tenantem používal výchozí schéma nebo ověřené domény, musíte upgradovat modul Az.Resources na verzi 4.1.0 nebo novější, abyste mohli dál používat nebo New-AzADServicePrincipal rutiny.
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 starší.
- Modul Az PowerShell verze 5.9.0 nebo nižší.
Pokud po upgradu stále dochází k problémům, můžete otevřít issue.
Alternativní řešení
Pokud nemůžete upgradovat na dříve popsané moduly PowerShellu, můžete při vytváření principála služby postupovat podle těchto kroků:
- V případě potřeby přidejte vlastní název domény pomocí Centra pro správu Microsoft Entra.
- Vytvoření aplikace s akceptovaným identifikátoremUri
- Vytvořte principála služby odkazujícího na tuto aplikaci
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.
Azure PowerShell