在为sendgrid设置电子邮件配置时我发疯了。
我关注了steps for configuring Email OTP。 当我尝试不发送电子邮件和在日志中时,我发现以下异常:
[2019-01-23 13:15:42,756] ERROR {org.wso2.carbon.event.output.adapter.email.EmailEventAdapter} - Event dropped at Output Adapter 'EmailPublisher' for tenant id '-1234', Error in message format, null
javax.mail.AuthenticationFailedException
at javax.mail.Service.connect(Service.java:306)
at javax.mail.Service.connect(Service.java:156)
at javax.mail.Service.connect(Service.java:105)
at javax.mail.Transport.send0(Transport.java:168)
at javax.mail.Transport.send(Transport.java:98)
at org.wso2.carbon.event.output.adapter.email.EmailEventAdapter$EmailSender.run(EmailEventAdapter.java:306)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
整个文档有关如何 将Gmail配置为电子邮件OTP提供者。我已经根据对基本文档的了解完成了配置。
请在我尝试过的/repository/conf/identity/application-authentication.xml配置中的部分下找到配置:
<AuthenticatorConfig name="EmailOTP" enabled="true">
<Parameter name="GmailClientId">gmailClientIdValue</Parameter>
<Parameter name="GmailClientSecret">gmailClientSecretValue</Parameter>
<Parameter name="SendgridAPIKey">S********1sLhYrS4_h7J1ehoBWA</Parameter>
<Parameter name="GmailRefreshToken">gmailRefreshTokenValue</Parameter>
<Parameter name="GmailEmailEndpoint">https://www.googleapis.com/gmail/v1/users/[userId]/messages/send</Parameter>
<Parameter name="SendgridEmailEndpoint">https://api.sendgrid.com/api/mail.send.json</Parameter>
<Parameter name="accessTokenRequiredAPIs">Gmail</Parameter>
<Parameter name="apiKeyHeaderRequiredAPIs">Sendgrid</Parameter>
<Parameter name="SendgridFormData">SendgridFormData</Parameter>
<Parameter name="SendgridURLParams">sc</Parameter>
<Parameter name="GmailAuthTokenType">Bearer</Parameter>
<Parameter name="GmailTokenEndpoint">https://www.googleapis.com/oauth2/v3/token</Parameter>
<Parameter name="SendgridAuthTokenType">Bearer</Parameter>
<Parameter name="redirectToMultiOptionPageOnFailure">false</Parameter>
</AuthenticatorConfig>
我认为sendgrid的记录不正确,或者找不到。有人可以为它提供一些参考或解决方案吗? 提前致谢。
答案 0 :(得分:2)
当Gmail阻止外部方登录该帐户时,将引发此错误。在https://myaccount.google.com/security上选择“缺乏安全的应用程序访问权限”将解决此问题。