2010-05-17 3 views
2

Il s'agit plus d'une question d'architecture et de sécurité qu'autre chose. J'essaie de déterminer si une architecture suggérée est nécessaire. Laissez-moi vous expliquer ma configuration.Relay WCF Service

Nous avons établi une DMZ standard qui comporte essentiellement deux pare-feu. L'un externe et l'autre connecté au réseau local interne. La section suivante décrit où chaque niveau d'application est en cours d'exécution.

En dehors du pare-feu:
application Silverlight

Dans la zone démilitarisée:
service WCF (Business Logic & Data Access Layer)

A l'intérieur du réseau local:
Base de données

Je reçois une entrée indiquant que l'architecture n'est pas correcte. Plus précisément, il a été suggéré que, parce que "un serveur web est facilement piraté", nous devrions placer un serveur relais dans la DMZ qui communique avec un autre service WCF à l'intérieur du LAN qui communiquera alors avec la base de données. Le pare-feu externe est actuellement configuré pour autoriser uniquement le port 443 (https) au service WCF. Le pare-feu interne est configuré pour autoriser les connexions SQL à partir du service WCF dans la zone démilitarisée. En ignorant les implications de performance évidentes, je ne vois pas l'avantage de sécurité non plus. Je vais réserver mon jugement de cette suggestion pour éviter de polluer les réponses avec mon parti pris. Toute contribution est appréciée.

Merci,
Matt

Répondre

2

Je ne pense que les remarques sont valables, et dans ce cas j'essaieraient probablement aussi et utiliser autant de couches de « défense en profondeur » Je pourrais peut-être venir avec . De plus, la quantité de travail pour y parvenir pourrait être inférieure à ce que vous craignez - si vous êtes sur .NET 4 (ou pouvez y accéder).

Vous pouvez utiliser le nouveau service de routage .NET 4/WCF 4 pour le faire assez facilement. Comme avantage supplémentaire: vous pouvez exposer un point de terminaison HTTPS au monde extérieur, mais à l'intérieur, vous pouvez utiliser netTcpBinding (qui est beaucoup plus rapide) pour gérer les communications internes.

Découvrez comment il est facile de mettre en place un service de routage .NET 4:

+0

Un grand merci! Je vais vérifier les liens. –