Compartilhar via


@azure/identity package

Classes

AggregateAuthenticationError

Fornece uma matriz que contém AuthenticationError instância para falhas de autenticação de credenciais em umChainedTokenCredential .

AuthenticationError

Fornece detalhes sobre uma falha na autenticação com o Azure Active Directory. O campo errorResponse contém mais detalhes sobre a falha específica.

AuthenticationRequiredError

Erro usado para impor a autenticação depois de tentar recuperar um token silenciosamente.

AuthorizationCodeCredential

Habilita a autenticação para a ID do Microsoft Entra usando um código de autorização obtido por meio do fluxo de código de autorização, descrito com mais detalhes na documentação da ID do Microsoft Entra:

https://learn.microsoft.com/entra/identity-platform/v2-oauth2-auth-code-flow

AzureCliCredential

Essa credencial usará as informações de logon do usuário conectado no momento por meio da ferramenta de linha de comando da CLI do Azure ('az'). Para fazer isso, ele lerá o token de acesso do usuário e expirará o tempo com o comando da CLI do Azure "az account get-access-token".

AzureDeveloperCliCredential

A CLI do Desenvolvedor do Azure é uma ferramenta de interface de linha de comando que permite que os desenvolvedores criem, gerenciem e implantem recursos no Azure. Ele é criado com base na CLI do Azure e fornece funcionalidade adicional específica para desenvolvedores do Azure. Ele permite que os usuários se autentiquem como um usuário e/ou uma entidade de serviço em microsoft entra ID. O AzureDeveloperCliCredential autentica em um ambiente de desenvolvimento e adquire um token em nome do usuário conectado ou da entidade de serviço na CLI do Desenvolvedor do Azure. Ele atua como a CLI do Desenvolvedor do Azure conectada ao usuário ou entidade de serviço e executa um comando da CLI do Azure abaixo para autenticar o aplicativo na ID do Microsoft Entra.

Configurar a AzureDeveloperCliCredential

Para usar essa credencial, o desenvolvedor precisa se autenticar localmente na CLI do Desenvolvedor do Azure usando um dos comandos abaixo:

  1. Execute o "logon de autenticação do azd" na CLI do Desenvolvedor do Azure para se autenticar interativamente como um usuário.
  2. Execute "azd auth login --client-id clientID --client-secret clientSecret --tenant-id tenantID" para autenticar como uma entidade de serviço.

Talvez seja necessário repetir esse processo após um determinado período de tempo, dependendo da validade do token de atualização em sua organização. Em geral, o período de validade do token de atualização é de algumas semanas a alguns meses. O AzureDeveloperCliCredential solicitará que você entre novamente.

AzurePipelinesCredential

Essa credencial foi projetada para ser usada no Azure Pipelines com conexões de serviço como uma configuração para federação de identidade de carga de trabalho.

AzurePowerShellCredential

Essa credencial usará as informações do usuário conectado no momento do módulo do Azure PowerShell. Para fazer isso, ele lerá o token de acesso do usuário e expirará a hora com o comando do Azure PowerShell Get-AzAccessToken -ResourceUrl {ResourceScope}

ChainedTokenCredential

Permite que várias implementações de TokenCredential sejam testadas em ordem até que um dos métodos getToken retorne um token de acesso.

ClientAssertionCredential

Autentica uma entidade de serviço com uma declaração JWT.

ClientCertificateCredential

Habilita a autenticação para a ID do Microsoft Entra usando um certificado codificado em PEM atribuído a um Registro de Aplicativo. Mais informações sobre como configurar a autenticação de certificado podem ser encontradas aqui:

https://learn.microsoft.com/en-us/azure/active-directory/develop/active-directory-certificate-credentials#register-your-certificate-with-azure-ad

ClientSecretCredential

Habilita a autenticação para a ID do Microsoft Entra usando um segredo do cliente que foi gerado para um Registro de Aplicativo. Mais informações sobre como configurar um segredo do cliente podem ser encontradas aqui:

https://learn.microsoft.com/entra/identity-platform/quickstart-configure-app-access-web-apis#add-credentials-to-your-web-application

CredentialUnavailableError

Isso significa que a credencial que foi tentada em uma credencial encadeada não estava disponível para ser usada como a credencial. Em vez de tratar isso como um erro que deve parar a cadeia, ela é capturada e a cadeia continua

DefaultAzureCredential

Fornece uma configuração de ChainedTokenCredential padrão que deve funcionar para a maioria dos aplicativos que usam o SDK do Azure.

DeviceCodeCredential

Habilita a autenticação para a ID do Microsoft Entra usando um código de dispositivo que o usuário pode inserir em https://microsoft.com/devicelogin.

EnvironmentCredential

Habilita a autenticação para a ID do Microsoft Entra usando um segredo ou certificado do cliente ou como um usuário com um nome de usuário e senha.

InteractiveBrowserCredential

Habilita a autenticação para a ID do Microsoft Entra dentro do navegador da Web usando o fluxo de logon interativo.

ManagedIdentityCredential

Tenta autenticação usando uma identidade gerenciada disponível no ambiente de implantação. Esse tipo de autenticação funciona em VMs do Azure, instâncias do Serviço de Aplicativo, aplicativos do Azure Functions, Serviços de Kubernetes do Azure, instâncias do Azure Service Fabric e dentro do Azure Cloud Shell.

Mais informações sobre como configurar identidades gerenciadas podem ser encontradas aqui: https://learn.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/overview

OnBehalfOfCredential

Habilita a autenticação para a ID do Microsoft Entra usando ade fluxo em nome do fluxo.

UsernamePasswordCredential

Habilita a autenticação para a ID do Microsoft Entra com o nome de usuário e a senha de um usuário. Essa credencial requer um alto grau de confiança, portanto, você só deve usá-la quando outros tipos de credencial mais seguros não puderem ser usados.

VisualStudioCodeCredential

Conecta-se ao Azure usando a credencial fornecida pela extensão do VSCode 'Conta do Azure'. Depois que o usuário fizer logon por meio da extensão, essa credencial poderá compartilhar o mesmo token de atualização que é armazenado em cache pela extensão.

É um problema conhecido que essa credencial não funciona com extensão da Conta do Azure versões mais recentes do que 0.9.11. Uma correção de longo prazo para esse problema está em andamento. Enquanto isso, considere a autenticação com AzureCliCredential .

WorkloadIdentityCredential

A autenticação de identidade de carga de trabalho é um recurso no Azure que permite que aplicativos em execução em máquinas virtuais (VMs) acessem outros recursos do Azure sem a necessidade de uma entidade de serviço ou identidade gerenciada. Com a autenticação de Identidade de Carga de Trabalho, os aplicativos se autenticam usando sua própria identidade, em vez de usar uma entidade de serviço compartilhada ou uma identidade gerenciada. No capô, a autenticação de Identidade de Carga de Trabalho usa o conceito de SACs (Credenciais de Conta de Serviço), que são criados automaticamente pelo Azure e armazenados com segurança na VM. Usando a autenticação de Identidade de Carga de Trabalho, você pode evitar a necessidade de gerenciar e girar entidades de serviço ou identidades gerenciadas para cada aplicativo em cada VM. Além disso, como os SACs são criados automaticamente e gerenciados pelo Azure, você não precisa se preocupar em armazenar e proteger credenciais confidenciais por conta própria. O WorkloadIdentityCredential dá suporte à autenticação de ID de Carga de Trabalho do Microsoft Entra no Kubernetes do Azure e adquire um token usando os SACs disponíveis no ambiente do Kubernetes do Azure. Consulte de ID de Carga de Trabalho do Microsoft Entra para obter mais informações.

Interfaces

AccessToken

Representa um token de acesso com um tempo de expiração.

AuthenticationRecord

O registro a ser usado para localizar os tokens armazenados em cache no cache.

AuthenticationRequiredErrorOptions

Parâmetros opcionais para o AuthenticationRequiredError

AuthorityValidationOptions

Fornece opções para configurar como a biblioteca de identidade faz a validação de autoridade durante solicitações de autenticação para a ID do Microsoft Entra.

AuthorizationCodeCredentialOptions

Opções para o AuthorizationCodeCredential

AzureCliCredentialOptions

Opções para o AzureCliCredential

AzureDeveloperCliCredentialOptions

Opções para o AzureDeveloperCliCredential

AzurePipelinesCredentialOptions

Parâmetros opcionais para a classe AzurePipelinesCredential.

AzurePowerShellCredentialOptions

Opções para o AzurePowerShellCredential

BrokerAuthOptions

Opções de configuração para InteractiveBrowserCredential para dar suporte à Autenticação do WAM Broker.

BrokerDisabledOptions

Parâmetros quando a autenticação do agente do WAM está desabilitada.

BrokerEnabledOptions

Parâmetros quando a autenticação do agente do WAM está habilitada.

BrowserCustomizationOptions

Opções de configuração compartilhada para personalização do navegador

ClientAssertionCredentialOptions

Opções para o ClientAssertionCredential

ClientCertificateCredentialOptions

Parâmetros opcionais para a classe ClientCertificateCredential.

ClientCertificatePEMCertificate

Opções de configuração necessárias para oClientCertificateCredential, com o conteúdo da cadeia de caracteres de um certificado PEM

ClientCertificatePEMCertificatePath

Opções de configuração necessárias para o ClientCertificateCredential, com o caminho para um certificado PEM.

ClientSecretCredentialOptions

Parâmetros opcionais para a classe ClientSecretCredential.

CredentialPersistenceOptions

Opções de configuração compartilhada para credenciais que dão suporte ao cache de token persistente.

DefaultAzureCredentialClientIdOptions

Fornece opções para configurar a classe DefaultAzureCredential. Essa variação dá suporte a managedIdentityClientId e não managedIdentityResourceId, já que apenas um dos dois tem suporte.

DefaultAzureCredentialOptions

Fornece opções para configurar a classe DefaultAzureCredential.

DefaultAzureCredentialResourceIdOptions

Fornece opções para configurar a classe DefaultAzureCredential. Essa variação dá suporte a managedIdentityResourceId e não managedIdentityClientId, já que apenas um dos dois tem suporte.

DeviceCodeCredentialOptions

Define opções para a classe InteractiveBrowserCredential para Node.js.

DeviceCodeInfo

Fornece o código do usuário e o URI de verificação em que o código deve ser inserido. Também fornece uma mensagem a ser exibida para o usuário que contém uma instrução com esses detalhes.

EnvironmentCredentialOptions

Habilita a autenticação para a ID do Microsoft Entra dependendo das variáveis de ambiente disponíveis. Define opções para a classe EnvironmentCredential.

ErrorResponse

Consulte a documentação oficial para obter mais detalhes:

https://learn.microsoft.com/en-us/azure/active-directory/develop/v1-protocols-oauth-code#error-response-1

OBSERVAÇÃO: esta documentação é para o suporte do OAuth v1, mas os mesmos detalhes de resposta de erro ainda se aplicam à v2.

GetBearerTokenProviderOptions

As opções para configurar o provedor de token.

GetTokenOptions

Define opções para TokenCredential.getToken.

InteractiveBrowserCredentialInBrowserOptions

Define as opções comuns para a classe InteractiveBrowserCredential.

InteractiveBrowserCredentialNodeOptions

Define as opções comuns para a classe InteractiveBrowserCredential.

InteractiveCredentialOptions

Opções comuns de construtor para as credenciais de identidade que exigem interação do usuário.

ManagedIdentityCredentialClientIdOptions

Opções para enviar no construtor ManagedIdentityCredential. Essa variação dá suporte a clientId e não resourceId, já que apenas um dos dois tem suporte.

ManagedIdentityCredentialResourceIdOptions

Opções para enviar no construtor ManagedIdentityCredential. Essa variação dá suporte a resourceId e não clientId, já que apenas um dos dois tem suporte.

MultiTenantTokenCredentialOptions

Opções para aplicativos multilocatários que permitem locatários permitidos adicionalmente.

OnBehalfOfCredentialAssertionOptions

Define os parâmetros para autenticar o OnBehalfOfCredential com uma asserção.

OnBehalfOfCredentialCertificateOptions

Define os parâmetros para autenticar o OnBehalfOfCredential com um certificado.

OnBehalfOfCredentialSecretOptions

Define os parâmetros para autenticar o OnBehalfOfCredential com um segredo.

TokenCachePersistenceOptions

Parâmetros que habilitam a persistência de cache de token nas credenciais de identidade.

TokenCredential

Representa uma credencial capaz de fornecer um token de autenticação.

TokenCredentialOptions

Fornece opções para configurar como a biblioteca de identidades faz solicitações de autenticação para a ID do Microsoft Entra.

UsernamePasswordCredentialOptions

Define opções para a classe UsernamePasswordCredential.

VisualStudioCodeCredentialOptions

Fornece opções para configurar a credencial do Visual Studio Code.

WorkloadIdentityCredentialOptions

Opções para o WorkloadIdentityCredential

Aliases de tipo

BrokerOptions

Parâmetros que habilitam a autenticação do agente WAM no InteractiveBrowserCredential.

BrowserLoginStyle

(Recurso somente navegador) O "estilo de logon" a ser usado no fluxo de autenticação:

  • O "redirecionamento" redireciona o usuário para a página de autenticação e, em seguida, redireciona-o de volta para a página depois que a autenticação for concluída.
  • O "pop-up" abre uma nova janela do navegador com o fluxo de redirecionamento iniciado. A janela do navegador existente do usuário não deixa a página atual
ClientCertificateCredentialPEMConfiguration

Opções de configuração necessárias para o ClientCertificateCredential, com o conteúdo da cadeia de caracteres de um certificado PEM ou o caminho para um certificado PEM.

DeviceCodePromptCallback

Define a assinatura de um retorno de chamada que será passado para DeviceCodeCredential com a finalidade de exibir detalhes de autenticação para o usuário.

IdentityPlugin

O tipo de um plug-in de Identidade do Azure, uma função que aceita um contexto de plug-in.

OnBehalfOfCredentialOptions

Parâmetros opcionais para a classe OnBehalfOfCredential.

Enumerações

AzureAuthorityHosts

Uma lista de hosts conhecidos da autoridade do Azure

Funções

deserializeAuthenticationRecord(string)

Desserializa um registro de autenticação serializado anteriormente de uma cadeia de caracteres em um objeto.

A cadeia de caracteres de entrada deve conter as seguintes propriedades:

  • "autoridade"
  • "homeAccountId"
  • "clientId"
  • "tenantId"
  • "nome de usuário"
  • "version"

Se a versão que recebermos não for suportada, um erro será gerado.

No momento, a única versão disponível é: "1.0", que é sempre definida quando o registro de autenticação é serializado.

getBearerTokenProvider(TokenCredential, string | string[], GetBearerTokenProviderOptions)

Retorna um retorno de chamada que fornece um token de portador. Por exemplo, o token de portador pode ser usado para autenticar uma solicitação da seguinte maneira:

import { DefaultAzureCredential } from "@azure/identity";

const credential = new DefaultAzureCredential();
const scope = "https://cognitiveservices.azure.com/.default";
const getAccessToken = getBearerTokenProvider(credential, scope);
const token = await getAccessToken();

// usage
const request = createPipelineRequest({ url: "https://example.com" });
request.headers.set("Authorization", `Bearer ${token}`);
getDefaultAzureCredential()

Retorna uma nova instância doDefaultAzureCredential .

serializeAuthenticationRecord(AuthenticationRecord)

Serializa um AuthenticationRecord em uma cadeia de caracteres.

A saída de um registro de autenticação serializado conterá as seguintes propriedades:

  • "autoridade"
  • "homeAccountId"
  • "clientId"
  • "tenantId"
  • "nome de usuário"
  • "version"

Para converter posteriormente essa cadeia de caracteres em um AuthenticationRecordserializado, use a função exportada deserializeAuthenticationRecord().

useIdentityPlugin(IdentityPlugin)

Estenda a Identidade do Azure com funcionalidade adicional. Passe um plug-in de um pacote de plug-in, como:

  • @azure/identity-cache-persistence: fornece cache de token persistente
  • @azure/identity-vscode: fornece as dependências de VisualStudioCodeCredential e habilita

Exemplo:

import { cachePersistencePlugin } from "@azure/identity-cache-persistence";

import { useIdentityPlugin, DefaultAzureCredential } from "@azure/identity";
useIdentityPlugin(cachePersistencePlugin);

// The plugin has the capability to extend `DefaultAzureCredential` and to
// add middleware to the underlying credentials, such as persistence.
const credential = new DefaultAzureCredential({
  tokenCachePersistenceOptions: {
    enabled: true
  }
});

Detalhes da função

deserializeAuthenticationRecord(string)

Desserializa um registro de autenticação serializado anteriormente de uma cadeia de caracteres em um objeto.

A cadeia de caracteres de entrada deve conter as seguintes propriedades:

  • "autoridade"
  • "homeAccountId"
  • "clientId"
  • "tenantId"
  • "nome de usuário"
  • "version"

Se a versão que recebermos não for suportada, um erro será gerado.

No momento, a única versão disponível é: "1.0", que é sempre definida quando o registro de autenticação é serializado.

function deserializeAuthenticationRecord(serializedRecord: string): AuthenticationRecord

Parâmetros

serializedRecord

string

Registro de autenticação serializado anteriormente em cadeia de caracteres.

Retornos

AuthenticationRecord.

getBearerTokenProvider(TokenCredential, string | string[], GetBearerTokenProviderOptions)

Retorna um retorno de chamada que fornece um token de portador. Por exemplo, o token de portador pode ser usado para autenticar uma solicitação da seguinte maneira:

import { DefaultAzureCredential } from "@azure/identity";

const credential = new DefaultAzureCredential();
const scope = "https://cognitiveservices.azure.com/.default";
const getAccessToken = getBearerTokenProvider(credential, scope);
const token = await getAccessToken();

// usage
const request = createPipelineRequest({ url: "https://example.com" });
request.headers.set("Authorization", `Bearer ${token}`);
function getBearerTokenProvider(credential: TokenCredential, scopes: string | string[], options?: GetBearerTokenProviderOptions): () => Promise<string>

Parâmetros

credential
TokenCredential

A credencial usada para autenticar a solicitação.

scopes

string | string[]

Os escopos necessários para o token de portador.

options
GetBearerTokenProviderOptions

Opções para configurar o provedor de token.

Retornos

() => Promise<string>

um retorno de chamada que fornece um token de portador.

getDefaultAzureCredential()

Retorna uma nova instância doDefaultAzureCredential .

function getDefaultAzureCredential(): TokenCredential

Retornos

serializeAuthenticationRecord(AuthenticationRecord)

Serializa um AuthenticationRecord em uma cadeia de caracteres.

A saída de um registro de autenticação serializado conterá as seguintes propriedades:

  • "autoridade"
  • "homeAccountId"
  • "clientId"
  • "tenantId"
  • "nome de usuário"
  • "version"

Para converter posteriormente essa cadeia de caracteres em um AuthenticationRecordserializado, use a função exportada deserializeAuthenticationRecord().

function serializeAuthenticationRecord(record: AuthenticationRecord): string

Parâmetros

Retornos

string

useIdentityPlugin(IdentityPlugin)

Estenda a Identidade do Azure com funcionalidade adicional. Passe um plug-in de um pacote de plug-in, como:

  • @azure/identity-cache-persistence: fornece cache de token persistente
  • @azure/identity-vscode: fornece as dependências de VisualStudioCodeCredential e habilita

Exemplo:

import { cachePersistencePlugin } from "@azure/identity-cache-persistence";

import { useIdentityPlugin, DefaultAzureCredential } from "@azure/identity";
useIdentityPlugin(cachePersistencePlugin);

// The plugin has the capability to extend `DefaultAzureCredential` and to
// add middleware to the underlying credentials, such as persistence.
const credential = new DefaultAzureCredential({
  tokenCachePersistenceOptions: {
    enabled: true
  }
});
function useIdentityPlugin(plugin: IdentityPlugin)

Parâmetros

plugin
IdentityPlugin

o plug-in a ser registrado