WCF Services and Windows Vista
This entry was posted on 5/4/2008 3:27 PM and is filed under WCF.
I was working on some WCF services and encountered an unusual problem. Some services that I had run on my Windows Server 2003 machine were failing under Windows Vista with an "access denied" error. I tested the service using the built in WCF test client tool that comes with Visual Studio 2008. When I hovered over the error it gave reference to an MSDN
article . The article states that running WCF services requires a service host, and manual configuration of the HTTP server through the HTTP API may be required. For Windows Vista, it suggests running the Network services shell command (netsh) from a command prompt. To see all of the options run netsh /?. The article also supplies the syntax for Vista - netsh http add urlacl url=http://+:80/MyUri user=DOMAIN\user
I opened up a command prompt to enter the net shell command and received a user error stating that I was not authorized to issue the command. This, at first, seemed strange because I am an administrator on the machine. I dug further and found out that Vista has an "administrative command prompt" that you get to by typing "command" followed by ctl-shift-enter key strokes.
After finding my way to the Administrative command prompt, I was able to enter my netsh command. The result of executing the command delegate this ownership from the built in administrative account to the user account under which the service is running. You can look at the existing delegations by using "netsh http show urlacl".
There is an excellent
MSDN blog by Amit Lale that supplies addition details.