Condividi tramite


WorkloadIdentityCredential Classe

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 .

Ereditarietà
azure.identity._credentials.client_assertion.ClientAssertionCredential
WorkloadIdentityCredential
azure.identity._credentials.workload_identity.TokenFileMixin
WorkloadIdentityCredential

Costruttore

WorkloadIdentityCredential(*, tenant_id: str | None = None, client_id: str | None = None, token_file_path: str | None = None, **kwargs: Any)

Parametri

tenant_id
str

ID del tenant di Azure Active Directory dell'applicazione. Chiamato anche l'ID "directory".

client_id
str

ID client di una registrazione dell'app azure AD.

token_file_path
str

Percorso di un file contenente un token dell'account del servizio Kubernetes che autentica l'identità.

Esempio

Creare un oggetto WorkloadIdentityCredential.


   from azure.identity import WorkloadIdentityCredential

   credential = WorkloadIdentityCredential(
       tenant_id="<tenant_id>",
       client_id="<client_id>",
       token_file_path="<token_file_path>",
   )

   # Parameters can be omitted if the following environment variables are set:
   #   - AZURE_TENANT_ID
   #   - AZURE_CLIENT_ID
   #   - AZURE_FEDERATED_TOKEN_FILE
   credential = WorkloadIdentityCredential()

Metodi

close
get_token

Richiedere un token di accesso per gli ambiti.

Questo metodo viene chiamato automaticamente dai client Azure SDK.

close

close() -> None

get_token

Richiedere un token di accesso per gli ambiti.

Questo metodo viene chiamato automaticamente dai client Azure SDK.

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

Parametri

scopes
str
Necessario

ambiti desiderati per il token di accesso. Questo metodo richiede almeno un ambito. Per altre informazioni sugli ambiti, vedere https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc.

claims
str

attestazioni aggiuntive necessarie nel token, ad esempio quelle restituite nella richiesta di attestazioni di un provider di risorse in seguito a un errore di autorizzazione.

tenant_id
str

tenant facoltativo da includere nella richiesta di token.

enable_cae
bool

indica se abilitare La valutazione dell'accesso continuo (CAE) per il token richiesto. Il valore predefinito è False.

Restituisce

Token di accesso con gli ambiti desiderati.

Tipo restituito

Eccezioni

la credenziale non è in grado di tentare l'autenticazione perché non dispone di dati, stato o supporto della piattaforma necessari

autenticazione non riuscita. L'attributo dell'errore message fornisce un motivo.