Condividi tramite


AzureDeveloperCliCredential Classe

Esegue l'autenticazione richiedendo un token dal Azure Developer CLI.

Azure Developer CLI è uno strumento di interfaccia della riga di comando che consente agli sviluppatori di creare, gestire e distribuire risorse in Azure. Si basa sull'interfaccia della riga di comando di Azure e offre funzionalità aggiuntive specifiche per gli sviluppatori di Azure. Consente agli utenti di eseguire l'autenticazione come utente e/o un'entità servizio in Azure Active Directory (Azure AD). AzureDeveloperCliCredential esegue l'autenticazione in un ambiente di sviluppo e acquisisce un token per conto dell'utente o dell'entità servizio connessi in Azure Developer CLI. Funge da Azure Developer CLI utente o entità servizio connessi ed esegue un comando dell'interfaccia della riga di comando di Azure sotto per autenticare l'applicazione in Azure Active Directory.

Per usare questa credenziale, lo sviluppatore deve eseguire l'autenticazione in locale in Azure Developer CLI usando uno dei comandi seguenti:

  • Eseguire "azd auth login" in Azure Developer CLI per autenticare in modo interattivo come utente.

  • Eseguire "azd auth login –client-id 'client_id' -client-secret 'client_secret' -tenant-id 'tenant_id'" per eseguire l'autenticazione come entità servizio.

Potrebbe essere necessario ripetere questo processo dopo un determinato periodo di tempo, a seconda della validità del token di aggiornamento nell'organizzazione. In genere, il periodo di validità del token di aggiornamento è di qualche settimana a pochi mesi. AzureDeveloperCliCredential richiederà di nuovo di accedere.

Ereditarietà
azure.identity.aio._internal.AsyncContextManager
AzureDeveloperCliCredential

Costruttore

AzureDeveloperCliCredential(*, tenant_id: str = '', additionally_allowed_tenants: List[str] | None = None, process_timeout: int = 10)

Parametri

tenant_id
str

Tenant facoltativo da includere nella richiesta di token.

additionally_allowed_tenants
List[str]

Specifica i tenant oltre alla "tenant_id" specificata per cui le credenziali possono acquisire token. Aggiungere il valore jolly "*" per consentire alle credenziali di acquisire i token per qualsiasi tenant a cui l'applicazione può accedere.

process_timeout
int

Secondi per attendere che il processo di Azure Developer CLI risponda. Il valore predefinito è 10 secondi.

Esempio

Creare un'istanza di AzureDeveloperCliCredential.


   from azure.identity.aio import AzureDeveloperCliCredential

   credential = AzureDeveloperCliCredential()

Metodi

close

La chiamata a questo metodo non è necessaria

get_token

Richiedere un token di accesso per gli ambiti.

Questo metodo viene chiamato automaticamente dai client Azure SDK. Le applicazioni che chiamano direttamente questo metodo devono gestire anche la memorizzazione nella cache dei token perché questa credenziale non memorizza nella cache i token acquisiti.

close

La chiamata a questo metodo non è necessaria

async close() -> None

get_token

Richiedere un token di accesso per gli ambiti.

Questo metodo viene chiamato automaticamente dai client Azure SDK. Le applicazioni che chiamano direttamente questo metodo devono gestire anche la memorizzazione nella cache dei token perché questa credenziale non memorizza nella cache i token acquisiti.

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

Parametri

scopes
str
Necessario

ambito desiderato per il token di accesso. Questa credenziale consente un solo ambito per richiesta. Per altre informazioni sugli ambiti, vedere https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc.

claims
str

non usato da questa credenziale; qualsiasi valore fornito verrà ignorato.

tenant_id
str

tenant facoltativo da includere nella richiesta di token.

Restituisce

Token di accesso con gli ambiti desiderati.

Tipo restituito

Eccezioni

la credenziale non è stata in grado di richiamare il Azure Developer CLI.

le credenziali richiamate il Azure Developer CLI ma non hanno ricevuto un token di accesso.