安全的WCF服务,除SSL协议外还需要哪种身份验证?

时间:2013-05-01 13:10:02

标签: wcf security authentication ssl service

我有一个带SSL证书的服务器,并希望使用用户名身份验证来实现WCF服务。有人能指出一个简单的当前例子吗?

我发现有很多人使用509证书,我不明白为什么需要额外的部分。我不认为我想将SSL的证书交给客户端。

我认为使用SSL只是使用wshttpbinding并在调用服务的uri中使用https:来正确设置web.config。

在这种情况下,我将只有一个或两个用户(实际上是客户端的应用程序)需要使用该服务,所以我没有看到为商店构建数据库的大量登录凭据或类似的东西的开销那。我已经读过您可以在请求标头中传递凭据。我希望我可以让服务本身检查它们而不需要大量的开销。

我真的很难弄清楚一个简单的身份验证如何为服务工作,但我知道除了SSL加密的服务之外我还需要一些东西。

编辑:Hummm已阅读更多我得到的印象是,对邮件使用https绑定会绕过任何用户名凭据的概念而不会出现证书的神秘信息。我希望此时我没有在服务器的ssl证书上浪费金钱。

请求者的IP是否可以仅用于允许已知客户端的服务?

1 个答案:

答案 0 :(得分:1)

如果您只需要几个用户,那么使用内置的Windows authentication - 创建Windows用户帐户,在绑定配置中添加正确的安全选项,您就完成了。如果您使用来自非Windows客户端的SOAP,则必须执行一些技巧才能使其正常通信(通常我们发现使用PHP客户端的NTLM身份验证需要使用curl而不是PHP SOAP客户端库,但我了解如果使用AD帐户,这会变得更加容易。)

WCF docs为您提供了auth选项的完整说明。