【问题标题】:wso2 carbon messagebox on receive message : failed to get secret it of user接收消息时的 wso2 carbon 消息框:无法获取用户的秘密
【发布时间】:2012-07-12 00:46:32
【问题描述】:

我正在开发 WSO2 Carbon MessageBox(SQS),以便订阅队列,然后从消息框中读取消息以进行批处理。

有一些有用的教程,例如:

http://wso2.org/project/message-broker/1.0.2/docs/samples/messagebox_as_event_sink.html

当尝试连接到本地 WSO2 ESB 实例上的 MessageBox 时,它们工作正常。

但是,当从远程 WSO2 实例上具有相同配置的 MessageBox 接收消息时,它会失败。

这些是 WSO2 ESB 上的日志消息。

身份验证看起来没问题(第二条日志消息),但是,"ReceiveMessage" 请求在 AuthenticationHandler 中失败。

TID: [] [WSO2 ESB] [2012-07-12 09:49:19,597] ERROR {org.apache.axis2.engine.AxisEngine} - Failed to get secret id of user

41ca9541e96​​a077766d2 {org.apache.axis2.engine.AxisEngine}org.apache.axis2.AxisFault:失败 获取用户 41ca9541e96​​a077766d2 的秘密 ID org.wso2.carbon.messagebox.sqs.internal.module.AuthenticationHandler.invoke(AuthenticationHandler.java:80) 在 org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340) 在 org.apache.axis2.engine.Phase.invoke(Phase.java:313) 在 org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:262) 在 org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:168) 在 org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:172) 在 org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:146) 在 org.wso2.carbon.core.transports.CarbonServlet.doPost(CarbonServlet.java:199) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:641) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 在 org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90) 在 org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:111) 在 org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:67) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 在 org.wso2.carbon.bridge.BridgeServlet.service(BridgeServlet.java:164) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 在 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240) 在 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164) 在 org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462) 在 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164) 在 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) 在 org.wso2.carbon.server.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:154) 在 org.wso2.carbon.server.TomcatServer$1.invoke(TomcatServer.java:254) 在 org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563) 在 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) 在 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:399) 在 org.apache.coyote.http11.Http11NioProcessor.process(Http11NioProcessor.java:396) 在 org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:356) 在 org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1534) 在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 在 java.lang.Thread.run(Thread.java:662)

 TID: [] [WSO2 ESB] [2012-07-12 09:49:19,401] INFO {org.wso2.carbon.core.services.util.CarbonAuthenticationUtil} -

'admin' 在 [2012-07-12 09:49:19,0401] 从 IP 地址登录 {org.wso2.carbon.core.services.util.CarbonAuthenticationUtil

我做错了什么还是需要做一些特定的配置?

【问题讨论】:

    标签: messagebox wso2 amazon-sqs


    【解决方案1】:

    如果您的消息框位于远程机器上,那么您的 http 请求应具有 SQS 规范指定的身份验证标头。这似乎您没有发送带有用户名和秘密 ID 的有效请求。而且 sqs:// 也只能在本地环境中工作。

    【讨论】:

    • 好吧,我可以进行身份​​验证并读取 sqs 密钥。我将 accessKeyId、时间戳和签名与示例代码中的完全相同。对于连接,我没有使用 sqs://,即 WSO2 管理控制台上显示的 URL,例如: https://:9443/services/MessageQueue/admin/test 哪个参数可能无效或丢失?
    猜你喜欢
    • 1970-01-01
    • 2017-06-26
    • 2015-07-17
    • 1970-01-01
    • 1970-01-01
    • 2018-06-05
    • 1970-01-01
    • 2017-03-19
    • 1970-01-01
    相关资源
    最近更新 更多