Rozwiązywanie problemów z uwierzytelnianiem środowiska deweloperskiego
Ten artykuł zawiera wskazówki dotyczące rozwiązywania problemów napotkanych podczas uwierzytelniania zestawu Azure SDK dla aplikacji Java działających lokalnie na maszynach deweloperskich przy użyciu różnych TokenCredential
implementacji. Aby uzyskać więcej informacji, zobacz Uwierzytelnianie platformy Azure w środowiskach deweloperskich Java.
Rozwiązywanie problemów z usługą AzureCliCredential
W przypadku korzystania z programu AzureCliCredential
możesz opcjonalnie wypróbować/złapać dla elementu CredentialUnavailableException
. W poniższej tabeli przedstawiono błędy wskazujące ten wyjątek oraz metody ograniczania ryzyka:
Komunikat o błędzie | opis | Ograniczanie ryzyka |
---|---|---|
Azure CLI not installed |
Interfejs wiersza polecenia platformy Azure nie został zainstalowany lub nie można go odnaleźć. | — Upewnij się, że interfejs wiersza polecenia platformy Azure został poprawnie zainstalowany. — Sprawdź, czy lokalizacja instalacji została dodana do zmiennej środowiskowej PATH . |
Please run 'az login' to set up account |
Żadne konto nie jest obecnie zalogowane do interfejsu wiersza polecenia platformy Azure lub logowanie wygasło. | — Zaloguj się do interfejsu wiersza polecenia platformy Azure przy użyciu az login polecenia . Aby uzyskać więcej informacji, zobacz Logowanie się przy użyciu interfejsu wiersza polecenia platformy Azure. — Sprawdź, czy interfejs wiersza polecenia platformy Azure może uzyskać tokeny. Aby uzyskać więcej informacji, zobacz następną sekcję. |
Sprawdź, czy interfejs wiersza polecenia platformy Azure może uzyskać tokeny
Możesz ręcznie sprawdzić, czy interfejs wiersza polecenia platformy Azure został prawidłowo uwierzytelniony i czy można uzyskać tokeny. Najpierw użyj następującego polecenia, aby sprawdzić, czy konto jest obecnie zalogowane do interfejsu wiersza polecenia platformy Azure:
az account show
Po zweryfikowaniu, że interfejs wiersza polecenia platformy Azure używa poprawnego konta, użyj następującego polecenia, aby sprawdzić, czy jest w stanie uzyskać tokeny dla tego konta:
az account get-access-token \
--output json \
--resource https://management.core.windows.net
Ostrzeżenie
Dane wyjściowe tego polecenia zawierają prawidłowy token dostępu. Aby uniknąć naruszenia zabezpieczeń konta, nie udostępniaj tego tokenu dostępu.
Rozwiązywanie problemów z usługą AzureDeveloperCliCredential
W przypadku korzystania z programu AzureDeveloperCliCredential
możesz opcjonalnie wypróbować/złapać dla elementu CredentialUnavailableException
. W poniższej tabeli przedstawiono błędy wskazujące ten wyjątek oraz metody ograniczania ryzyka:
Komunikat o błędzie | opis | Ograniczanie ryzyka |
---|---|---|
Azure Developer CLI not installed |
Interfejs wiersza polecenia dla deweloperów platformy Azure nie jest zainstalowany lub nie można go odnaleźć. | — Upewnij się, że zainstalowano poprawnie interfejs wiersza polecenia dla deweloperów platformy Azure. — Sprawdź, czy lokalizacja instalacji została dodana do zmiennej środowiskowej PATH . |
Please run 'azd auth login' to set up account |
Żadne konto nie jest obecnie zalogowane do interfejsu wiersza polecenia dewelopera platformy Azure lub logowanie wygasło. | — Zaloguj się do interfejsu wiersza polecenia dewelopera platformy Azure przy użyciu azd auth login polecenia . — Sprawdź, czy interfejs wiersza polecenia dewelopera platformy Azure może uzyskać tokeny. Aby uzyskać więcej informacji, zobacz następną sekcję. |
Sprawdź, czy interfejs wiersza polecenia dewelopera platformy Azure może uzyskać tokeny
Możesz ręcznie sprawdzić, czy interfejs wiersza polecenia dewelopera platformy Azure został prawidłowo uwierzytelniony i czy można uzyskać tokeny. Najpierw użyj następującego polecenia, aby sprawdzić, czy konto jest obecnie zalogowane do interfejsu wiersza polecenia dewelopera platformy Azure:
azd config list
Po zweryfikowaniu, że interfejs wiersza polecenia dewelopera platformy Azure używa poprawnego konta, możesz użyć następującego polecenia, aby sprawdzić, czy jest w stanie uzyskać tokeny dla tego konta:
azd auth token --output json --scope https://management.core.windows.net/.default
Ostrzeżenie
Dane wyjściowe tego polecenia zawierają prawidłowy token dostępu. Aby uniknąć naruszenia zabezpieczeń konta, nie udostępniaj tego tokenu dostępu.
Rozwiązywanie problemów z elementem AzurePowerShellCredential
W przypadku korzystania z programu AzurePowerShellCredential
możesz opcjonalnie wypróbować/złapać dla elementu CredentialUnavailableException
. W poniższej tabeli przedstawiono błędy wskazujące ten wyjątek oraz metody ograniczania ryzyka:
Komunikat o błędzie | opis | Ograniczanie ryzyka |
---|---|---|
PowerShell isn't installed. |
Nie znaleziono lokalnej instalacji programu PowerShell. | Upewnij się, że program PowerShell został poprawnie zainstalowany na maszynie. |
Az.Account module >= 2.2.0 isn't installed. |
Moduł Az.Account wymagany do uwierzytelniania w programie Azure PowerShell nie jest zainstalowany. |
Zainstaluj najnowszy Az.Account moduł. Aby uzyskać więcej informacji, zobacz How to install Azure PowerShell (Jak zainstalować program Azure PowerShell). |
Please run 'Connect-AzAccount' to set up account. |
Żadne konto nie jest obecnie zalogowane do programu Azure PowerShell. | — Zaloguj się do programu Azure PowerShell przy użyciu Connect-AzAccount polecenia . Aby uzyskać więcej informacji, zobacz Logowanie się przy użyciu programu Azure PowerShell — Sprawdź, czy program Azure PowerShell może uzyskać tokeny. Aby uzyskać więcej informacji, zobacz następną sekcję. |
Sprawdź, czy program Azure PowerShell może uzyskać tokeny
Możesz ręcznie sprawdzić, czy prawidłowo uwierzytelniono program Azure PowerShell i uzyskać tokeny. Najpierw użyj następującego polecenia, aby sprawdzić, czy konto jest obecnie zalogowane do interfejsu wiersza polecenia platformy Azure:
Get-AzContext
To polecenie generuje dane wyjściowe podobne do następującego przykładu:
Name Account SubscriptionName Environment TenantId
---- ------- ---------------- ----------- --------
Subscription1 (xxxxxxxx-xxxx-xxxx-xxx... test@outlook.com Subscription1 AzureCloud xxxxxxxx-x...
Po zweryfikowaniu, że program Azure PowerShell używa poprawnego konta, możesz użyć następującego polecenia, aby sprawdzić, czy jest w stanie uzyskać tokeny dla tego konta.
Get-AzAccessToken -ResourceUrl "https://management.core.windows.net"
Ostrzeżenie
Dane wyjściowe tego polecenia zawierają prawidłowy token dostępu. Aby uniknąć naruszenia zabezpieczeń konta, nie udostępniaj tego tokenu dostępu.
Rozwiązywanie problemów z programem VisualStudioCodeCredential
Uwaga
Jest to znany problem, który VisualStudioCodeCredential
nie działa z nowszymi wersjami rozszerzenia konta platformy Azure niż 0.9.11
. Długoterminowe rozwiązanie tego problemu jest w toku. W międzyczasie rozważ uwierzytelnienie za pośrednictwem interfejsu wiersza polecenia platformy Azure.
W przypadku korzystania z programu VisualStudioCodeCredential
możesz opcjonalnie wypróbować/złapać dla elementu CredentialUnavailableException
. W poniższej tabeli przedstawiono błędy wskazujące ten wyjątek oraz metody ograniczania ryzyka:
Komunikat o błędzie | opis | Ograniczanie ryzyka |
---|---|---|
Failed To Read VS Code Credentials</p></p>OR</p>Authenticate via Azure Tools plugin in VS Code |
W konfiguracji programu VS Code nie znaleziono żadnych informacji o koncie platformy Azure. | — Upewnij się, że wtyczka konta platformy Azure została prawidłowo zainstalowana. — Użyj palety poleceń widoku>, aby wykonać polecenie Azure: Sign In. To polecenie otwiera okno przeglądarki i wyświetla stronę, która umożliwia zalogowanie się na platformie Azure. — Jeśli masz już zainstalowane rozszerzenie konta platformy Azure i zalogowano się do konta, spróbuj wylogować się i zalogować się ponownie. Ta akcja ponownie wypełnia pamięć podręczną i potencjalnie ogranicza błąd, który otrzymujesz. |
MSAL Interaction Required Exception |
VisualStudioCodeCredential program mógł odczytać buforowane poświadczenia z pamięci podręcznej, ale token buforowany prawdopodobnie wygasł. |
Zaloguj się do rozszerzenia konta platformy Azure za pomocą palety poleceń widoków>, aby wykonać polecenie Azure: Sign In w środowisku IDE programu VS Code. |
ADFS tenant not supported |
Uwierzytelnianie usługi platformy Azure w programie Visual Studio nie obsługuje obecnie dzierżaw usług ADFS. | Użyj poświadczeń z obsługiwanej chmury podczas uwierzytelniania w programie Visual Studio. Aby uzyskać więcej informacji na temat obsługiwanych chmur, zobacz Chmury krajowe. |
Następne kroki
Jeśli wskazówki dotyczące rozwiązywania problemów w tym artykule nie pomogą rozwiązać problemów podczas korzystania z bibliotek klienckich zestawu Azure SDK dla języka Java, zalecamy zgłoszenie problemu w repozytorium GitHub zestawu Azure SDK dla języka Java.