0

这是我在 ASP.net 网站上使用简单的发送电子邮件功能时的一个随机想法:

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 回答