我希望托管一个 WCF 服务,这些服务可供有限的一组客户端通过 Internet 访问,如下所述:
使用少数客户端在 Internet 上保护 WCF 服务的最佳方法
我打算在这个阶段使用用户名/密码身份验证(使用现有的会员基础设施),并具有传输安全性(即 SSL)。
我想知道当会员数据库显然在公司网络内部时,推荐的处理身份验证请求的方法是什么。
我正在考虑的选项是:
- 公共防火墙将执行 SSL 卸载,然后 DMZ 服务器将请求反向代理到内部 WCF 服务器 - 我假设凭据将被保留并通过此方法传递,并且内部服务可以适当地利用成员资格提供者对用户进行身份验证。
- 编写一个愚蠢的 WCF 服务以坐在外部,这将使用自定义用户名/密码身份验证。这将调用网络内部的身份验证服务,以访问成员详细信息。验证凭据后,调用将基本上传递到实现所需功能的内部服务。
这两种选择都可能吗?它们中的任何一个有什么主要的优点/缺点吗?(显然反向代理的代码要少得多......)