【问题标题】:Looking to add basic security to a WCF service希望为 WCF 服务添加基本安全性
【发布时间】:2012-04-13 23:41:56
【问题描述】:

我有一个 WCF 3.5 服务,它运行良好。它使用托管的 basicHttpBinding 和 IIS 7。我想为其添加一些最低限度的安全性,也许是用户名和密码。有人可以给我一些非常基本的指示吗?我需要在 web.config 文件中添加什么?

【问题讨论】:

    标签: wcf security


    【解决方案1】:

    并不是说在 codeplex 上找到的内容有什么问题,我只是觉得当您刚开始尝试时,它一下子就太多了。就我个人而言,我更喜欢有人让我很好地了解它是否适​​用于我想要完成的事情——只要它是我正在寻找的基本理念。

    话虽如此,我觉得 Peter van Ooijen 的这些文章就是这样做的......

    原创文章
    A Simple WCF Service With Username & Password Authentication: The Things They Don't Tell You

    后续文章
    A Simple WCF Service With Username & Password Authentication: The Things You Told Me

    ...它绕过了很多繁重的(不需要的)细节,并触及了 WCF 安全理念的核心,因为它与 WCF 之前的安全性大不相同。我认为最难处理的事情(不幸的是)是创建这些安全证书。我个人以前从来没有这样做过,所以我觉得这很痛苦。幸运的是,这里有一个工具可以帮助创建 PluralSight 创建的证书,免费使用。在文章中提供了 PluralSight 的自我认证工具的链接,但是该链接已损坏。这是他们当前的链接:

    Self-Cert by PluralSight

    希望这可以帮助像我一样在这方面苦苦挣扎的人。

    【讨论】:

      【解决方案2】:

      WCF Security Guidance 是一个非常好的起点 - 有很多场景、示例、解释等等。

      对于通过 basicHttpBinding 进行的基本用户名/密码验证,您需要准备好几部分:

      • 在客户端启用用户名/密码(配置或代码)
      • 实际在每次调用前在客户端设置用户名/密码(仅在代码中)

      • 定义如何验证来自服务器端的用户名/密码 - 您的选项针对 Active Directory 进行验证(例如,您的所有呼叫者都需要在您的域中拥有一个 AD 帐户),针对 ASP 进行验证.NET 会员数据库,或自行开发

      • 在服务器端为服务安装证书,以便保护您的消息(加密和签名)

      这个操作方法“How To – Use Username Authentication with the SQL Server Membership Provider and Message Security in WCF from Windows Forms”基本上可以满足您的需求 - 具体示例适用于 wsHttp,但它也适用于 basicHttpBinding

      【讨论】:

        猜你喜欢
        • 2013-02-23
        • 2017-03-13
        • 2012-02-13
        • 1970-01-01
        • 2011-07-17
        • 1970-01-01
        • 2018-06-18
        • 1970-01-01
        • 2010-12-06
        相关资源
        最近更新 更多