Condividi tramite


identity Pacchetto

Credenziali per i client azure SDK.

Pacchetti

aio

Credenziali per i client Azure SDK asincroni.

Classi

AuthenticationRecord

Informazioni sull'account non segreto per un utente autenticato

Questa classe consente DeviceCodeCredential e InteractiveBrowserCredential di accedere ai dati di autenticazione memorizzati nella cache in precedenza. Le applicazioni non devono costruire istanze di questa classe. Devono invece acquisirne uno dal metodo di autenticazione di una credenziale, ad esempio authenticate. Per altri dettagli, vedere l'esempio di user_authentication.

AuthenticationRequiredError

L'autenticazione interattiva è necessaria per acquisire un token.

Questo errore viene generato solo dalle credenziali utente interattive configurate per non richiedere automaticamente l'interazione dell'utente in base alle esigenze. Le relative proprietà forniscono informazioni aggiuntive che potrebbero essere necessarie per l'autenticazione. L'esempio di control_interactive_prompts illustra la gestione di questo errore chiamando il metodo "authenticate" di una credenziale.

AuthorizationCodeCredential

Esegue l'autenticazione riscattando un codice di autorizzazione ottenuto in precedenza da Azure Active Directory.

Per altre informazioni sul flusso di autenticazione, vedere la documentazione di Azure Active Directory .

AzureAuthorityHosts

Credenziali per i client azure SDK.

AzureCliCredential

Esegue l'autenticazione richiedendo un token dall'interfaccia della riga di comando di Azure.

Ciò richiede in precedenza l'accesso ad Azure tramite "az login" e userà l'identità attualmente registrata dell'interfaccia della riga di comando.

AzureDeveloperCliCredential

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 come 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 connesso in Azure Developer CLI. Funge da Azure Developer CLI utente o entità servizio connesso 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 eseguire l'autenticazione interattiva come utente.

  • Eseguire "azd auth login –client-id 'client_id' –client-secret 'client_secret' –tenant-id 'tenant_id'" per 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 alcune settimane a pochi mesi. AzureDeveloperCliCredential richiederà di eseguire di nuovo l'accesso.

AzurePowerShellCredential

Esegue l'autenticazione richiedendo un token da Azure PowerShell.

Ciò richiede l'accesso in precedenza ad Azure tramite "Connect-AzAccount" e userà l'identità attualmente registrata.

CertificateCredential

Esegue l'autenticazione come entità servizio usando un certificato.

Il certificato deve avere una chiave privata RSA, perché questa credenziale firma le asserzioni usando RS256. Per altre informazioni sulla configurazione dell'autenticazione del certificato, vedere la documentazione di Azure Active Directory .

ChainedTokenCredential

Sequenza di credenziali che è stessa una credenziale.

Il get_token metodo chiama get_token ogni credenziale nella sequenza, in ordine, restituendo il primo token valido ricevuto.

ClientAssertionCredential

Autentica un'entità servizio con un'asserzione JWT.

Questa credenziale è destinata a scenari avanzati. CertificateCredential ha un'API più pratica per lo scenario di asserzione più comune, autenticando un'entità servizio con un certificato.

ClientSecretCredential

Esegue l'autenticazione come entità servizio usando un segreto client.

CredentialUnavailableError

Le credenziali non hanno tentato di eseguire l'autenticazione perché i dati o lo stato richiesti non sono disponibili.

DefaultAzureCredential

Credenziali predefinite in grado di gestire la maggior parte degli scenari di autenticazione di Azure SDK.

L'identità usata dipende dall'ambiente. Quando è necessario un token di accesso, richiede uno usando queste identità a sua volta, arrestandosi quando si fornisce un token:

  1. Entità servizio configurata dalle variabili di ambiente. Per informazioni dettagliate, vedere EnvironmentCredential.

  2. WorkloadIdentityCredential se la configurazione della variabile di ambiente è impostata dal webhook identità del carico di lavoro di Azure.

  3. Un'identità gestita di Azure. Per informazioni dettagliate, vedere ManagedIdentityCredential.

  4. Solo in Windows: un utente che ha eseguito l'accesso con un'applicazione Microsoft, ad esempio Visual Studio. Se nella cache sono presenti più identità, il valore della variabile AZURE_USERNAME di ambiente viene usato per selezionare l'identità da usare. Per informazioni dettagliate, vedere SharedTokenCacheCredential.

  5. Identità attualmente connessa all'interfaccia della riga di comando di Azure.

  6. Identità attualmente connessa a Azure PowerShell.

  7. Identità attualmente connessa al Azure Developer CLI.

Questo comportamento predefinito è configurabile con argomenti di parole chiave.

DeviceCodeCredential

Autentica gli utenti tramite il flusso del codice del dispositivo.

Quando get_token viene chiamato, questa credenziale acquisisce un URL di verifica e un codice da Azure Active Directory. Un utente deve passare all'URL, immettere il codice ed eseguire l'autenticazione con Azure Active Directory. Se l'utente esegue correttamente l'autenticazione, la credenziale riceve un token di accesso.

Questa credenziale è utile principalmente per autenticare un utente in un ambiente senza un Web browser, ad esempio una sessione SSH. Se è disponibile un Web browser, InteractiveBrowserCredential è più pratico perché apre automaticamente un browser alla pagina di accesso.

EnvironmentCredential

Credenziali configurate dalle variabili di ambiente.

Questa credenziale è in grado di eseguire l'autenticazione come entità servizio usando un segreto client o un certificato o come utente con nome utente e password. La configurazione viene tentata in questo ordine, usando queste variabili di ambiente:

Entità servizio con segreto:

  • AZURE_TENANT_ID: ID del tenant dell'entità servizio. Chiamato anche l'ID "directory".

  • AZURE_CLIENT_ID: ID client dell'entità servizio

  • AZURE_CLIENT_SECRET: uno dei segreti client dell'entità servizio

  • AZURE_AUTHORITY_HOST: autorità di un endpoint di Azure Active Directory, ad esempio "login.microsoftonline.com", l'autorità per il cloud pubblico di Azure, ovvero l'impostazione predefinita quando non viene assegnato alcun valore.

Entità servizio con certificato:

  • AZURE_TENANT_ID: ID del tenant dell'entità servizio. Chiamato anche l'ID "directory".

  • AZURE_CLIENT_ID: ID client dell'entità servizio

  • AZURE_CLIENT_CERTIFICATE_PATH: percorso di un file di certificato PEM o PKCS12, inclusa la chiave privata.

  • AZURE_CLIENT_CERTIFICATE_PASSWORD: (facoltativo) password del file di certificato, se presente.

  • AZURE_AUTHORITY_HOST: autorità di un endpoint di Azure Active Directory, ad esempio "login.microsoftonline.com", l'autorità per il cloud pubblico di Azure, ovvero l'impostazione predefinita quando non viene assegnato alcun valore.

Utente con nome utente e password:

  • AZURE_CLIENT_ID: ID client dell'applicazione

  • AZURE_USERNAME: un nome utente (in genere un indirizzo di posta elettronica)

  • AZURE_PASSWORD: password dell'utente

  • AZURE_TENANT_ID: (facoltativo) ID del tenant dell'entità servizio. Chiamato anche l'ID "directory". Se non specificato, per impostazione predefinita viene usato il tenant "organizzazioni", che supporta solo gli account aziendali o dell'istituto di istruzione di Azure Active Directory.

  • AZURE_AUTHORITY_HOST: autorità di un endpoint di Azure Active Directory, ad esempio "login.microsoftonline.com", l'autorità per il cloud pubblico di Azure, ovvero l'impostazione predefinita quando non viene assegnato alcun valore.

InteractiveBrowserCredential

Apre un browser per autenticare in modo interattivo un utente.

get_token apre un browser a un URL di accesso fornito da Azure Active Directory e autentica un utente con il flusso del codice di autorizzazione, usando PKCE (Proof Key for Code Exchange) internamente per proteggere il codice.

KnownAuthorities

Alias di AzureAuthorityHosts

ManagedIdentityCredential

Esegue l'autenticazione con un'identità gestita di Azure in qualsiasi ambiente di hosting che supporta le identità gestite.

Per impostazione predefinita, questa credenziale usa un'identità assegnata dal sistema. Per configurare un'identità assegnata dall'utente, usare uno degli argomenti della parola chiave. Per altre informazioni sulla configurazione dell'identità gestita per le applicazioni, vedere la documentazione di Azure Active Directory .

OnBehalfOfCredential

Autentica un'entità servizio tramite il flusso on-behalf-of.

Questo flusso viene in genere usato dai servizi di livello intermedio che autorizzano le richieste ad altri servizi con un'identità utente delegata. Poiché non si tratta di un flusso di autenticazione interattivo, un'applicazione che lo usa deve avere il consenso amministratore per tutte le autorizzazioni delegate prima di richiedere i token. Per una descrizione più dettagliata del flusso on-behalf-of, vedere la documentazione di Azure Active Directory .

SharedTokenCacheCredential

Esegue l'autenticazione usando i token nella cache locale condivisa tra le applicazioni Microsoft.

TokenCachePersistenceOptions

Opzioni per la memorizzazione nella cache dei token persistenti.

La maggior parte delle credenziali accetta un'istanza di questa classe per configurare la memorizzazione nella cache dei token persistenti. I valori predefiniti configurano una credenziale per l'uso di una cache condivisa con gli strumenti di sviluppo Microsoft e SharedTokenCacheCredential. Per isolare i dati di una credenziale da altre applicazioni, specificare un nome per la cache.

Per impostazione predefinita, la cache viene crittografata con l'API protezione dei dati utente della piattaforma corrente e genererà un errore quando non è disponibile. Per configurare la cache per il fallback in un file non crittografato anziché generare un errore, specificare allow_unencrypted_storage=True.

Avviso

La cache contiene segreti di autenticazione. Se la cache non è crittografata, la protezione è

responsabilità dell'applicazione. Una violazione del contenuto comprometterà completamente gli account.

UsernamePasswordCredential

Autentica un utente con un nome utente e una password.

In generale, Microsoft non consiglia questo tipo di autenticazione, perché è meno sicuro di altri flussi di autenticazione.

L'autenticazione con questa credenziale non è interattiva, quindi non è compatibile con alcuna forma di autenticazione a più fattori o richiesta di consenso. L'applicazione deve avere già il consenso dell'utente o di un amministratore della directory.

Questa credenziale può autenticare solo gli account aziendali e dell'istituto di istruzione; Gli account Microsoft non sono supportati. Per altre informazioni sui tipi di account, vedere la documentazione di Azure Active Directory .

VisualStudioCodeCredential

Esegue l'autenticazione come utente di Azure che ha eseguito l'accesso a Visual Studio Code tramite l'estensione 'Account di Azure'.

Si tratta di un problema noto che questa credenziale non funziona con le versioni dell'estensione account di Azure più recenti di 0.9.11. Una correzione a lungo termine a questo problema è in corso. Nel frattempo, prendere in considerazione l'autenticazione con AzureCliCredential.

WorkloadIdentityCredential

Esegue l'autenticazione usando un'identità del carico di lavoro di Azure Active Directory.

L'autenticazione dell'identità del carico di lavoro è una funzionalità di Azure che consente alle applicazioni in esecuzione nelle macchine virtuali (VM) di accedere ad altre risorse di Azure senza la necessità di un'entità servizio o di un'identità gestita. Con l'autenticazione dell'identità del carico di lavoro, le applicazioni si autenticano usando la propria identità, anziché usare un'entità servizio condivisa o un'identità gestita. Nell'ambito dell'autenticazione dell'identità del carico di lavoro usa il concetto di credenziali dell'account di servizio (SACS), che vengono create automaticamente da Azure e archiviate in modo sicuro nella macchina virtuale. Usando l'autenticazione dell'identità del carico di lavoro, è possibile evitare la necessità di gestire e ruotare entità servizio o identità gestite per ogni applicazione in ogni macchina virtuale. Inoltre, poiché le schede di sicurezza vengono create automaticamente e gestite da Azure, non è necessario preoccuparsi di archiviare e proteggere le credenziali sensibili.

WorkloadIdentityCredential supporta l'autenticazione dell'identità del carico di lavoro di Azure in Azure Kubernetes e acquisisce un token usando le credenziali dell'account del servizio disponibili nell'ambiente Azure Kubernetes. Per altre informazioni, vedere questa panoramica dell'identità del carico di lavoro .