0

我有一个 Silverlight Web 应用程序,我正在使用 wcf 服务将数据加载到客户端。我应该保护 WCF 服务吗?网络上的任何人都可以调用该服务的方法吗?

4

2 回答 2

1

是的,如果他们知道 url,他们就可以查看和访问服务。

如果他们能看到,他们只需要做一个“添加服务引用”,他们就可以看到所有可用的方法。

由于silverlight 使用基本的httpbinding,它可以通过防火墙工作(它们通常允许http 流量)。

如果它包含敏感信息,您应该保护它。

于 2013-03-08T14:43:42.777 回答
1

默认情况下,您将通过默默无闻获得安全性,因此如果您不广播 WCF 服务的存在,则不太可能找到或调用它。此外,如果没有配置适当的客户端代理,将很难使用它。如果您没有设置 MEX 端点,那么您仍然非常安全。

尽管如此,你还没有真正授权这些电话。理论上可以找到您的 WCF 服务并创建一个代理来调用它。因此,如果您想要安全,我建议您查看 WCF 授权。设置起来相当容易,您可以使用各种选项,例如用户名-密码、Windows 帐户或 X.509 证书。每个都有其优点和缺点。

这篇文章很详细,还有其他的。http://msdn.microsoft.com/en-us/magazine/cc948343.aspx

于 2013-03-08T14:47:09.777 回答