Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在c#2.0中保护web服务并使任何平台都能轻松使用_C#_Web Services_Security_Authentication_Soapheader - Fatal编程技术网

如何在c#2.0中保护web服务并使任何平台都能轻松使用

如何在c#2.0中保护web服务并使任何平台都能轻松使用,c#,web-services,security,authentication,soapheader,C#,Web Services,Security,Authentication,Soapheader,如何确保web服务的安全并使任何平台都可以轻松使用 安装程序:Asp.NET2.0、DotNET2.0、c#2.0、VisualStudio2005。Web服务器是IIS并使用https(SSL) 我希望避免安装像WSE3.0这样的东西。我更喜欢纯c#方法,我可以随身携带,以备将来版本的VisualStudio和IIS使用 每个人都应该能够在没有身份验证的情况下访问web服务URL和描述并查看WSDL 安全措施将有助于阻止人们向我们的web服务方法发送垃圾邮件 易于实现:我不想为客户端管理证书或

如何确保web服务的安全并使任何平台都可以轻松使用

安装程序:Asp.NET2.0、DotNET2.0、c#2.0、VisualStudio2005。Web服务器是IIS并使用https(SSL)

  • 我希望避免安装像WSE3.0这样的东西。我更喜欢纯c#方法,我可以随身携带,以备将来版本的VisualStudio和IIS使用
  • 每个人都应该能够在没有身份验证的情况下访问web服务URL和描述并查看WSDL
  • 安全措施将有助于阻止人们向我们的web服务方法发送垃圾邮件
  • 易于实现:我不想为客户端管理证书或安装任何东西
  • 客户端只发送用户名和密码
  • 这是否意味着SOAP头身份验证是唯一的方法?我找到了这些链接,但不知道它们是否适用于非.NET客户端?

    我也看到了,但不知道是否以及如何实现它(这不是一个很好的例子)

    请建议或给我一个好的链接(没有视频请)。
    谢谢

    IIS中的基本身份验证是否不足?服务消费者很容易通过请求传递基本的身份验证参数。

    您最好升级到WCF,因为那里的内置选项要好得多。如果您被困在2.0/SOAP环境中,那么定制SOAP头将在大多数平台上工作——我以前在.NET、COM+和PHP中成功地使用过它们。您可以使用典型的ASP.NET授权位(包括sql数据库)支持user/pass。这就是说,如果安全的目的是减少垃圾邮件,而您没有那么多的服务方法来“保护”,那么您可能只想向您的方法添加一个“UserKey”参数,然后验证(或至少验证速率限制)

  • 您应该将解决方案升级到WCF。如果可以,您可以轻松地为客户选择。另见
  • 如果非.NET客户端可以构造请求所需的xml,SOAP头将适用于这些客户端
  • 用于SOAP头使用的简单示例

  • 同意在任何情况下都不应使用WSE。