1

私たちは、典型的なネイティブ アプリケーション開発から出発し、いくつかの新しい Web ベースのアプリケーション サービスを開発しています。.Net と WCF を使用しており、おそらく IIS でホストしています。

当社のサービスは、データを永続化するためにデータベースを使用する必要があります。いずれの場合も、データベース サーバーをホストとは別のボックスにするつもりです。私たちが見つけたほとんどのリソースは、データベース接続文字列を web.config (またはセルフホスティングの app.config ファイル) に格納することを示しているようです。私たちの懸念は、サービスが Web に面しているため、実行されているボックスがハッキング/侵害される可能性が高いことです。その場合、攻撃者は DB 接続文字列を取得し、すべてのデータに完全にアクセスできるようになります。

最初に考えたのは、WCF サービスを、接続情報を保持し、すべての処理ロジックを実行する別のマシン上に存在するサーバー アプリケーションに単純にプロキシすることでした。そうすれば、Web ホストが侵害された場合、サーバー アプリケーションと通信する方法を見つけ出すか、そのマシンも侵害してデータベース アクセスを取得する必要があります。ただし、プロキシのパフォーマンス コストや、サーバー アプリケーションでボトルネックが発生する可能性があるという懸念はあります。

このアプローチに関する懸念は、そのようなアプローチを推奨している WCF/IIS 文献の方法をあまり見つけていないことですが、そのような情報を見つけるためにそれが何と呼ばれているかを知らないだけかもしれません。質問: そのようなプロキシは良いプラクティスであり、なぜ/(そうでないのか) (または、このトピックに関する詳細情報はどこにありますか)、またはより良いプラクティスはありますか?

4

1 に答える 1

0

これらのことと同様に、それはすべて、必要なものがどれだけ安全かによって異なります。web.config を暗号化できます。

http://msdn.microsoft.com/en-us/library/dtkwfdky.aspx

ただし、攻撃者が Web ホスト マシンを侵害する能力を持っている場合、彼らは他のサーバーを見つけることができ、それを侵害する能力も持っている可能性があることを確認する必要があります。ここでの純利益が何であるかは 100% わかりません(あなたの人生をより困難にすることは別として)。

于 2012-07-18T14:18:30.490 に答える