Django 1.7邮件API"不安全"吗?

Lui*_*lli 5 django

通过看到这个答案,我了解到谷歌阻止某些应用程序连接,由于这些应用程序"缺乏现代安全标准的应用",我可以让谷歌允许我的帐户从这些应用程序连接 - 我必须明确地这样做.

这是由于Django邮件中的一个问题:

send_mail(
        u"Message",
        render_to_string('template.txt', {'data': data}),
        settings.EMAIL_HOST_USER,
        [dest['address'] for dest in settings.FORM_DESTINATIONS],
        html_message=render_to_string('template.html', {'data': data}),
)
Run Code Online (Sandbox Code Playgroud)

我的EMAIL_设置涉及@ gmail.com帐户(SSL/465或TLS/587都不起作用).

这是否意味着Django 1.7有一个不安全的邮件机制?在这种情况下,"安全"是什么意思,Django没有应用哪些邮件标准?

编辑即使我提供了这个问题的背景(一个尖锐的答案和相关的链接/文档),也许一些读者可能找不到谷歌在哪里谈论"安全"/"不安全"的应用程序.通过使用您的Google帐户凭据输入此处,可以选择通知此页面的 "安全性较低的应用",该页面具有"更多信息"链接,指向此处(此链接不需要身份验证).

Dan*_*per 2

使用 Django 通过 SMTP 发送电子邮件需要您在服务器上以纯文本形式存储密码。显然,Google 认为以纯文本形式存储密码存在安全风险,并希望您使用 OAuth 2.0 或带有应用程序特定密码的两因素身份验证。请参阅 http://googleonlinesecurity.blogspot.de/2014/04/new-security-measures-will-affect-older.html

您可以决定是否认为将纯文本形式的电子邮件密码存储在服务器上存在安全风险。请记住,您通常也以纯文本形式存储数据库密码,因此当攻击者能够读取您的应用程序设置时,无论如何游戏都结束了。

我建议启用两因素身份验证并使用应用程序特定密码,特别是如果您使用该 Google 帐户不仅仅是从服务器发送邮件的话。