0

これは、ASP.net Web サイトで単純なメール送信機能をいじっていたときのランダムな考えです。

MailMessage mailMessage = new MailMessage();
mailMessage.To.Add("test@gmail.co.uk");
mailMessage.From = new MailAddress("test2@gmail.com");
System.Net.NetworkCredential basicauthenticationinfo = new    
System.Net.NetworkCredential("username", "pass123");

上記は、私が考えさせられた私のコードの抜粋です。サイトを展開した後、「ソースの表示」でサイトの HTML を表示できましたが、その背後にある ASPX.CS ファイルで C# コーディングを確認する方法が見つかりませんでした。私も FireBug を使ってみましたが、うまくいきませんでした。では、私のウェブサイトを閲覧している人は、上記の情報を見る方法がないと言っても過言ではありませんか?

上記のコードの他の例では、通常は Web.Config ファイルで NetworkCredentials を指定しています。これには、より安全であるという利点がありますか?

セキュリティのために、このシナリオで Webconfig を可能な限り利用しようとする主なアイデアですか、それともコードを「整頓」しておくためだけですか?

4

1 に答える 1

1

web.configファイルはより良い場所であり、利点は次のとおりです。

  • 構成情報は、簡単に構成できる構成ファイルにあります。
  • *.configファイルは ASP.NET によって特別に保護されたファイルとして扱われ、提供されることはありません。
  • 実際の構成ファイルがなくてもコードを Git サイトに投稿でき、セキュリティ リークが発生しないと確信できます。

構成情報をハードコーディングしたままにしておくと、それらの利点を放棄し、セキュリティ面での生活が難しくなります。

于 2014-01-24T09:26:49.393 に答える