ConfidentialClientApplication Classe

Implementações

public class ConfidentialClientApplication
extends AbstractClientApplicationBase
implements IConfidentialClientApplication

Classe a ser usada para adquirir tokens para aplicativos cliente confidenciais (Aplicativos Web, APIs Web e aplicativos daemon). Para obter detalhes, consulte IConfidentialClientApplication

Condicionalmente thread-safe

Resumo do campo

Modificador e tipo Campo e descrição
java.util.function.Function<AppTokenProviderParameters,java.util.concurrent.CompletableFuture<TokenProviderResult>> appTokenProvider

O Provedor de Tokende Aplicativocria uma Credencial a partir de uma função que fornece tokens de acesso.

Resumo do método

Modificador e tipo Método e descrição
java.util.concurrent.CompletableFuture<IAuthenticationResult> acquireToken(ClientCredentialParameters parameters)

Adquire tokens da autoridade configurada no aplicativo para o próprio cliente confidencial.

java.util.concurrent.CompletableFuture<IAuthenticationResult> acquireToken(OnBehalfOfParameters parameters)

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 deBehalf-Of.

static Builder builder(String clientId, IClientCredential clientCredential)

Cria uma instância do Construtor de Aplicativo ClienteConfidencial

protected com.nimbusds.oauth2.sdk.auth.ClientAuthentication clientAuthentication()
protected com.nimbusds.oauth2.sdk.auth.ClientAuthentication createClientAuthFromClientAssertion(ClientAssertion clientAssertion)
boolean sendX5c()

Métodos herdados de AbstractApplicationBase

Métodos herdados de AbstractClientApplicationBase

Métodos herdados de java.lang.Object

java.lang.Object.clone java.lang.Object.equals java.lang.Object.finalize java.lang.Object.getClass java.lang.Object.hashCode java.lang.Object.notify java.lang.Object.notifyAll java.lang.Object.toString java.lang.Object.wait java.lang.Object.wait java.lang.Object.wait

Detalhes do campo

appTokenProvider

public Function<AppTokenProviderParameters,CompletableFuture<TokenProviderResult>> appTokenProvider

AppTokenProvider cria uma Credencial a partir de uma função que fornece tokens de acesso. A função deve ser segura de simultaneidade. Isso se destina apenas a permitir que o SDK do Azure armazene tokens MSI em cache. Não é útil para aplicativos em geral porque o provedor de token deve implementar toda a lógica de autenticação.

Detalhes do método

acquireToken

public CompletableFuture<IAuthenticationResult> acquireToken(ClientCredentialParameters parameters)

Adquire tokens da autoridade configurada no aplicativo para o próprio cliente confidencial. Por padrão, ele tentará obter tokens do cache de token. Se nenhum token for encontrado, ele retornará à aquisição por meio de credenciais de cliente do STS

Parâmetros:

parameters

acquireToken

public CompletableFuture<IAuthenticationResult> acquireToken(OnBehalfOfParameters parameters)

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 deBehalf-Of. Por padrão, ele tentará obter tokens do cache de token. Esse aplicativo cliente confidencial foi chamado com um token acces fornecido no UserAssertion campo de OnBehalfOfParameters.

Ao serializar/desserializar o cache de token na memória para o armazenamento permanente, deve haver um cache de token por token de acesso de entrada, em que o hash do token de acesso de entrada pode ser usado como a chave de cache de token. Os tokens de acesso geralmente são válidos apenas por um período de 1 hora e um novo token de acesso significa UserAssertion que haverá um novo cache de token e uma nova chave de cache de token. Para evitar que o armazenamento permanente seja preenchido com caches de token expirados, uma política de remoção deve ser definida. Por exemplo, um cache de token com mais de algumas horas de idade pode ser considerado expirado e, portanto, removido do cache de token serializado.

Parâmetros:

parameters

builder

public static ConfidentialClientApplication.Builder builder(String clientId, IClientCredential clientCredential)

Cria uma instância do Construtor de ConfidentialClientApplication

Parâmetros:

clientId - ID do cliente (ID do aplicativo) do aplicativo, conforme registrado no portal de registro do aplicativo (portal.azure.com)
clientCredential - A credencial do cliente a ser usada para aquisição de token.

Retornos:

instância do Construtor de ConfidentialClientApplication

clientAuthentication

protected ClientAuthentication clientAuthentication()

Substituições:

ConfidentialClientApplication.clientAuthentication()

createClientAuthFromClientAssertion

protected ClientAuthentication createClientAuthFromClientAssertion(ClientAssertion clientAssertion)

Parâmetros:

clientAssertion

sendX5c

public boolean sendX5c()

Aplica-se a