据我所知,我们必须编写一个邮件帐户,用于在ASP.NET中发送邮件:用户名,主机,端口,密码。有没有办法加密或以某种方式保护它除了拥有一台服务器?否则,每个有权查看该计算机上的文件的人都可以看到帐户数据。
答案 0 :(得分:1)
这只是为了澄清你关于"必须写邮件帐户的声明.."
您需要以这样或那样的方式这样做,以便您的应用知道MTA的位置以及如何对其进行身份验证(如果/在需要时)。
加密web.config的各个部分,就像Sean所说的那样,并且给你灵活性,但它不是唯一的方式。您可以 do same in code - 因此,如果您预编译代码(dll),它可以减轻您对文件系统访问的担忧。
答案 1 :(得分:0)
可以加密web.config文件的各个部分,也可以将SMTP设置存储在web.config文件中。
web.config中的SMTP设置如下所示:
<configuration>
...
<system.net>
<mailSettings>
<smtp from="user@domain.com" deliveryMethod="Network">
<network host="smtp.domain.com" port="25" userName="user@domain.com" password="password" />
</smtp>
</mailSettings>
</system.net>
...
</configuration>
Microsoft关于加密web.config文件和访问加密数据的文章:http://msdn.microsoft.com/library/dtkwfdky.aspx