HTTPS через безопасный шлюз

Я пытаюсь сделать доступной одну из служб Watson на месте с помощью Secure Gateway. Он отлично работает с базовым HTTP-трафиком, но я сомневаюсь, как настроить HTTPS-трафик, например, службы Watson Conversation на конечной точке API " https://gateway.watsonplatform.net/conversation/api/v1"

Я настроил пункт назначения в службе: gateway.watsonplatform.net, порт назначения 443 и порт прослушивания клиента 6554 - протокол HTTPS. Подключение через Postman просто дает в моем клиенте следующее, хотя и используется стандартная базовая аутентификация с учетными данными из службы в Bluemix:

[2017-08-26 12:51:01.626] [INFO] (Client ID LilwbDOdR61_4Am) Connection #1 to gateway.watsonplatform.net:443 was closed

Я также пытался настроить протокол на TCP, но это дает тот же результат. Есть намеки?

С логическим уровнем TRACE я получаю: [2017-09-09 15:05:06.481] [DEBUG] (идентификатор клиента LilwbDOdR61_PlY) Отправка обратного целевого соединения на сервер [2017-09-09 15:05:06.833] [TRACE] (Идентификатор клиента LilwbDOdR61_PlY) Полученные данные соединения № 1: 361 байт [2017-09-09 15:05:07.285] [ОШИБКА] (Идентификатор клиента LilwbDOdR61_PlY) Соединение № 1 к целевому шлюзу.watsonplatform.net:443 имеет ошибку: Ошибка: запись после окончания [2017-09-09 15:05:07.289] [DEBUG] (идентификатор клиента LilwbDOdR61_PlY) Соединение № 1 с gateway.watsonplatform.net:443 завершено [2017-09-09 15:05:07.289] [INFO] (Идентификатор клиента LilwbDOdR61_PlY) Соединение № 1 с gateway.watsonplatform.net:443 было закрыто [2017-09-09 15:05:07.290] [DEBUG] (Идентификатор клиента LilwbDOdR61_PlY) Закрытие соединения и удаление из массива [2017-09-09 15:05:07.291] [DEBUG] (идентификатор клиента LilwbDOdR61_PlY) clearConnectionArray: 0

1 ответ

Томас, мне удалось установить соединение со службой разговоров, используя безопасный шлюз.

  1. Для протокола пользователя / приложения используйте TCP
  2. Для аутентификации на стороне назначения выберите "сторона назначения", нет необходимости загружать какой-либо сертификат.

Экран конфигурации будет выглядеть так:

И наконец, запрос должен быть сделан с использованием http, а не https, потому что вы оставили защищенное соединение для управления сервером защищенного шлюза.

Вы можете проверить запрос следующим образом:curl -X POST 'http://localhost:10001/conversation/api/v1/workspaces/<YOUR_WORKSPACE_ID>/message/?version=2017-05-26' -H 'authorization: Basic <ENCODED_CREDENTIALS>' -H 'cache-control: no-cache' -H 'content-type: application/json' -d '{"input": {"text": "hello"}}'

Другие вопросы по тегам