2017-08-26 102 views
1

我試圖通過使用安全網關基本上使內部提供的一個Watson服務。它對基本的HTTP流量工作正常,但我不確定如何在API端點上配置例如Watson對話服務的HTTPS流量「https://gateway.watsonplatform.net/conversation/api/v1通過安全網關的HTTPS

我已將服務中的目標配置爲: 網關。 watsonplatform.net,目標端口443和客戶端偵聽端口6554 - 協議HTTPS。 通過郵差連接簡單地產生在我的客戶,以下雖然使用標準的基本身份驗證從服務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年9月9日15:05:06.481] [DEBUG](客戶端ID LilwbDOdR61_PlY)發送的反向目的地連接到服務器 [2017年9月9日15時05分: 06.833] [TRACE](客戶端ID LilwbDOdR61_PlY)連接#1收到數據:361字節 [2017-09-09 15:05:07.285] [錯誤](客戶端ID LilwbDOdR61_PlY)連接#1到目標gateway.watsonplatform.net: 443錯誤:錯誤:結束後寫入 [2017-09-09 15:05:07.289] [DEBUG](Client ID LilwbDOdR61_PlY)Connection#1 to gateway.watsonplatform.net:443已經結束 [2017-09-09 15:05:07.289] [信息](客戶端ID LilwbDOdR61_PlY)連接#1到gateway.watsonplatform.net:443已關閉 [2017-09-09 15:05:07.290] [DEBUG](客戶端ID LilwbDOdR61_PlY)合閘連接和從陣列 去除[2017年9月9日15:05:07.291] [DEBUG](客戶端ID LilwbDOdR61_PlY)clearConnectionArray:0

+0

你可以增加loglevel改爲'TRACE'並添加日誌連接嘗試?如果您使用HTTPS發生錯誤,我認爲它與請求應用程序和SG客戶端之間的連接上的證書錯誤有關。 SG客戶端默認擁有自簽名證書,可能需要添加到您的請求應用程序的CA. –

+0

添加TRACE級別 – ThomasBPG

+0

跟蹤日誌顯示在套接字關閉後嘗試寫入的連接上傳遞的數據的時序問題('write write end')。此客戶端版本是1.8.0fp2還是早期版本? –

回答

2

托馬斯,我已經成功使用做出通話服務的連接安全網關。

  1. 對於用戶/應用程序協議,使用TCP
  2. 對於目的地側的認證中,選擇「目的地側」,沒有必要上傳任何證書。

配置屏幕看起來就像這樣: enter image description here

最後,要求必須使用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"}}'

+0

雖然我的目的地是在本地,但我的答案也是如此。 –