1 Вопрос: Как внешняя аутентификация обрабатывается в WSO2 APIM для внешних / сторонних API

вопрос создан в Thu, May 2, 2019 12:00 AM

Я использую WSO2 APIM (2.5.0) и IS (5.6.0). Они оба интегрированы и работают хорошо.

Теперь, если я использую сторонний API в управлении API и использую маркер oauth, я могу получить к нему доступ. Но вопрос в том, как обрабатывать любые внешние или сторонние API, которые имеют собственную аутентификацию.

Итак, используя токен WSO2 APIM, я могу получить доступ к встроенному API для использования, но мы не сможем получить ответ, так как встроенный API имеет собственную аутентификацию (базовую или oauth).

Как этого добиться в APIM.

Любая помощь или руководство будут полезны.

Спасибо

    
1
1 ответ                              1                         

WSO2 APIM из коробки поддерживает базовую аутентификацию и дайджест auth в качестве внутренних схем безопасности.

Кроме того, с помощью пользовательских последовательностей вы можете передать любой токен безопасности бэкэнду.

Для бэкэндов с OAuth у вас есть 2 варианта.

(1) Также отправьте токен бэкэнда в запросе API (входящий в APIM) и затем перенаправьте его бэкенду.

(2) Используйте пользовательскую последовательность, чтобы вызвать API внешнего токена, взять новый токен для бэкэнда и затем перенаправить его на бэкэнд.

<call blocking="true">
    <endpoint>
         <http uri-template="https://external_idp.com/token" method="GET" />
    </endpoint>
</call>
<property name="BackendAuthHeader" scope="transport" expression="json-eval($.tokenresponse.token)"/>

Я рекомендую (1) из-за его простоты.

Изменить. Подробнее о параметре (1) .

Если ваш бэкэнд ожидает заголовок, отличный от заголовка «Авторизация», вы можете просто отправить этот заголовок вместе с вашими запросами, и он будет отправлен бэкенду.

Однако, если ваш бэкэнд также ожидает заголовок «Авторизация», он становится конфликтом, так как вы не можете использовать этот же заголовок для передачи 2 токенов (1 для GW и 1 для бэкенда). Чтобы решить эту проблему, вы можете использовать пользовательский заголовок авторизации для шлюза особенность.

    
0
2019-05-16 04: 56: 10Z
  1. Спасибо за ваш ответ. Я работал над тем же и мог применить вариант1. Но также у меня есть требование, где step2 подходит более подходящим образом. Можете ли вы поделиться некоторыми примерами или документацией, которые могут помочь мне достичь этого
    2019-05-14 21: 32: 11Z
  2. Все эти ссылки [ docs.wso2.com/display/AM210/… приводит к тому, что в самом запросе должно быть два заголовка (1 для APIGW и 2 для бэкенда) , Вместо этого я хочу, чтобы у запроса был 1 заголовок (для APIGW), и используя последовательность, я могу вызвать внутреннюю точку токена и получить токен и поместить в заголовок. Надеюсь, что мне ясно, чего я хочу именно достичь. Пожалуйста, дайте мне знать, если у вас есть что-нибудь полезное для меня, или дайте мне знать, если вопрос не ясен.
    2019-05-14 21: 35: 47Z
  3. Добавлен пример для вызова и API внешнего токена, а также чтение и установка токена бэкенда.
    2019-05-16 04: 56: 39Z
  4. Спасибо за обмен.
    2019-05-16 08: 38: 23Z
источник размещен Вот