My boss was frustrated after a weekend trying to track down a problem we were having with WCF’s Net.Msmq binding. He stumbled on the solution to the permission issue this morning (after reading many blogs without help).
WCF 5.0 on Windows 7. Using Net.Msmq binding and a remote queue. No client credentials being used. Machines within the same domain. Getting Access Denied error being sent back from the service. SysInternals Process Monitor and event logs did no provide any clue to the problem. Network Service and CLIENTMACHINE$ both had full permissions.
ANONYMOUS USER permission for Send, Read, and Peak Messages was required on the machine hosting the service for the message to be processed on the service side.
My boss worked backwards to the solution when he saw it work after giving Everyone full permissions on the queue.
always try Everyone full permissions when encountering a similar problem to rule out security being an issue. Then work back to the smallest set of credentials that are required. We can afford to use ANONYMOUS USER in our case because both machines are behind the same firewall in our production environment.
I’m a software developer who reads a lot of technology blogs, but I haven’t written content myself.
I started developing professionally in 2003 after graduating college with degrees in CS and math. I’ve been working the past 7 years for a prominent political consultant in Washington, DC. My company’s been using the .Net framework since version 1.1. There have been so many exciting developments on the Windows stack since I started.
As a developer, I’ve found blogs to be an invaluable source of tips, techniques, patterns, workarounds, and inspiration in my career (particularly in the .Net realm). My reason for this blog is to give back some of the same to the blogosphere. I’m hoping to stay mostly technical and provide snippets, workarounds, and reviews of some of my favorite patterns and practices. My goal for 2011 is a slow, yet consistent, start. I’m shooting to write at least one substantive post a month.