Idioma

ConfidentialClientApplication Classe

Definição

Classe a ser usada para aplicativos cliente confidenciais (aplicativos Web, APIs Web e aplicativos daemon).

public sealed class ConfidentialClientApplication : Microsoft.Identity.Client.ClientApplicationBase, Microsoft.Identity.Client.IByRefreshToken, Microsoft.Identity.Client.IByUsernameAndPassword, Microsoft.Identity.Client.IConfidentialClientApplication, Microsoft.Identity.Client.ILongRunningWebApi
type ConfidentialClientApplication = class
    inherit ClientApplicationBase
    interface IConfidentialClientApplication
    interface IClientApplicationBase
    interface IApplicationBase
    interface IByUserFederatedIdentityCredential
    interface IByRefreshToken
    interface ILongRunningWebApi
    interface IByUsernameAndPassword
Public NotInheritable Class ConfidentialClientApplication
Inherits ClientApplicationBase
Implements IByRefreshToken, IByUsernameAndPassword, IConfidentialClientApplication, ILongRunningWebApi
Herança
ConfidentialClientApplication
Implementações

Comentários

Aplicativos cliente confidenciais normalmente são aplicativos executados em servidores (aplicativos Web, API Web ou até mesmo aplicativos de serviço/daemon). Eles são considerados difíceis de acessar e, portanto, capazes de manter um segredo do aplicativo (manter segredos de tempo de configuração, pois esses valores seriam difíceis de extrair para os usuários finais). Um aplicativo Web é o cliente confidencial mais comum. A clientId é exposta por meio do navegador da Web, mas o segredo é passado apenas no canal back e nunca exposto diretamente. Para obter detalhes, consulte https://aka.ms/msal-net-client-applications

Campos

Nome Description
AttemptRegionDiscovery

Instrui a MSAL a tentar descobrir automaticamente a região Azure.

Propriedades

Nome Description
AppConfig

Detalhes sobre a configuração do ClientApplication para fins de depuração.

(Herdado de ClientApplicationBase)
AppTokenCache

Cache de token de aplicativo. Esse caso contém tokens de acesso para o aplicativo. Ele é mantido e atualizado silenciosamente, se necessário ao chamar AcquireTokenForClient(IEnumerable<String>)

Authority

Obtém a URL da autoridade ou o STS (serviço de token de segurança) do qual MSAL.NET adquirirá tokens de segurança O valor retornado dessa propriedade é o valor fornecido pelo desenvolvedor no construtor do aplicativo ou, caso contrário, o valor do Microsoft.Identity.Client.ApplicationBase.DefaultAuthority membro estático (ou sejahttps://login.microsoftonline.com/common/)

(Herdado de ClientApplicationBase)
Certificate

O certificado usado para criar isso ConfidentialClientApplication, se houver.

UserTokenCache

Cache de token de usuário. Ele contém tokens de acesso, tokens de ID e tokens de atualização para contas. Ele é usado e atualizado silenciosamente se necessário ao chamar AcquireTokenSilent(IEnumerable<String>, IAccount) ou uma das substituições de AcquireTokenSilent(IEnumerable<String>, IAccount). Ele é atualizado por cada método AcquireTokenXXX, com exceção do AcquireTokenForClient qual usa apenas o cache do aplicativo (consulte IConfidentialClientApplication).

(Herdado de ClientApplicationBase)

Métodos

Nome Description
AcquireTokenByAuthorizationCode(IEnumerable<String>, String)

Adquire um token de segurança da autoridade configurada no aplicativo usando o código de autorização recebido anteriormente do STS. Ele usa o fluxo de código de autorização do OAuth 2.0 (Consulte https://aka.ms/msal-net-authorization-code). Geralmente, ele é usado em aplicativos Web (por exemplo, ASP.NET/ASP.NET Core aplicativos Web) que inserem usuários e podem solicitar um código de autorização. Esse método não pesquisa o cache de token, mas armazena o resultado nele, portanto, ele pode ser pesquisado usando outros métodos, como AcquireTokenSilent(IEnumerable<String>, IAccount).

AcquireTokenForClient(IEnumerable<String>)

Adquire um token da autoridade configurada no aplicativo, para o próprio cliente confidencial (em nome de nenhum usuário) usando o fluxo de credenciais do cliente. Consulte https://aka.ms/msal-net-client-credentials.

AcquireTokenInLongRunningProcess(IEnumerable<String>, String)

Recupera um token de acesso do cache usando a chave de cache fornecida que pode ser usada para acessar outra API Web protegida a downstream em nome de um usuário usando o fluxo OAuth 2.0 On-Behalf-Of. Consulte o OBO de execução longa em MSAL.NET. Use <seealso cref="M:Microsoft. Identity.Client.Extensibility.ConfidentialClientApplicationExtensions.StopLongRunningProcessInWebApiAsync(Microsoft. Identity.Client.ILongRunningWebApi, System.String,System.Threading.CancellationToken)"></seealso> para interromper o processo de execução longa e remover os tokens associados do cache.

AcquireTokenOnBehalfOf(IEnumerable<String>, UserAssertion)

Adquire um token de acesso para este aplicativo (geralmente uma API Web) da autoridade configurada no aplicativo, a fim de acessar outra API Web protegida a downstream em nome de um usuário usando o fluxo OAuth 2.0 On-Behalf-Of. Consulte https://aka.ms/msal-net-on-behalf-of. Esse aplicativo cliente confidencial foi chamado com um token que será fornecido no userAssertion parâmetro.

AcquireTokenSilent(IEnumerable<String>, IAccount)

[API V3] Tenta adquirir um token de acesso para o account cache do token de usuário. Veja https://aka.ms/msal-net-acquiretokensilent para mais detalhes

(Herdado de ClientApplicationBase)
AcquireTokenSilent(IEnumerable<String>, String)

[API V3] Tenta adquirir um token de acesso para que ele IAccountUsername corresponda ao determinado loginHintno cache de token de usuário. Veja https://aka.ms/msal-net-acquiretokensilent para mais detalhes

(Herdado de ClientApplicationBase)
GetAccountAsync(String, CancellationToken)

Obtenha o IAccount identificador pelo identificador entre as contas disponíveis no cache de token.

(Herdado de ClientApplicationBase)
GetAccountAsync(String)

Obtenha o IAccount identificador pelo identificador entre as contas disponíveis no cache de token.

(Herdado de ClientApplicationBase)
GetAccountsAsync()

Retorna todas as contas disponíveis no cache de token de usuário para o aplicativo.

(Herdado de ClientApplicationBase)
GetAccountsAsync(CancellationToken)

Retorna todas as contas disponíveis no cache de token de usuário para o aplicativo.

(Herdado de ClientApplicationBase)
GetAccountsAsync(String, CancellationToken)

Obtenha a IAccount coleção por seu identificador entre as contas disponíveis no cache de token, com base no fluxo do usuário. Isso é para Azure cenários do AD B2C.

(Herdado de ClientApplicationBase)
GetAccountsAsync(String)

Obtenha a IAccount coleção por seu identificador entre as contas disponíveis no cache de token, com base no fluxo do usuário. Isso é para Azure cenários do AD B2C.

(Herdado de ClientApplicationBase)
GetAuthorizationRequestUrl(IEnumerable<String>)

Calcula a URL da solicitação de autorização permitindo que o usuário entre e consenta que o aplicativo acesse escopos específicos no nome do usuário. A URL tem como destino o ponto de extremidade /authorize da autoridade configurada no aplicativo. Essa substituição permite que você especifique uma dica de logon e um parâmetro de consulta extra.

InitiateLongRunningProcessInWebApi(IEnumerable<String>, String, String)

Adquire um token de acesso para essa API Web da autoridade configurada no aplicativo, a fim de acessar outra API Web protegida a downstream em nome de um usuário usando o fluxo deBehalf-Of OAuth 2.0 On-Behalf-Of. Consulte o OBO de execução longa em MSAL.NET. Passe um token de acesso (não um token de ID) que foi usado para chamar esse aplicativo cliente confidencial no userToken parâmetro. Use <seealso cref="M:Microsoft. Identity.Client.Extensibility.ConfidentialClientApplicationExtensions.StopLongRunningProcessInWebApiAsync(Microsoft. Identity.Client.ILongRunningWebApi, System.String,System.Threading.CancellationToken)"></seealso> para interromper o processo de execução longa e remover os tokens associados do cache.

RemoveAsync(IAccount, CancellationToken)

Remove todos os tokens no cache da conta especificada.

(Herdado de ClientApplicationBase)
RemoveAsync(IAccount)

Remove todos os tokens no cache da conta especificada.

(Herdado de ClientApplicationBase)
StopLongRunningProcessInWebApiAsync(String, CancellationToken)

Interrompe uma sessão em execução prolongada em andamento em nome da sessão removendo os tokens associados à chave de cache fornecida. Consulte o OBO de execução longa em MSAL.NET.

Implantações explícitas de interface

Nome Description
IByRefreshToken.AcquireTokenByRefreshToken(IEnumerable<String>, String)

Classe a ser usada para aplicativos cliente confidenciais (aplicativos Web, APIs Web e aplicativos daemon).

IByUserFederatedIdentityCredential.AcquireTokenByUserFederatedIdentityCredential(IEnumerable<String>, Guid, String)

Adquire um token em nome de um usuário usando uma declaração de credencial de identidade federada. Isso usa o user_fic tipo de concessão. O usuário é identificado pela ID do Objeto (OID).

IByUserFederatedIdentityCredential.AcquireTokenByUserFederatedIdentityCredential(IEnumerable<String>, String, String)

Adquire um token em nome de um usuário usando uma declaração de credencial de identidade federada. Isso usa o user_fic tipo de concessão. O usuário é identificado pelo UPN.

IByUsernameAndPassword.AcquireTokenByUsernamePassword(IEnumerable<String>, String, String)

Adquire um token sem interação do usuário usando autenticação de nome de usuário e senha. Esse método não procura no cache de token, mas armazena o resultado nele. Antes de chamar esse método, use outros métodos, como AcquireTokenSilent(IEnumerable<String>, IAccount) verificar o cache de token.

Métodos de Extensão

Nome Description
GetCertificate(IConfidentialClientApplication)

Retorna o certificado usado para criar isso ConfidentialClientApplication, se houver.

StopLongRunningProcessInWebApiAsync(ILongRunningWebApi, String, CancellationToken)

Interrompe uma sessão em execução prolongada em andamento em nome da sessão removendo os tokens associados à chave de cache fornecida. Consulte o OBO de execução longa em MSAL.NET.

Aplica-se a