2

伙计们,

我们正在开发一个应用程序,它是可下载的 WinForms 应用程序的一部分,该应用程序连接到一组 Azure 托管的 WCF 服务。

我们现在的主要问题是如何正确保护这些服务以防止 DoS 攻击和其他安全问题。

WinForms 应用程序将安装在世界任何地方的最终用户 PC 上(他们将能够从我们的网站下载),因此我们无法控制最终用户对我们的应用程序所做的事情。

我们已经尽可能地保护了应用程序,但我们知道没有什么是牢不可破的。我们现在的主要目标是确保这些 Web 服务的方法仅由我们的应用程序调用,并且我们可以保护自己免受攻击。

我们从 Microsoft 找到了一份最佳实践白皮书,指出对于我们拥有的某些场景,我们可以使用 GateKeeper 场景(例如用于存储)。我们还没有为我们的队列选择任何东西。

另一个问题是如何最好地控制从我们的 WinForms 应用程序到云服务的身份验证。

这里有没有人开发或从事过任何类似的项目并想分享一些想法?

干杯,

4

2 回答 2

1

我们现在的主要目标是确保这些 Web 服务的方法仅由我们的应用程序调用,并且我们可以保护自己免受攻击。

替换为:我们现在的主要目标是确保这些 Web 服务的方法仅由我们的应用程序调用,或者我们可以保护自己免受攻击。

这有点现实:) 根本没有办法保证服务会从客户端调用,除非你绝对信任他们并开始为他们颁发证书。(他们会丢失,他们的电脑会被黑客入侵,等等)

如果你想保护服务,你必须为每一种可能的攻击场景做好准备,除非你可以 100% 肯定地排除它们。

于 2012-06-27T01:36:48.413 回答
0

这个问题已经被问了一遍又一遍。如果 Web 服务托管在任何具有公共 IP 的服务器上,则阻止客户端的唯一方法是首先对其进行身份验证,如果身份验证顺利,他们可以使用该方法,如果失败则无法使用。身份验证和授权是托管在 Internet 上的任何服务的关键,否则请保持服务的私密性。

为了对 WCF 服务进行身份验证,已经有可用的模式和实践,而且您似乎已经处理了这一点。

于 2012-06-28T23:05:04.453 回答