无法确定Sendgrid SMTP(Laravel)的用户名和密码

时间:2018-06-06 08:51:52

标签: php laravel environment-variables sendgrid

我在一个相当大的网站上工作,最近我们遇到了一个很大的漏洞,暴露了我们的.env细节。我们已经更改了所有API密钥,包括Sendgrid。

我遇到的问题是我们无法弄清楚MAIL_USERNAME和MAIL_PASSWORD变量的正确方案是什么。

他们提供的密钥是这样的:SG.<some characters>.<some characters>

在之前的.env中,MAIL_USERNAME设置为第一个“某些字符”,可能是密码是第二部分,尽管它们不允许我们查看API密钥。

MAIL_DRIVER=smtp
MAIL_HOST=smtp.sendgrid.net
MAIL_PORT=587
MAIL_USERNAME=<first part of API key>
MAIL_PASSWORD=<second part of API key>
MAIL_ENCRYPTION=tls

有人能告诉我,如果我在这里做一些完全愚蠢的事情,或者指出我的方向是正确的吗?

2 个答案:

答案 0 :(得分:3)

按如下所示修改 .env 文件:

MAIL_DRIVER=smtp
MAIL_HOST=smtp.sendgrid.net
MAIL_PORT=587
MAIL_USERNAME=apikey
MAIL_PASSWORD=SG.***.***
MAIL_ENCRYPTION=tls
MAIL_FROM_NAME="John Smith"
MAIL_FROM_ADDRESS=from@example.com

有关详情click here

用于创建API密钥click here

答案 1 :(得分:2)

由于您使用的是SMTP with your API Key,因此您的用户名应该是文字字符串apikey,而您的密码是完整的API密钥,整个SG.*.*