WebSphere SIBus failing to create subscription for an anonymous user

829 Views Asked by At

Apologies if this isn't as clear as it should be, but this stuff is all new to me.

I am running WebSphere 8.5 locally and have configured an SIBus with the server as the Bus Member. Using a persistent store for the messages on a local db. It looks like the tables are being created, inserted, etc. The SIBus is using a WS-Notification service and endpoint.

There are no JAX-WS handlers being used currently.

When I send the message via SOAPUI I get the following in WAS:

     SibMessage    W   [:] CWSII0228W: The bus XYZSIBus denied an anonymous user
     access to receive messages from the destination xyz.

     SibMessage    W   [:] CWSJN1073E: An attempt was made to create a 
subscription on WPM topic space xyz under username  but this could not be 
completed as the user is not authorized to subscribe to that WPM topic space 
using the specified topic expressions. The consumer's endpoint reference was 
<xml message snip/>. The exception was 
com.ibm.wsspi.sib.core.exception.SINotAuthorizedException: CWSIP0309E: Receive 
access from destination xyz was denied for user with subject ..

And then followed by the stacktrace:

WebServiceExc E org.apache.axis2.jaxws.WebServiceExceptionLogger log A javax.xml.ws.soap.SOAPFaultException throwable was caught.  The detail message is:   at com.ibm.ws.sib.wsn.webservices.utils.WSNMarshallerImpl.createException(WSNMarshallerImpl.java:799)
    at com.ibm.ws.sib.wsn.webservices.utils.WSNMarshallerImpl.createSOAPFaultException(WSNMarshallerImpl.java:473)
    at com.ibm.ws.sib.wsn.webservices.impl.inbound.provider.NBInvokerImpl.invoke(NBInvokerImpl.java:236)
    at com.ibm.ws.sib.wsn.webservices.impl.inbound.provider.NBProviderImpl.invokeTargetService(NBProviderImpl.java:142)
    at com.ibm.ws.sib.wsn.webservices.impl.inbound.provider.WSNProviderImpl.invoke(WSNProviderImpl.java:140)
    at com.ibm.ws.sib.wsn.webservices.impl.inbound.provider.NBProviderImpl.invoke(NBProviderImpl.java:108)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
    at java.lang.reflect.Method.invoke(Method.java:611)
    at org.apache.axis2.jaxws.server.dispatcher.JavaDispatcher.invokeTargetOperation(JavaDispatcher.java:101)
    at org.apache.axis2.jaxws.server.dispatcher.ProviderDispatcher.invoke(ProviderDispatcher.java:138)
    at org.apache.axis2.jaxws.server.EndpointController.invoke(EndpointController.java:111)
    at org.apache.axis2.jaxws.server.JAXWSMessageReceiver.receive(JAXWSMessageReceiver.java:161)
    at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:198)
    at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:172)
    at com.ibm.ws.websvcs.transport.http.WASAxis2Servlet.doPost(WASAxis2Servlet.java:1544)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:595)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1214)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:774)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:456)
    at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
    at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1027)
    at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3703)
    at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:304)
    at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:962)
    at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1662)
    at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:195)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:522)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:311)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:282)
    at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
    at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
    at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
    at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
    at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
    at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
    at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
    at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
    at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
    at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1783)
1

There are 1 best solutions below

1
On

Here is the explanation of the error warning message you've received just before the error

CWSII0228W: The bus {0} denied an anonymous user access to receive messages from the destination {1}.

Explanation The Everyone group is not in the receiver role for the destination. Action If you want anonymous users to receive from the destination, add the Everyone group to the receiver role for that destination.

It seems that you have security enabled for SIBUS (integration security), but have not yet configured necessary authorisation. Try adding Everyone group to receiver role as outlined at Adding users and groups to destination roles.