我几天来一直在努力解决这个问题,我希望有人能提出一些解决方案。
我有一个自托管的WCF服务,此服务的主要接口将是一个托管在非IIS,可能共享的环境中的Silverlight应用程序。
我知道TransportWithMessageCredential和自定义authentication validator。唯一的要求似乎是主机具有HTTPS和有效的SSL证书。但是,产品将在某些环境中运行,他们不会为支付和维护证书而烦恼,或者共享环境不允许使用SSL。
简单的答案是告诉他们找一个新的主机/管理员,但我被要求查看是否还有其他可疑的身份验证机制。
有什么建议吗?
由于
答案 0 :(得分:0)
如果没有SSL,您无法通过网络“保护用户凭据”。您可以“在Silverlight应用程序中”进行一些加密,但这实际上相当于混淆与“真实”安全性。
在这种情况下,我能想到的唯一选择是中等安全性,这是一个3因素解决方案,例如为所有用户提供SecureID密钥卡。
答案 1 :(得分:0)
我们遇到了同样的问题。我们为WCF服务创建了一个安装程序,用于创建自签名证书,将其添加到系统证书存储区并使用HTTPS端口配置绑定。 Silverlight应用程序具有从WCF服务下载此证书的链接。因此,用户可以下载此证书并将其安装在受信任的根证书存储区中。