2010-12-08 15 views
1

基本的には監視アプリケーションであるWebサーバーでは、Webサーバーの名前、各WebサーバーでホストされているWebサイトの名前、URL、ポート番号などの構成ファイルを保持する必要がありますASP.NET構成ファイルと通常のXMLファイル

この設定ファイルをWebアプリケーションのカスタム設定ファイルとして扱い、通常のxmlファイルとして扱うのではなく、 "ConfigurationSection"や "IConfigurationSectionHandler"を使って読むことのメリットを教えてください'XMLDocument'や 'XMLTextReader'や 'XLINQ'などを使用していますか?これにより、このカスタム設定ファイルと同様にweb.configファイルにエントリが作成されるのを防ぐことができます。

私はインターネット上でこの答えを探していましたが、満足のいく回答は見つかりませんでした。

助けてください..

答えて

3

セキュリティ上の観点から、XMLファイルをサイトに配置してファイル名を推測すると、ファイルを取得できます。すべてのサイト、現在のサーバー、およびサーバー上で攻撃を受けたり、サーバーを制御するために使用できる可能性のある、開いているポートのセット。
対照的に、ASP.NETは(デフォルトでは)ブラウザの要求に.configファイルを提供しないため、すべての情報を見つけるのが難しくなります。

+0

Philさん、ありがとう、これは私にとってかなり論理的なようです。 – binu

4

あり、少なくとも2つの理由:

  1. web.configファイルは、あなたのウェブサイトのための設定を保持するために設計されています。したがって、将来そのサイトを管理している人は、そのサイトに関連する設定があるかどうかを知ることになります。
  2. 任意のアプリケーションに* .configを使用すると、System.Configurationアセンブリ内のConfigurationManagerクラスを使用してファイルから読み書きすることができます。これは、独自のxmlを書くよりも簡単です(目的に合わせて設計されているため永続的な構成情報の)。
+0

+1最も明白な場所に設定を保存します。 – Greg

+0

この質問への回答には、web.configファイルを使用していると、http://stackoverflow.com/questions/719928/how-do-you-modify-the-web-config-appsettings-at-runtimeアプリケーションが再起動するため、それに書き込むことはお勧めしません。 – Malavos

+1

@Malavosしかし、設定を変更すると、通常、アプリケーションを再起動して有効にする可能性があると思います。それでも、どこに置くべきかを決める際に考慮すべきポイントです。 –

関連する問題