2011-05-09 68 views
2

我已经创建了几个过去发送电子邮件的asp.net应用程序,但我一直不确定存储SMTP凭据的位置。我通常只是创建一个单独的XML文件来存储这些信息,但我不确定这是否是最好的方法。在asp.net应用程序中存储SMTP凭据的最佳做法是什么?

为asp.net应用程序存储SMTP凭据时的最佳做法是什么?

SMTP证书应该存储在web.config中吗?

回答

2

我说明了吗?

<configuration> 
    <system.net> 
     <mailSettings> 
      <smtp> 
      </smtp> 
     </mailSettings> 
    </system.net> 
<configuration> 
0

主观标签?

我会存储在web.config中,如果我有我的druthers。任何时候需要发送一封电子邮件(yuck),我一直在那些将它们存储在数据库中的地方,并调用数据库获取这些凭据。

2

你应该问问自己:你在哪里储存你的连接字符串

如果的web.config是足够安全的为您的数据库凭据,我看不出有任何理由SMTP的人应该有所不同..

所以我的选择是 - 无论您存储连接字符串

+1

虽然您可以加密连接字符串。我猜你不能做同样的smtp信誉 – 2011-05-09 21:50:14

+1

感谢您指出@Joe!您可以像加密连接字符串一样加密任何类型的信息。正如我之前所说 - 两个证书应该在相同的安全级别imho。 – ljubomir 2011-05-09 22:01:33

0

我会建议将SMTP服务器设置为仅限NTLM身份验证,然后作为服务器的授权用户运行该Web应用程序。除SMTP服务器的IP之外,不存储凭证。

显然,如果您使用的是Gmail,这不是一个选项,在这种情况下,将其存储在您自己的单独部分中,并使用加密的用户名和密码。然而,你可能会争辩说,如果他们有权访问你的网络配置,他们很可能访问你的源文件或去编译的二进制文件。

相关问题