IIS 8 and MSMQ over HTTP without WCF

httpiismsmq

I am trying to config a new Server 2012 R2 server running IIS 8 and MSMQ. I have create a private queue and trying to send it messages over HTTP from a server in another domain. I have granted the Everyone group Full permissions and using Wireshark, I see the packets coming over HTTP.

Yet nothing shows up in the queue itself. I have searched high and low but have found nothing to suggest the problem. The vast majority of articles out there are for when WCF is in the picture.

The only areas I think could be causing a problem are

  • Permissions — think this is covered via the Everyone group having full permissions
  • IIS website bindings — for example net.msmq but I do not think I need this because my understanding is that this is needed for WCF which is not in play here
  • Queue naming — Everything I read says I am referencing this correctly
  • Missing role or feature — I cannot find any definitive list of what I need when WCF is not used. (For example, I have HTTP Support installed for MSMQ but do not have any of the WCF Services features like HTTP Activation since I am not using WCF.)
  • IIS Handlers — I know when dealing with WCF you need to "fix" *.svc in MIME Types section but as far as I know there is no extension in play here.

For info purposes, here are the relevant names and references

  • Queue name: apps-02\private$\solr_incidents
  • Sending Reference: DIRECT=HTTP://apps-02/msmq/private$/solr_incidents (I have tried using the ip address too instead of host name.)
  • Wireshark:

          POST /msmq/private$/solr_incidents HTTP/1.1
    
          http://apps-02/msmq/private$/solr_incidents
    
          Returns HTTP/1.1 200 OK
    

Is there anything else I can look at? Are there are blogs or articles providing specific settings/requirements for MSMQ over HTTP without adding all the pieces for WCF?

Best Answer

You've given "Everyone" access but that's not everyone.

"Anonymous Logon" needs to be added to really cover everyone.