2012-02-21 47 views
2

我想创建一个WCF服务,只能在本地主机上访问。 我找不到任何参考,这是可能的吗? 我发现的所有帖子都将此场景作为一个bug讨论,我想将它作为一个功能。如何创建一个安全/私人WCF服务

任何想法?

+0

不问为什么,我会建议在Windows服务中托管WCF并在本地控制端口。 – 2012-02-21 23:15:19

+0

嗨,大家好,感谢您的及时回复。我正在尝试做的是创建一个内部服务来使用EF代码的第一个特性来初始化一组数据库。我需要它是私有的,因为数据库初始化很可能是一个开发过程,我不想将这样的选项暴露给外部世界。我很乐意尝试其他想法。问题是我需要不时创建一组数据库,因为我们仍然处于一个表格可能会不时变化的阶段 – Just2Click 2012-02-23 13:38:46

+0

数据库将会改变(即使在生产中),所以我会围绕如何制定一个计划管理模式升级(EF数据迁移是一种选择)。 – 2012-02-23 13:44:30

回答

1

您可以为它所连接的网站配置绑定,并将其更改为localhost,而不是*。如果您正在托管其他需要外部访问的服务,则可以在其他端口上创建新的网站,例如localhost:8000

3

如果您对协议很灵活,可以使用Windows服务中托管的netNamedPipeBinding。

+0

+1对于IPC绑定 – oleksii 2012-02-21 23:38:43

1

WCF服务应该如何托管或访问是不可知的。

无论是托管服务,另一方面,决定如何访问服务。

麦克古德温建议,让你的主机只允许netNamedPipeBinding将限制该服务只能通过主机正在运行的机器访问。

以下是关于各种传输协议(包括命名管道)的article

以下是关于托管WCF服务的深入article

+0

嗨,大家好,感谢您的及时回复。我正在尝试做的是创建一个内部服务来使用EF代码的第一个特性来初始化一组数据库。我需要它是私有的,因为数据库初始化很可能是一个开发过程,我不想将这样的选项暴露给外部世界。我很乐意尝试其他想法。问题是我需要不时创建一组数据库,因为我们仍然处于一个表格可能会不时变化的阶段。 – Just2Click 2012-02-22 07:56:30

+0

您可能希望在您的问题下贴上这条评论。 :)因为它意味着每个人都在努力帮助,而不仅仅是我。 :) – 2012-02-22 15:40:09