我们可以在PHPmailer中实施哪些安全措施,使其成为一个更安全的Gmail应用程序? https://support.google.com/accounts/answer/6010255 我正在使用PHPmailer通过Gmail发送电子邮件。 PS:我不想为不太安全的应用程序启用"访问权限#34;在这里:https://www.google.com/settings/security/lesssecureapps,我想让应用更安全。
答案 0 :(得分:13)
Gmail已开始实施新的身份验证机制,用于替代SMTP身份验证以进行基于OAuth2的授权。可以找到有关其更改的文档here。
这并不能真正提高安全性,因为最终您仍然需要通过SSL提交您的用户名和密码(谷歌认为这种机制不安全)进行身份验证以获取OAuth令牌,这与现有的SMTP身份验证系统。
到目前为止,PHPMailer不支持这种新机制 - 欢迎PR!您需要一个OAuth2类,例如this one,并且可能会使用this code example。
与此同时,您做必须“为不太安全的应用启用访问权限”,您应该设置SMTPSecure = 'tls'
和Port = 587
并使用普通身份验证进行连接PHPMailer的。
自5.2.11版起,PHPMailer支持Gmail的XOAUTH2身份验证。见this guide。它在版本6.0中进行了扩展,以支持其他服务。