我正在尝试为WSO2 api管理器设置一个集群,并且我正在跟踪https://docs.wso2.com/display/CLUSTER44x/Clustering+API+Manager+1.10.0。
我正在为每个组件使用单独的am,目前在我的设置中我能够
然而,当我试图使用生成的键访问这个api时,我会得到以下响应
<soapenv:Fault xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<faultcode xmlns:axis2ns2="http://schemas.xmlsoap.org/soap/envelope/">axis2ns2:Client</faultcode>
<faultstring>Authentication Failure</faultstring>
<detail>Error while accessing backend services for API key validation</detail>
</soapenv:Fault>
在网关日志中,我只能看到下面一行。日志中没有更多的细节。
TID: [-1234] [] [2016-02-02 16:55:58,288] WARN {org.wso2.carbon.apimgt.gateway.handlers.security.APIAuthenticat
ionHandler} - API authentication failure due to Unclassified Authentication Failure {org.wso2.carbon.apimgt.gat
eway.handlers.security.APIAuthenticationHandler}
请帮我解决这个问题。
发布于 2016-02-03 06:27:06
这听起来像是anything的一个问题,除非您使用的是身份服务器(请参阅here了解身份验证和授权之间的区别( WSO2通过Oauth所做的)),否则实际上不会“验证任何东西”。请尝试一个已知的API来工作,例如http://petstore.swagger.io/并报告错误。
发布于 2016-02-05 11:35:09
由于许多原因,这可能会发生。请查查以下原因
<GATEWAY_HOME>/repository/resources/security/client-truststore.jks
中正确导入<KeyValidatorClientType>
更改为WSClient (默认值为ThriftClient
)。
WSClient发布于 2016-02-06 22:02:50
造成这种情况的原因可能是节点之间配置错误的结果。首先,您可以重复检查配置(特别是键验证器相关的配置)。
如果您在那里找不到任何问题,那么您可以启用调试日志并了解有关问题的一些信息。
在网关节点中的存储库/conf/log4j.properties中添加以下项
log4j.logger.org.wso2.carbon.apimgt.gateway.handlers.security=DEBUG
在密钥管理器节点中的存储库/conf/log4j.properties中添加以下项
log4j.logger.org.wso2.carbon.apimgt.keymgt=DEBUG
您可以通过分析日志来发现问题。
https://stackoverflow.com/questions/35159573
复制相似问题