首页 > 解决方案 > Sendgrid 使用 API 密钥进行身份验证

问题描述

我从 SentGrid 收到以下邮件,

我们正在通过电子邮件通知您,即将要求您在 2020 年 12 月 9 日之前将使用 Twilio SendGrid 的身份验证方法更新为 API 密钥,以确保服务不间断并提高您帐户的安全性。我们的记录显示,您在过去 180 天内对您的 SendGrid 帐户的 1 位用户的一个或多个 API 请求使用了用户名和密码的基本身份验证。

为什么是 API 密钥?

这是为了增强我们所有用户的安全性。使用您的帐户用户名和密码进行身份验证不如使用 API 密钥安全。与您的用户名和密码不同,API 密钥是唯一生成的,可以设置为限制访问并为给定请求指定权限。

需要采取什么措施?

请按照以下步骤识别您的身份验证方法并将其替换为 API 密钥,然后实施双重身份验证 (2FA) 以增强安全性。如果不采取任何行动会发生什么?2020 年 12 月 9 日,我们将不再接受使用用户名和密码的基本身份验证,我们将要求 2FA 登录您的帐户。如果您在该日期之后尝试使用您的任何用户的用户名和密码验证您的 API 请求或 SMTP 配置,您的请求将被拒绝。我们要提前感谢您及时关注这些要求。如果您想了解有关如何增强帐户安全性的更多信息,请查看此帖子。如果您有任何问题或需要帮助,请访问我们的文档或联系我们的支持团队。谢谢 Twilio SendGrid 团队

目前我正在使用以下凭据向 sendgrid 发送邮件,

EMAIL_HOST = 'smtp.sendgrid.net'
EMAIL_USE_TLS = False
EMAIL_PORT = 587
EMAIL_HOST_USER = 'xx@gmail.com'
EMAIL_HOST_PASSWORD = 'xxx'''

Is this change affect me?

标签: pythonsendgrid

解决方案


是的,一旦他们强制进行两因素身份验证 (2FA),您的应用程序将无法仅使用用户名/电子邮件和密码进行基本身份验证。
因此,您需要开始使用 API 密钥。

迁移很简单:

  • 登录到 sendgrid 帐户
  • 转到https://app.sendgrid.com/settings/api_keys
  • “生成 API 密钥” - 生成新的 API 密钥并复制粘贴以供以后使用
  • 代码更改:
    • EMAIL_HOST_USER = 'apikey'(用户名只能是这个)
    • EMAIL_HOST_PASSWORD = 'YOUR_API_KEY'
  • 测试一下

如果更改有效,您就可以开始并从基本身份验证迁移到 API 密钥。


推荐阅读