2010-04-15 49 views
0

我有一个特定的Silverlight应用程序,由WCF服务提供数据。我想确保WCF服务仅由调用,即具体的 Silverlight应用程序。什么是最好的方式来实现这一点,我必须做什么?它不一定是一个高度安全的解决方案。如何确保WCF服务仅由特定应用程序使用?

由于提前, 弗兰克

回答

3

启用服务基本认证(用户名/密码)。创建一个单独的用户,Silverlight应用程序将使用该用户对服务进行身份验证。

更简单但不太安全的做法可能是仅使用某种标识符(仅Silverlight客户端已知)作为服务参数。

这两个选项在使用HTTPS实施时显然是最安全的。这可以通过使用服务器证书来完成。

+0

该方法的问题是,密钥/密码不安全。无论是flash/silverlight还是javascript,都可以轻松地从中提取密钥。 – 2010-04-15 13:32:11

+0

对,好点。在javascript等情况下,没有办法以100%安全的方式编程执行此操作。所以,这可能意味着你在Web服务器/防火墙中遇到了诸如客户端证书或基于IP的过滤之类的东西,可能与上述解决方案相结合。 – 2010-04-15 17:48:08

+0

无论如何,100%的安全性是一种幻想:) 这只是“多少努力和技能才能绕过安全限制”。所以这取决于数据的重要性。用户名/密码认证将为我做,感谢所有答案! – Aaginor 2010-04-21 14:33:43

1

如果你的应用是匿名运行,那么它几乎不可能做到100%安全。

如何过,如果你的要求是你的用户,然后进行身份验证,你应该能够使该服务通过要求他们的登录凭据相对安全...

0

我不知道它是否易于使用WCF,但我猜你可以使用客户端证书做些事情。我只使用这种方法来保护网站,这是很容易做...

相关问题