簡體   English   中英

WSO2 API 密鑰管理器

[英]WSO2 API Key Manager

我正在配置我們的 API 管理器,但遇到了通過 OAuth 進行身份驗證的問題,這似乎是 API 密鑰管理器的問題。 我還沒有深入研究它,但這是否與 API 管理器一起提供(正如我所假設的)還是單獨安裝?

我在亞馬遜托管機器上使用 wso2 api 管理器時遇到了同樣的問題,結果發現 Thrift 無法正常工作,因為多播和廣播存在一些問題。

為了讓它工作,我所做的是從 ThriftClient 切換到 WSClient。 如果您收到大量請求,那么 Thrift 是 wso2 推薦的解決方案,但在任何“正常”情況下,您在 thrift 和 WS 之間不會有任何區別。

切換方法如下:

  1. 關閉 API 管理器
  2. 打開<api manager install dir>\\repository\\conf\\api-manager.xml
  3. 查找 ThriftClient
  4. 將此更改為 <KeyValidatorClientType>WSClient</KeyValidatorClientType>
  5. 啟動 API 管理器

啟動時您可能會收到一些警告,但請先嘗試一下,然后再得出它不起作用的結論。

希望能幫助到你!

您可以在分布式設置中使用 APIM 管理器產品作為密鑰管理器、網關、商店、發布者......但所有功能都在一個發行版中......查看 文檔以獲取更多指南

我面臨着同樣的問題。 當我創建自己的 jks 以便在沒有自簽名證書的情況下使用 SSL 時,一切都開始了。 我成功創建了 jks 並在 carbon 文件中對其進行了更改。 當我啟動服務器時,一切似乎都很好; 但是當我使用 SOAPUI 來測試 API 調用時,我得到了這個(在 api 管理器的日志中):

APIAuthenticationHandler API authentication failure due to Unclassified Authentication Failure

我開始通過在 log4j.properties 文件中啟用調試級別來挖掘問題所在,然后再次嘗試使用 SOAPUI 進行測試,我得到:

APISecurityException: Could not connect to <my api ip address> on port 10397

然后,我閱讀了 OneMuppet 的評論並檢查了該文件,我發現 Thrift 配置有一個主機選項,所以我取消了它的注釋:

<KeyValidatorClientType>ThriftClient</KeyValidatorClientType>
<ThriftClientPort>10397</ThriftClientPort>
<ThriftClientConnectionTimeOut>10000</ThriftClientConnectionTimeOut>
<ThriftServerPort>10397</ThriftServerPort>

This Line -->    <ThriftServerHost>localhost</ThriftServerHost>

<EnableThriftServer>true</EnableThriftServer>

保存,重新啟動服務器,一切開始正常工作。

安裝后,我遇到了以下相同的問題,當我嘗試調用 api 服務時,它拋出以下錯誤:900900 訪問后端服務進行 API 密鑰驗證時出現未分類的身份驗證失敗錯誤

經過一些隨機檢查后,我在 /repository/conf/axis2 中看到了 axis2.xml 文件,它引用了不同的 ip。 我將這些 ip 更改為我的本地 ip 並重新啟動。 現在問題已解決。

我面臨着同樣的問題。 當我嘗試按照此處給出的步驟在另一台機器上將 API Manager 設置為 API 網關時,

https://docs.wso2.com/display/AM250/Publish+through+Multiple+API+Gateways

設置完成后,當我嘗試使用此網關 URL 時,我收到以下響應,

{"fault":{"code":900900,"message":"Unclassified Authentication Failure","description":"Error while accessing backend services for API key validation"}}

<api manager install dir>\\repository\\conf\\api-manager.xml上將 KeyValidatorClientType 值從 ThriftClient 更改為 WSClient 后

它開始工作正常。 我能夠得到預期的回應。

如果您更改了管理員密碼,那么您還必須使用新密碼更新 repository/conf/api-manager.xml 文件。 我改變的 2 個地方(到目前為止)是:

<AuthManager>

<APIKeyManager>

但該文件中還有其他管理員用戶名。 毫無疑問,我會去找他們......

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM