DefaultAzureCredential Klass

En standardautentiseringsuppgift som kan hantera de flesta Azure SDK-autentiseringsscenarier.

Vilken identitet den använder beror på miljön. När en åtkomsttoken behövs begär den en med hjälp av dessa identiteter i sin tur och stoppas när en ger en token:

  1. Ett huvudnamn för tjänsten som konfigurerats av miljövariabler. Mer EnvironmentCredential information finns i.

  2. WorkloadIdentityCredential om miljövariabelkonfigurationen anges av webhooken för Azure-arbetsbelastningsidentitet.

  3. En hanterad Azure-identitet. Mer ManagedIdentityCredential information finns i.

  4. Endast i Windows: en användare som har loggat in med ett Microsoft-program, till exempel Visual Studio. Om flera identiteter finns i cacheminnet används värdet för miljövariabeln AZURE_USERNAME för att välja vilken identitet som ska användas. Mer SharedTokenCacheCredential information finns i.

  5. Den identitet som för närvarande är inloggad i Azure CLI.

  6. Den identitet som för närvarande är inloggad på Azure PowerShell.

  7. Den identitet som för närvarande är inloggad på Azure Developer CLI.

Det här standardbeteendet kan konfigureras med nyckelordsargument.

Arv
azure.identity._credentials.chained.ChainedTokenCredential
DefaultAzureCredential

Konstruktor

DefaultAzureCredential(**kwargs: Any)

Parametrar

authority
str

Utfärdare av en Azure Active Directory-slutpunkt, till exempel "login.microsoftonline.com", utfärdare för offentligt Azure-moln (som är standard). AzureAuthorityHosts definierar myndigheter för andra moln. Hanterade identiteter ignorerar detta eftersom de finns i ett enda moln.

exclude_workload_identity_credential
bool

Om arbetsbelastningsidentiteten ska undantas från autentiseringsuppgifterna. Standardvärdet är False.

exclude_developer_cli_credential
bool

Om Azure Developer CLI ska undantas från autentiseringsuppgifterna. Standardvärdet är False.

exclude_cli_credential
bool

Om du vill undanta Azure CLI från autentiseringsuppgifterna. Standardvärdet är False.

exclude_environment_credential
bool

Om du vill undanta ett huvudnamn för tjänsten som konfigurerats av miljövariabler från autentiseringsuppgifterna. Standardvärdet är False.

exclude_managed_identity_credential
bool

Om hanterade identiteter ska undantas från autentiseringsuppgifterna. Standardvärdet är False.

exclude_powershell_credential
bool

Om Azure PowerShell ska undantas. Standardvärdet är False.

exclude_visual_studio_code_credential
bool

Om lagrade autentiseringsuppgifter ska undantas från VS Code. Standardvärdet är True.

exclude_shared_token_cache_credential
bool

Om cacheminnet för delad token ska undantas. Standardvärdet är False.

exclude_interactive_browser_credential
bool

Om interaktiv webbläsarautentisering ska undantas (se InteractiveBrowserCredential). Standardvärdet är True.

interactive_browser_tenant_id
str

Klientorganisations-ID som ska användas vid autentisering av en användare via InteractiveBrowserCredential. Standardvärdet för miljövariabeln AZURE_TENANT_ID, om det finns några. Om det inte anges autentiseras användarna i sina hemklienter.

managed_identity_client_id
str

Klient-ID för en användartilldelad hanterad identitet. Standardvärdet för miljövariabeln AZURE_CLIENT_ID, om det finns några. Om inget anges används en systemtilldelad identitet.

workload_identity_client_id
str

Klient-ID för en identitet som tilldelats podden. Standardvärdet för miljövariabeln AZURE_CLIENT_ID, om det finns några. Om det inte anges används poddens standardidentitet.

workload_identity_tenant_id
str

Önskad klient för WorkloadIdentityCredential. Standardvärdet för miljövariabeln AZURE_TENANT_ID, om det finns några.

interactive_browser_client_id
str

Det klient-ID som ska användas i interaktiva webbläsarautentiseringsuppgifter. Om inget anges autentiserar användarna till ett Azure-utvecklingsprogram.

shared_cache_username
str

Önskat användarnamn för SharedTokenCacheCredential. Standardvärdet för miljövariabeln AZURE_USERNAME, om det finns några.

shared_cache_tenant_id
str

Önskad klient för SharedTokenCacheCredential. Standardvärdet för miljövariabeln AZURE_TENANT_ID, om det finns några.

visual_studio_code_tenant_id
str

Klientorganisations-ID som ska användas vid autentisering med VisualStudioCodeCredential. Standardinställningen "Azure: Klientorganisation" i VS Code-användarinställningarna eller, när den inställningen inte har något värde, "organisationer"-klientorganisationen, som endast stöder Azure Active Directory-arbets- eller skolkonton.

process_timeout
int

Tidsgränsen i sekunder som ska användas för autentiseringsuppgifter för utvecklare som kör underprocesser (t.ex. AzureCliCredential, AzurePowerShellCredential). Standardvärdet är 10 sekunder.

Exempel

Skapa en DefaultAzureCredential.


   from azure.identity import DefaultAzureCredential

   credential = DefaultAzureCredential()

Metoder

close

Stäng transportsessionen för varje autentiseringsuppgift i kedjan.

get_token

Begär en åtkomsttoken för omfång.

Den här metoden anropas automatiskt av Azure SDK-klienter.

close

Stäng transportsessionen för varje autentiseringsuppgift i kedjan.

close() -> None

get_token

Begär en åtkomsttoken för omfång.

Den här metoden anropas automatiskt av Azure SDK-klienter.

get_token(*scopes: str, claims: str | None = None, tenant_id: str | None = None, **kwargs: Any) -> AccessToken

Parametrar

scopes
str
Obligatorisk

önskade omfång för åtkomsttoken. Den här metoden kräver minst ett omfång. Mer information om omfång finns i https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc.

claims
str

ytterligare anspråk som krävs i token, till exempel de som returneras i en resursproviders anspråksutmaning efter ett auktoriseringsfel.

tenant_id
str

valfri klientorganisation som ska ingå i tokenbegäran.

Returer

En åtkomsttoken med önskade omfång.

Returtyp

Undantag

autentiseringen misslyckades. Undantaget har ett meddelandeattribut som visar varje autentiseringsförsök och dess felmeddelande.