Interfejs wiersza polecenia platformy Azure oparty na protokole MSAL

Począwszy od wersji 2.30.0, interfejs wiersza polecenia platformy Azure używa biblioteki Microsoft Authentication Library (MSAL) jako podstawowej biblioteki uwierzytelniania. Biblioteka MSAL używa przepływu uwierzytelniania usługi Azure Active Directory w wersji 2.0 w celu zapewnienia większej funkcjonalności i zwiększenia zabezpieczeń pamięci podręcznej tokenów.

Ostrzeżenie

ZMIANY POWODUJĄCE NIEZGODNOŚĆ są wprowadzane w interfejsie wiersza polecenia platformy Azure w wersji 2.30.0. Uważnie odczytaj dokument przed instalacją.

accessTokens.json Oczekiwany

Poprzednie wersje interfejsu wiersza polecenia platformy Azure zapisały tokeny biblioteki ADAL (Azure AD Authentication Library) i wpisy jednostki usługi w usłudze ~/.azure/accessToken.json. Najnowsze wersje interfejsu wiersza polecenia platformy Azure używają biblioteki MSAL i nie generują accessTokens.jsonjuż elementu . Dowolny istniejący przepływ pracy w zależności od tego, czy accessTokens.json nie działa już.

Wpisy pamięci podręcznej tokenu MSAL i jednostki usługi są zapisywane jako zaszyfrowane pliki w systemie Windows oraz pliki w postaci zwykłego tekstu w systemach Linux i macOS.

Ważne

W przypadku korzystania z interfejsu wiersza polecenia platformy Azure w potoku, takiego jak Azure DevOps, upewnij się, że wszystkie zadania i etapy używają wersji interfejsu wiersza polecenia platformy Azure powyżej wersji 2.30.0 dla interfejsu wiersza polecenia platformy Azure opartego na protokole MSAL. Interfejs wiersza polecenia platformy Azure w wersji 2.30.0 nie jest zgodny z poprzednimi wersjami i zgłasza błąd podczas pracy z wersjami starszymi niż 2.30.0.

Alternatywy do rozważenia

Alternatywy, które można wziąć pod uwagę w celu zapewnienia stabilności:

Wywołanie az account get-access-token

Możesz ręcznie wywołać az account get-access-token w terminalu lub użyć podprocesu w celu wywołania go z innego języka programowania. Domyślnie zwracany token dostępu dotyczy usługi Azure Resource Manager (ARM) i domyślnej subskrypcji/dzierżawy pokazanej w temacie az account show.

# get the active subscription
az account show --output table

# get access token for the active subscription
az account get-access-token

# get access token for a specific subscription
az account get-access-token --subscription "<subscription ID or name>"

Aby dowiedzieć się więcej na temat tokenów dostępu, zobacz Logowanie się przy użyciu interfejsu wiersza polecenia platformy Azure.

Korzystanie z akcji AzureCliCredential

AzureCliCredential jest typem poświadczeń we wszystkich istniejących zestawach SDK języka. Używa on podprocesów do wywołania az account get-access-token w celu uzyskania tokenu dostępu dla bieżącego zalogowanego konta.

Zobacz też