【问题标题】:Why use Soap as authenitcation in webservice?为什么在 Web 服务中使用 Soap 作为身份验证?
【发布时间】:2010-03-25 15:53:03
【问题描述】:

我正在查看本教程http://www.codeproject.com/KB/cpp/authforwebservices.aspx,我想知道通过soap 使用身份验证的原因是什么?比如为什么不直接通过参数传递用户名和密码呢?

像教程中的那个人那样做比只使用作为参数传递它更安全吗?

谢谢

【问题讨论】:

    标签: c# .net web-services soap


    【解决方案1】:

    因为有认证基于 WS-* SOAP 的 Web 服务的标准。

    WS-Security 是这里工作的罪魁祸首。

    它允许从用户名/密码令牌身份验证到 X.509 身份验证。您还可以使用用户名/密码或 X.509 来加密 SOAP 消息的正文,以便您的信息更难获取。

    附带说明一下,.NET 2.0 有 Web 服务扩展 (WSE) 3.0 用于此功能,因此您不必自己动手(这是您文章的作者所做的)。在 .NET 3.5 中,您将使用内置支持 WS-Security 的 WCF。

    【讨论】:

    • 你有任何关于 WCF 的教程和这个内置的安全性吗?我也仍然不明白为什么你不能加密用户名/密码并发送并仍然作为参数传递它更安全。
    • 这是一个快速的 WCF 教程,涵盖了使用 WS-Security 保护 Web 服务的所有不同方法(它还讨论了您想要这样做的原因):theserverside.net/tt/articles/…
    【解决方案2】:

    嗯,不,那家伙的做法根本没有增加任何额外的安全性。然而,当使用 WS* 堆栈正确实施时,通过soap 标头进行的身份验证具有几个优点。 WS* 堆栈很大程度上基于用于签名和加密的 X.509 证书。这样做的主要优点之一是身份可以从一个服务传播到另一个服务,而无需保留用户名和密码等敏感信息。

    【讨论】:

      【解决方案3】:

      查看 SOAP 标头,可以在需要时对其进行签名和加密,并受到任何(自尊)SOAP 开发环境的支持...

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-09-26
        • 2021-05-01
        • 2011-07-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多