Sunday, 9 December 2007

Access control of HTTP addresses in Vista

Vista has namespace reservations to control the set up of HTTP listening ports. By default, a user does not have access to listen to arbitrary HTTP ports e.g. using wsHttpBinding in WCF.

To show the access control for all ports, use command:
  • netsh http show urlacl
To grant user Tony access to port 8000, do:
  • netsh http add urlacl url=http://+:8000/ user=Tony
Update: there is a deployment tool for WCF that includes this step.