Partilhar via


CertificateCredential Classe

Autentica-se como um principal de serviço com um certificado.

O certificado tem de ter uma chave privada RSA, porque esta credencial assina asserções com RS256. Veja a documentação do Azure Active Directory para obter mais informações sobre como configurar a autenticação de certificados.

Herança
azure.identity._internal.client_credential_base.ClientCredentialBase
CertificateCredential

Construtor

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

Parâmetros

tenant_id
str
Necessário

ID do inquilino do principal de serviço. Também denominado ID de "diretório".

client_id
str
Necessário

O ID de cliente do principal de serviço

certificate_path
str
valor predefinido: None

Caminho opcional para um ficheiro de certificado no formato PEM ou PKCS12, incluindo a chave privada. Se não for fornecido, é necessário certificate_data .

authority
str

Autoridade de um ponto final do Azure Active Directory, por exemplo "login.microsoftonline.com", a autoridade para a Cloud Pública do Azure (que é a predefinição). AzureAuthorityHosts define as autoridades para outras clouds.

certificate_data
bytes

Os bytes de um certificado no formato PEM ou PKCS12, incluindo a chave privada

password
str ou bytes

A palavra-passe do certificado. Se uma cadeia unicode for codificada como UTF-8. Se o certificado necessitar de uma codificação diferente, transmita bytes devidamente codificados.

send_certificate_chain
bool

Se For Verdadeiro, a credencial enviará a cadeia de certificados pública no cabeçalho x5c do JWT de cada pedido de token. Isto é necessário para a autenticação do Nome do Requerente/Emissor (SNI). A predefinição é Falso.

cache_persistence_options
TokenCachePersistenceOptions

Configuração para colocação em cache de tokens persistentes. Se não for especificado, a credencial colocará os tokens em cache na memória.

disable_instance_discovery
bool

Determina se a deteção de instâncias é ou não efetuada ao tentar autenticar. Definir isto como verdadeiro irá desativar completamente a deteção de instâncias e a validação da autoridade. Esta funcionalidade destina-se a ser utilizada em cenários em que não é possível alcançar o ponto final de metadados, como em clouds privadas ou no Azure Stack. O processo de deteção de instâncias implica a obtenção de metadados de autoridade de https://login.microsoft.com/ para validar a autoridade. Ao defini-lo como Verdadeiro, a validação da autoridade está desativada. Como resultado, é crucial garantir que o anfitrião de autoridade configurado é válido e fidedigno.

additionally_allowed_tenants
List[str]

Especifica inquilinos para além do "tenant_id" especificado para o qual a credencial pode adquirir tokens. Adicione o valor de caráter universal "*" para permitir que a credencial adquira tokens para qualquer inquilino a que a aplicação possa aceder.

Exemplos

Crie um 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

Pedir um token de acesso para âmbitos.

Este método é chamado automaticamente pelos clientes do SDK do Azure.

close

close() -> None

get_token

Pedir um token de acesso para âmbitos.

Este método é chamado automaticamente pelos clientes do SDK do Azure.

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

Parâmetros

scopes
str
Necessário

âmbitos pretendidos para o token de acesso. Este método requer, pelo menos, um âmbito. Para obter mais informações sobre âmbitos, consulte https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc.

claims
str

afirmações adicionais necessárias no token, como as devolvidas no desafio de afirmações de um fornecedor de recursos após uma falha de autorização.

tenant_id
str

inquilino opcional a incluir no pedido de token.

enable_cae
bool

indica se pretende ativar a Avaliação de Acesso Contínuo (CAE) para o token pedido. A predefinição é Falso.

Devoluções

Um token de acesso com os âmbitos pretendidos.

Tipo de retorno

Exceções

a credencial não consegue tentar autenticação porque não tem os dados necessários, o estado ou o suporte da plataforma

falha na autenticação. O atributo do message erro dá um motivo.