OnBehalfOfCredential Classe
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 .
- Ereditarietà
-
azure.identity.aio._internal.AsyncContextManagerOnBehalfOfCredentialazure.identity.aio._internal.get_token_mixin.GetTokenMixinOnBehalfOfCredential
Costruttore
OnBehalfOfCredential(tenant_id: str, client_id: str, *, client_certificate: bytes | None = None, client_secret: str | None = None, user_assertion: str, **kwargs: Any)
Parametri
- client_secret
- str
Facoltativa. Segreto client per autenticare l'entità servizio. È necessario specificare client_secret o client_certificate .
- client_certificate
- bytes
Facoltativa. Byte di un certificato in formato PEM o PKCS12, inclusa la chiave privata per autenticare l'entità servizio. È necessario specificare client_secret o client_certificate .
- user_assertion
- str
Obbligatorio. Il token di accesso che la credenziale userà come asserzione utente quando si richiedono token on-behalf-of
- authority
- str
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. AzureAuthorityHosts definisce le autorità per altri cloud.
Password del certificato. Utilizzato solo quando viene fornito client_certificate . Se questo valore è una stringa Unicode, verrà codificato come UTF-8. Se il certificato richiede una codifica diversa, passare invece byte codificati in modo appropriato.
Specifica i tenant oltre al "tenant_id" specificato per il quale le credenziali possono acquisire i 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 oggetto OnBehalfOfCredential.
from azure.identity.aio import OnBehalfOfCredential
credential = OnBehalfOfCredential(
tenant_id="<tenant_id>",
client_id="<client_id>",
client_secret="<client_secret>",
user_assertion="<access_token>",
)
Metodi
close | |
get_token |
Richiedere un token di accesso per gli ambiti. Questo metodo viene chiamato automaticamente dai client Azure SDK. |
close
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 richieste 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 dei dati, dello stato o del supporto della piattaforma necessari
autenticazione non riuscita. L'attributo dell'errore message
indica un motivo.