Compartir a través de


CertificateCredential Clase

Se autentica como entidad de servicio mediante un certificado.

El certificado debe tener una clave privada RSA, ya que esta credencial firma las aserciones mediante RS256. Consulte la documentación de Azure Active Directory para más información sobre cómo configurar la autenticación de certificados.

Herencia
azure.identity._internal.client_credential_base.ClientCredentialBase
CertificateCredential

Constructor

CertificateCredential(tenant_id: str, client_id: str, certificate_path: str | None = None, **kwargs: Any)

Parámetros

tenant_id
str
Requerido

Identificador del inquilino de la entidad de servicio. También se denomina su identificador de "directorio".

client_id
str
Requerido

Identificador de cliente de la entidad de servicio

certificate_path
str
valor predeterminado: None

Ruta de acceso opcional a un archivo de certificado en formato PEM o PKCS12, incluida la clave privada. Si no se proporciona, se requiere certificate_data .

authority
str

Autoridad de un punto de conexión de Azure Active Directory, por ejemplo, "login.microsoftonline.com", la autoridad de la nube pública de Azure (que es el valor predeterminado). AzureAuthorityHosts define las autoridades para otras nubes.

certificate_data
bytes

Bytes de un certificado en formato PEM o PKCS12, incluida la clave privada.

password
str o bytes

Contraseña del certificado. Si una cadena unicode, se codificará como UTF-8. Si el certificado requiere una codificación diferente, pase los bytes codificados correctamente en su lugar.

send_certificate_chain
bool

Si es True, la credencial enviará la cadena de certificados pública en el encabezado x5c del JWT de cada solicitud de token. Esto es necesario para la autenticación del emisor o el nombre del firmante (SNI). El valor predeterminado es False.

cache_persistence_options
TokenCachePersistenceOptions

Configuración para el almacenamiento en caché de tokens persistente. Si no se especifica, la credencial almacenará en caché los tokens en memoria.

disable_instance_discovery
bool

Determina si se realiza o no la detección de instancias al intentar autenticarse. Si se establece en true, se deshabilitará completamente la detección de instancias y la validación de autoridad. Esta funcionalidad está pensada para su uso en escenarios en los que no se puede acceder al punto de conexión de metadatos, como en nubes privadas o Azure Stack. El proceso de detección de instancias implica recuperar los metadatos de autoridad de https://login.microsoft.com/ para validar la autoridad. Al establecer esto en True, la validación de la autoridad está deshabilitada. Como resultado, es fundamental asegurarse de que el host de autoridad configurado sea válido y confiable.

additionally_allowed_tenants
List[str]

Especifica los inquilinos además de la "tenant_id" especificada para la que la credencial puede adquirir tokens. Agregue el valor comodín "*" para permitir que la credencial adquiera tokens para cualquier inquilino al que pueda acceder la aplicación.

Ejemplos

Cree un certificateCredential.


   from azure.identity 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étodos

close
get_token

Solicite un token de acceso para los ámbitos.

Los clientes del SDK de Azure llaman automáticamente a este método.

close

close() -> None

get_token

Solicite un token de acceso para los ámbitos.

Los clientes del SDK de Azure llaman automáticamente a este método.

get_token(*scopes: str, claims: str | None = None, tenant_id: str | None = None, **kwargs: Any) -> AccessToken

Parámetros

scopes
str
Requerido

ámbitos deseados para el token de acceso. Este método requiere al menos un ámbito. Para obtener más información sobre los ámbitos, vea https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc.

claims
str

Notificaciones adicionales necesarias en el token, como las que se devuelven en el desafío de notificaciones de un proveedor de recursos después de un error de autorización.

tenant_id
str

inquilino opcional que se va a incluir en la solicitud de token.

enable_cae
bool

indica si se va a habilitar la evaluación continua de acceso (CAE) para el token solicitado. El valor predeterminado es False.

Devoluciones

Un token de acceso con los ámbitos deseados.

Tipo de valor devuelto

Excepciones

la credencial no puede intentar la autenticación porque no tiene compatibilidad con los datos, el estado o la plataforma necesarios.

error de autenticación. El atributo del message error proporciona un motivo.