繁体   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