Как получить доступ к службе назначения, которая находится за RabbitMQ, используя S4 Cloud SDK Connectivity - PullRequest
2 голосов
/ 29 мая 2019

Мы используем S4SDK для доступа к услуге назначения.он должен работать в многопользовательской среде.Обычно, если приложение является приложением внешнего интерфейса, контекст запроса запускается по запросу пользователя.Доступ к службе назначения с несколькими арендаторами возможен через approuter и XUAA.В нашем случае наше приложение находится за RabbitMQ, который не инициируется пользовательским запросом (например, вызовом REST API).В настоящее время мы используем класс com.sap.cloud.sdk.cloudplatform.connectivity.DestinationAccessor из облачного SDK.мы можем получить идентификатор арендатора из сообщения (RabbitMQ / AMQP).Проблема в том, что мы не можем найти способ внедрить идентификатор арендатора или клонировать токен JWT в DestinationAccessor из S4SDK.Мы ищем способ / руководство о том, как этого добиться.Мы ожидаем, что этот токен обмена / клона предоставляется SDK.

1 Ответ

1 голос
/ 29 мая 2019

Вы должны быть в состоянии использовать JwtBasedRequestContextExecutor для этой цели.

new JwtBasedRequestContextExecutor()
    .withJwt(encodedJwt)
    .execute(() -> {
        // code using the SAP Cloud SDK
    });
...