c# - 保护网络服务

标签 c# web-services protection

我有一个我们创建的 WebService 项目,用于向我们的客户公开一些方法(特别是如果他们调用其中一种方法,它将在我们的服务器上触发一个事件),他们可以在他们自己的 C# 项目中调用这些方法(一些客户将使用 Web 表单应用程序,而一些将在其内部网站上使用)。

由于该方法的性质,其中一个参数是一个字符串,用于标识客户端是谁(因此我们可以触发适当的事件),我并不过分相信这足以防止人们发送随机数据直到他们偶然发现其中一个有效标识符。

保护此类内容免受滥用的标准方法是什么?我发现的大多数教程似乎都没有提到任何关于保证它们安全的内容。谢谢!

最佳答案

Daniel Vassallo 是正确的。您将需要使用 X509 证书来验证调用该服务的人是否合法。然而,这确实大大提高了解决方案的复杂性。您将需要使用 Microsoft WSE 和可能购买的第 3 方组件。

如果没有它,您可以使用传入的用户名和密码。但是,需要一些共享算法来根据日期、时间等对信息进行哈希处理。如果没有哈希,您将面临一个黑客多于没有。即使使用 SSL,字典攻击最终也可能闯入。

关于c# - 保护网络服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1924305/

相关文章:

Java Web 服务和 .net 客户端日期数据类型互操作性问题

ruby-on-rails - 如何知道何时使用 XML 解析器以及何时使用 ActiveResource?

c# - 如何保护我的 .net winforms 程序集不受客户客户的影响

PHP - 保护 WMA 音频流

c# - ValidateAntiForgeryToken 过滤器不起作用

java - 如何将这个列表翻译成Java?

c# - 亚马逊 API - 顶级客户评论员

c# - 用于命名实体识别器的C#工具

web-services - 什么是简单的 Web 服务

java - 如何保护Jar文件不被反编译?