CertificateCredential Classe
Autentica come entità servizio usando un certificato.
Il certificato deve avere una chiave privata RSA, perché questa credenziale firma asserzioni usando RS256. Per altre informazioni sulla configurazione dell'autenticazione del certificato, vedere la documentazione di Azure Active Directory .
- Ereditarietà
-
azure.identity.aio._internal.AsyncContextManagerCertificateCredentialazure.identity.aio._internal.get_token_mixin.GetTokenMixinCertificateCredential
Costruttore
CertificateCredential(tenant_id: str, client_id: str, certificate_path: str | None = None, **kwargs: Any)
Parametri
- certificate_path
- str
Percorso di un file di certificato con codifica PEM, inclusa la chiave privata. Se non specificato, è necessario certificate_data .
- authority
- str
Autorità di un endpoint di Azure Active Directory, ad esempio "login.microsoftonline.com", l'autorità per Azure Public Cloud (ovvero l'impostazione predefinita). AzureAuthorityHosts definisce le autorità per altri cloud.
- certificate_data
- bytes
Byte di un certificato in formato PEM, inclusa la chiave privata
Password del certificato. Se una stringa unicode verrà codificata come UTF-8. Se il certificato richiede una codifica diversa, passare invece byte codificati in modo appropriato.
- cache_persistence_options
- TokenCachePersistenceOptions
Configurazione per la memorizzazione nella cache dei token persistenti. Se non specificato, le credenziali memorizzano nella cache i token in memoria.
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.
Esempio
Creare un certificatoCredential.
from azure.identity.aio import CertificateCredential
credential = CertificateCredential(
tenant_id="<tenant_id>",
client_id="<client_id>",
certificate_path="<path to PEM/PKCS12 certificate>",
password="<certificate password if necessary>",
)
# Certificate/private key byte data can also be passed directly
credential = CertificateCredential(
tenant_id="<tenant_id>",
client_id="<client_id>",
certificate_data=b"<cert data>",
)
Metodi
close |
Chiudere la sessione di trasporto delle credenziali. |
get_token |
Richiedere un token di accesso per gli ambiti. Questo metodo viene chiamato automaticamente dai client Azure SDK. |
close
Chiudere la sessione di trasporto delle credenziali.
async close() -> None
get_token
Richiedere un token di accesso per gli ambiti.
Questo metodo viene chiamato automaticamente dai client Azure SDK.
async get_token(*scopes: str, claims: str | None = None, tenant_id: str | None = None, **kwargs: Any) -> AccessToken
Parametri
- scopes
- str
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.