这更多的是一个架构和安全问题。我正在尝试确定是否需要建议的架构。让我解释一下我的配置。

我们建立了一个标准的 DMZ,它本质上有两个防火墙。一个面向外部,另一个连接到内部 LAN。下面描述了每个应用程序层当前运行的位置。

防火墙外:
银光应用程序

在 DMZ 中:
WCF 服务(业务逻辑和数据访问层)

局域网内:
数据库

我收到的信息表明该架构不正确。具体来说,有人建议,由于“Web 服务器很容易被黑客攻击”,因此我们应该在 DMZ 内放置一个中继服务器,该服务器与 LAN 内的另一个 WCF 服务进行通信,然后该服务将与数据库进行通信。外部防火墙当前配置为仅允许端口 443 (https) 访问 WCF 服务。内部防火墙配置为允许来自 DMZ 中的 WCF 服务的 SQL 连接。

忽略明显的性能影响,我也看不到安全方面的好处。我将保留对此建议的判断,以避免我的偏见污染答案。任何意见都会受到赞赏。

谢谢,
马特

有帮助吗?

解决方案

我确实认为这些言论是有效的,在这种情况下,我可能还会尝试使用尽可能多的“纵深防御”层。

另外,如果您使用 .NET 4(或可以迁移到它),实现这一目标的工作量可能比您担心的要少。

您可以使用新的 .NET 4 / WCF 4 路由服务来轻松完成此操作。作为一个额外的好处:您可以向外界公开 HTTPS 端点,但在内部,您可以使用 netTcpBinding(速度要快得多)来处理内部通信。

查看设置 .NET 4 路由服务有多么容易:

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top