CertificateCredential Classe
S’authentifie en tant que principal de service à l’aide d’un certificat.
Le certificat doit avoir une clé privée RSA, car ces informations d’identification signent des assertions à l’aide de RS256. Pour plus d’informations sur la configuration de l’authentification par certificat, consultez la documentation Azure Active Directory .
- Héritage
-
azure.identity.aio._internal.AsyncContextManagerCertificateCredentialazure.identity.aio._internal.get_token_mixin.GetTokenMixinCertificateCredential
Constructeur
CertificateCredential(tenant_id: str, client_id: str, certificate_path: str | None = None, **kwargs: Any)
Paramètres
- tenant_id
- str
ID du locataire du principal de service. Également appelé son ID « répertoire ».
- certificate_path
- str
Chemin d’accès à un fichier de certificat encodé en PEM, y compris la clé privée. S’il n’est pas fourni, certificate_data est obligatoire.
- 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.
- certificate_data
- bytes
Octets d’un certificat au format PEM, y compris la clé privée
Mot de passe du certificat. S’il s’agit d’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.
- 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 mettez en cache les jetons en mémoire.
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 CertificateCredential.
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>",
)
Méthodes
close |
Fermez la session de transport des informations d’identification. |
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
Fermez la session de transport des informations d’identification.
async 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.
async 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.