ConfidentialClientApplication Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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
- 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 seja |
| 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 |
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 |
| AcquireTokenSilent(IEnumerable<String>, IAccount) |
[API V3] Tenta adquirir um token de acesso para o |
| AcquireTokenSilent(IEnumerable<String>, String) |
[API V3] Tenta adquirir um token de acesso para que ele IAccountUsername corresponda ao determinado |
| 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 |
| 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 |
| 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 |
| 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. |