Restricting WCF Service access to only localhost

iis, localhost, wcf

Solution

There are a few ways to do this;

- in IIS itself

- By configuring WCF correctly

- use IIS7 and WAS

- use named pipes (more info)

- configure your firewall correctly

Named pipes are probably the way to go

When to Use the Named Pipe Transport

A named pipe is an object in the Windows operating system kernel, such as a section of shared memory that processes can use for communication. A named pipe has a name, and can be used for one-way or duplex communication between processes on a single machine.

Problem

I have three WCF services hosted in IIS and these services are being used by my internal applications(including a WCF service) on the same machine. The need here is to restrict the outside access to WCF service. These three WCF services should be accessible only at localhost, i mean on the same machine and it should not be accessed from other mahcine. So if i type svc url from other machine : http://myHostingMachine/MyService/Service1.svc ..it should not be accessible. What is the best possible way to achieve this. In simple way can I restrict access to SCV files using WCF configuration just to localhost??

Original source

Related problems