SendGrid的身份验证问题

时间:2013-04-25 14:40:51

标签: cloudbees

我通过Cloudbees注册了Sendgrid。我试图通过sendgrid SMTP API发送一封电子邮件,其中包含以下属性:

 port=587 
 host=smtp.sendgrid.net 
 username=[username generated by cloudbees, cloudbees_[myid] ]
 password=[the password i login to cloudbees grandcentral]

我得到以下例外。

Caused by: javax.mail.AuthenticationFailedException: 535 Authentication failed: Bad username / password
at com.sun.mail.smtp.SMTPTransport$Authenticator.authenticate(SMTPTransport.java:823) 
at com.sun.mail.smtp.SMTPTransport.authenticate(SMTPTransport.java:756) 
at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:673) 
at javax.mail.Service.connect(Service.java:295) 
at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:389) 

... 38更多

密码应该是什么?用户名是否错误?

提前致谢, 人

2 个答案:

答案 0 :(得分:1)

不要使用您的cloudbees凭据连接到sendgrid,而是运行时注入的(读取http://wiki.cloudbees.com/bin/view/RUN/SendGrid)。您还应该使用资源绑定将Sendgrid直接注入为JNDI JavaMail会话,因此您的设置更简单

答案 1 :(得分:1)

您使用了错误的凭据登录.Cloudbees将您的SendGrid用户名和密码存储在环境变量中。按如下方式访问它们:

host = System.getProperty("SENDGRID_SMTP_HOST");
username = System.getProperty("SENDGRID_USERNAME");
password = System.getProperty("SENDGRID_PASSWORD");