我正在研究如何在WCF服务和在RHEL上运行的非.NET客户端之间建立安全连接,因此我希望Windows身份验证不可行。这仅适用于内部网络,因此我希望避免X.509的管理难题(例如需要密切监控证书到期日期),但我不清楚它是否是技术上可以这样做。
是否可以使用例如配置WCF服务BasicHttpBinding或WsHttpBinding使它具有加密(传输或消息层,我不挑剔),但不使用Windows身份验证支持或X.509证书?
对于安全的WCF服务,Every scenario I've read似乎使用这两种技术中的一种。唯一不需要任何X.509证书的人都使用Windows身份验证。我不确定这是否是基础技术的一个基本结果,或者它是否只是“常见情景”的一个属性"微软已选择记录。目前我假设如果Windows身份验证不可用,那么X.509是部署公共/私有密钥对以供非特定于Windows的消息加密算法使用的唯一方法。这种理解是否正确?
答案 0 :(得分:1)
x.509是在您的场景中执行此操作的常用方法,因为此处所需的大部分内容已经存在...
但您不限于windows auth或x.509 ...
看看这里:http://www.codeproject.com/Articles/165844/WCF-Client-Server-Application-with-Custom-Authenti
本文介绍了如何引入自己的身份验证和加密架构......
我已经做过(简单的AES加密,所有客户中的一个密钥),但我手边没有代码......这不是很难,但如果你我真的遇到了麻烦,如果我还有某些东西,我会看看......