Partager via


UsernamePasswordCredential Classe

Authentifie un utilisateur au moyen d’un nom d’utilisateur et d’un mot de passe.

En général, Microsoft ne recommande pas ce type d’authentification, car il est moins sécurisé que les autres flux d’authentification.

L’authentification avec ces informations d’identification n’étant pas interactive, elle n’est compatible avec aucune forme d’authentification multifacteur ou d’invite de consentement. L’application doit déjà avoir le consentement de l’utilisateur ou d’un administrateur d’annuaire.

Ces informations d’identification peuvent uniquement authentifier les comptes professionnels et scolaires ; Les comptes Microsoft ne sont pas pris en charge. Pour plus d’informations sur les types de comptes, consultez la documentation Azure Active Directory .

Héritage
azure.identity._internal.interactive.InteractiveCredential
UsernamePasswordCredential

Constructeur

UsernamePasswordCredential(client_id: str, username: str, password: str, **kwargs: Any)

Paramètres

client_id
str
Obligatoire

ID client de l’application

username
str
Obligatoire

Nom d’utilisateur de l’utilisateur (généralement une adresse e-mail)

password
str
Obligatoire

Mot de passe 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.

tenant_id
str

ID de locataire ou domaine associé à un locataire. S’il n’est pas fourni, la valeur par défaut est le locataire « organisations », qui prend uniquement en charge les comptes professionnels ou scolaires Azure Active Directory.

cache_persistence_options
TokenCachePersistenceOptions

Configuration pour la mise en cache des jetons persistants. Si elles ne sont pas spécifiées, les informations d’identification cachent les jetons en mémoire.

disable_instance_discovery
bool

Détermine si la découverte instance 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 les clouds privés ou Azure Stack. Le processus de découverte de instance implique la récupération des métadonnées d’autorité à partir de https://login.microsoft.com/ pour valider l’autorité. Si vous définissez cette valeur sur 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 fiable.

additionally_allowed_tenants
List[str]

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 UsernamePasswordCredential.


   from azure.identity import UsernamePasswordCredential

   credential = UsernamePasswordCredential(
       client_id="<client_id>",
       username="<username>",
       password="<password>",
   )

Méthodes

authenticate

Authentifiez un utilisateur de manière interactive.

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.

authenticate

Authentifiez un utilisateur de manière interactive.

authenticate(**kwargs: Any) -> AuthenticationRecord

Paramètres

scopes
Iterable[str]

étendues à demander pendant l’authentification, telles que celles fournies par scopes. Si elle est fournie, l’authentification réussie met en cache un jeton d’accès pour ces étendues.

claims
str

revendications supplémentaires requises dans le jeton, telles que celles fournies par claims

Type de retour

Exceptions

échec de l’authentification. L’attribut de l’erreur message donne une raison.

close

close() -> None

Exceptions

échec de l’authentification. L’attribut de l’erreur message donne une raison.

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
Obligatoire

é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.

L’interaction utilisateur est nécessaire pour acquérir un jeton, et les informations d’identification sont configurées pour ne pas commencer automatiquement. Appeler

pour commencer l’authentification interactive.