我正在学习python,所以我想我会尝试制作一个脚本,自动为我发送gmail电子邮件。在
它需要发送一个登录名和密码到我的gmail帐户,以自动发送一些电子邮件给我。在
我在这里读了一些指南,似乎passlib是个不错的选择。但我还是有点搞不清楚如何设置它。在
我正在使用SMTP库。在
server = smtplib.SMTP('smtp.gmail.com', 587)
server.ehlo()
server.starttls()
server.login(gmail_sender, gmail_passwd)
谢谢
starttls()调用设置加密的SSL/TLS连接,因此密码不会以明文形式发送。是的,在将密码发送给服务器登录名(). 或者,您可以将密码存储在一个环境变量中,并将其读入python,这样做不那么安全,但是更容易实现。在
Passlib在这里可能不是正确的选择。它主要涉及密码的单向散列。您可以使用生成的哈希来验证用户提供的密码是否与您的哈希匹配,但不能对哈希进行解密。(旧的Passlib版本确实有一个错误命名的
.encrypt()
方法,但是Passlib 1.7将其重命名为.hash()
)。在根据您的用例,您可能需要以下两种情况之一:
但是,如果需要从登录的桌面会话外部触发的脚本运行密码,则使用起来可能会很尴尬。在
在这种情况下,您可能需要加密用于存储的凭据,并选择一个密码(在调用脚本时提供,例如从命令行提示符或env var)来解密这些凭据。在
相关问题 更多 >
编程相关推荐