OnBehalfOfCredential Classe
Authentifie un principal de service via le flux on-behalf-of.
Ce flux est généralement utilisé par les services de niveau intermédiaire qui autorisent les demandes adressées à d’autres services avec une identité d’utilisateur déléguée. Étant donné qu’il ne s’agit pas d’un flux d’authentification interactif, une application qui l’utilise doit avoir le consentement de l’administrateur pour toutes les autorisations déléguées avant de demander des jetons pour celles-ci. Consultez la documentation Azure Active Directory pour obtenir une description plus détaillée du flux on-behalf-of.
- Héritage
-
azure.identity._internal.msal_credentials.MsalCredentialOnBehalfOfCredentialazure.identity._internal.get_token_mixin.GetTokenMixinOnBehalfOfCredential
Constructeur
OnBehalfOfCredential(tenant_id: str, client_id: str, **kwargs: Any)
Paramètres
- tenant_id
- str
ID du locataire du principal de service. Également appelé son ID « répertoire ».
- client_secret
- str
Optionnel. Clé secrète client pour authentifier le principal de service. Vous devez fournir client_secret ou client_certificate .
- client_certificate
- bytes
Optionnel. Octets d’un certificat au format PEM ou PKCS12, y compris la clé privée pour authentifier le principal de service. Vous devez fournir client_secret ou client_certificate .
- user_assertion
- str
Obligatoire. Jeton d’accès que les informations d’identification utiliseront comme assertion utilisateur lors de la demande de jetons pour le compte de l’utilisateur
- authority
- str
Autorité d’un point de terminaison Azure Active Directory, par exemple « login.microsoftonline.com », l’autorité pour le cloud public Azure (qui est la valeur par défaut). AzureAuthorityHosts définit les autorités pour d’autres clouds.
Un mot de passe de certificat. Utilisé uniquement lorsque client_certificate est fourni. Si cette valeur est une chaîne unicode, elle est encodée en UTF-8. Si le certificat nécessite un encodage différent, passez les octets correctement codés à la place.
- disable_instance_discovery
- bool
Détermine si instance découverte est effectuée lors de la tentative d’authentification. La définition de cette valeur sur true désactive complètement la découverte instance et la validation de l’autorité. Cette fonctionnalité est destinée à être utilisée dans les scénarios où le point de terminaison de métadonnées n’est pas accessible, par exemple dans des clouds privés ou Azure Stack. Le processus de découverte instance implique la récupération des métadonnées d’autorité à partir de https://login.microsoft.com/ pour valider l’autorité. En affectant la valeur True, la validation de l’autorité est désactivée. Par conséquent, il est essentiel de s’assurer que l’hôte d’autorité configuré est valide et digne de confiance.
Spécifie les locataires en plus du « tenant_id » spécifié pour lequel les informations d’identification peuvent acquérir des jetons. Ajoutez la valeur générique « * » pour permettre aux informations d’identification d’acquérir des jetons pour n’importe quel locataire auquel l’application peut accéder.
Exemples
Créez un OnBehalfOfCredential.
from azure.identity import OnBehalfOfCredential
credential = OnBehalfOfCredential(
tenant_id="<tenant_id>",
client_id="<client_id>",
client_secret="<client_secret>",
user_assertion="<access_token>",
)
Méthodes
close | |
get_token |
Demandez un jeton d’accès pour les étendues. Cette méthode est appelée automatiquement par les clients du Kit de développement logiciel (SDK) Azure. |
close
close() -> None
get_token
Demandez un jeton d’accès pour les étendues.
Cette méthode est appelée automatiquement par les clients du Kit de développement logiciel (SDK) Azure.
get_token(*scopes: str, claims: str | None = None, tenant_id: str | None = None, **kwargs: Any) -> AccessToken
Paramètres
- scopes
- str
étendues souhaitées pour le jeton d’accès. Cette méthode nécessite au moins une étendue. Pour plus d’informations sur les étendues, consultez https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc.
- claims
- str
revendications supplémentaires requises dans le jeton, telles que celles retournées dans la contestation de revendications d’un fournisseur de ressources suite à un échec d’autorisation.
- tenant_id
- str
locataire facultatif à inclure dans la demande de jeton.
- enable_cae
- bool
indique s’il faut activer l’évaluation continue de l’accès (CAE) pour le jeton demandé. Valeur par défaut False.
Retours
Jeton d’accès avec les étendues souhaitées.
Type de retour
Exceptions
les informations d’identification ne peuvent pas tenter d’authentification, car elles ne disposent pas de la prise en charge des données, de l’état ou de la plateforme requises
échec de l’authentification. L’attribut de l’erreur message
donne une raison.