ConfidentialClientApplication Класс

Реализации

public class ConfidentialClientApplication
extends AbstractClientApplicationBase
implements IConfidentialClientApplication

Класс, используемый для получения маркеров для конфиденциальных клиентских приложений (веб-приложения, веб-API и приложений управляющей программы). Дополнительные сведения см. в разделе IConfidentialClientApplication

Условный потокобезопасный

Сводка по полю

Модификатор и тип Поле и описание
java.util.function.Function<AppTokenProviderParameters,java.util.concurrent.CompletableFuture<TokenProviderResult>> appTokenProvider

Поставщик маркеровприложенийсоздает учетные данные из функции, предоставляющей маркеры доступа.

Сводка по методу

Модификатор и тип Метод и описание
java.util.concurrent.CompletableFuture<IAuthenticationResult> acquireToken(ClientCredentialParameters parameters)

Получает маркеры от центра, настроенного в приложении, для самого конфиденциального клиента.

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

Получает маркер доступа для этого приложения (обычно веб-API) от центра, настроенного в приложении, для доступа к другому защищенному веб-API от имени пользователя с помощью потока on-Behalf-Of.

static Builder builder(String clientId, IClientCredential clientCredential)

Создает экземпляр построителя конфиденциальногоклиентскогоприложения

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

Методы, унаследованные от AbstractApplicationBase

Методы, унаследованные от AbstractClientApplicationBase

Методы, унаследованные от 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

Сведения о полях

appTokenProvider

public Function<AppTokenProviderParameters,CompletableFuture<TokenProviderResult>> appTokenProvider

AppTokenProvider создает учетные данные из функции, предоставляющей маркеры доступа. Функция должна быть безопасной. Это предназначено только для того, чтобы разрешить Azure SDK кэшировать маркеры MSI. Это не полезно для приложений в целом, так как поставщик токенов должен реализовать всю логику проверки подлинности.

Сведения о методе

acquireToken

public CompletableFuture<IAuthenticationResult> acquireToken(ClientCredentialParameters parameters)

Получает маркеры от центра, настроенного в приложении, для самого конфиденциального клиента. По умолчанию он попытается получить маркеры из кэша маркеров. Если маркеры не найдены, он возвращается к получению их с помощью учетных данных клиента из stS

Параметры:

parameters

acquireToken

public CompletableFuture<IAuthenticationResult> acquireToken(OnBehalfOfParameters parameters)

Получает маркер доступа для этого приложения (обычно веб-API) от центра, настроенного в приложении, для доступа к другому защищенному веб-API от имени пользователя с помощью потока on-Behalf-Of. По умолчанию он попытается получить маркеры из кэша маркеров. Это конфиденциальное клиентское приложение было вызвано с маркером acces, который предоставляется в UserAssertion поле OnBehalfOfParameters.

При сериализации и десериализации кэша маркеров в памяти в постоянное хранилище должен быть кэш маркеров на входящие маркеры доступа, где хэш входящего маркера доступа можно использовать в качестве ключа кэша маркера. Маркеры доступа обычно действительны только в течение 1 часа времени, и новый маркер доступа в UserAssertion том случае, если будет новый кэш маркеров и новый ключ кэша маркеров. Чтобы избежать заполнения постоянного хранилища кэшами маркеров с истекшим сроком действия, необходимо задать политику вытеснения. Например, кэш токенов, который превышает пару часов, можно считать истекшим сроком действия и поэтому вытеснен из сериализованного кэша маркеров.

Параметры:

parameters

builder

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

Создает экземпляр построителя конфиденциальных приложенийClientApplication

Параметры:

clientId - Идентификатор клиента (идентификатор приложения) приложения, зарегистрированного на портале регистрации приложений (portal.azure.com)
clientCredential - Учетные данные клиента, используемые для получения маркера.

Возвращаемое значение:

экземпляр построителя конфиденциальных приложенийClientApplication

clientAuthentication

protected ClientAuthentication clientAuthentication()

Переопределения:

ConfidentialClientApplication.clientAuthentication()

createClientAuthFromClientAssertion

protected ClientAuthentication createClientAuthFromClientAssertion(ClientAssertion clientAssertion)

Параметры:

clientAssertion

sendX5c

public boolean sendX5c()

Применяется к