1

これは非常に具体的な質問であり、grails nabbleフォーラムでは運がなかったので、ここに投稿しようと思いました。grailsメールプラグインを使用していますが、私の質問は、サーバーからのメールゲートウェイとしてauthsmtpを使用することに関する一般的な質問だと思います。

authsmtpを使用してアプリからメールを送信できません。メールプラグインをインストールして設定し、元々はISPのSMTPサーバーを使用してメールを送信していました。ただし、AWS EC2にデプロイした場合、Elastic IPがSMTPホストによってブロックされたため、これは失敗しました。そこで、自分でauthsmtpアカウントを購入し、サーバーの電子メールアドレスをauthsmtpで承認済みのアドレスとして設定しました。

次に、SecurityConfig.groovyの構成を変更して、指定されたauthsmtpサーバーを指すようにしました...

   mailHost = "mail.authsmtp.com"
   mailUsername = "myusername"
   mailPassword = "mypassword"
   mailProtocol = "smtp"
   mailFrom = "valid-authsmtp-address@mydomain.com"
   mailPort = 2525

...そして、AWSにバックアップする前に、これをローカルで機能させようとしています。メールの送信に失敗し、ログに次の例外があります。

2010-02-13 10:59:44,218 [http-8080-1] ERROR service.EmailerService  - Failed to send emails: Failed messages: com.sun.mail.smtp.SMTPSendFailedException: 513 5.0.0 Your email system must authenticate before sending mail.

org.springframework.mail.MailSendException; nested exception details (1) are:
Failed message 1:
com.sun.mail.smtp.SMTPSendFailedException: 513 5.0.0 Your email system must authenticate before sending mail. at
com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1388)
       at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:959)
       at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:583)

構成で指定したユーザー名とパスワードが間違いなく正しいので、少し迷っています。

authsmtpサポートとの簡潔であまり役に立たない会話は、送信する前にMD5および/またはbase64でクレデンシャルをエンコードする必要があることを示唆しているので、私の質問は3つの部分に分かれています...

1)失敗で何が起こっているのか、なぜそのメッセージが表示されているのか、何か考えはありますか?2)authsmtpに渡すためにクレデンシャルをエンコードするにはどうすればよいですか?メールプラグイン用にそれを設定するにはどうすればよいですか?

4

2 に答える 2

0

Acegiプラグインを使用して電子メールを送信する場合、内部ではSpringJavaMailSenderImplが使用されます。そのドキュメントを見てください:

基になるJavaMailセッションは、プロパティ「mail.smtp.auth」をtrueに設定して構成する必要があることに注意してください。そうしないと、指定したパスワードがJavaMailランタイムによってメールサーバーに送信されません。使用するセッションを明示的に渡さない場合は、setJavaMailProperties(java.util.Properties)を使用してこの設定を指定するだけです。

したがって、SecurityConfig.groovyに次を追加します。

javaMailProperties = [ "mail.smtp.auth": true]
于 2010-02-22T12:00:03.047 に答える
0

Grailsメールプラグインを使用してこれに対する解決策を見つけられなかったので、私はまだ答えに興味がありますが、回避策を見つけまし。他の誰かがこの孤独な道を私をたどる場合に役立つかもしれません。

于 2010-03-12T15:09:40.913 に答える