是starttls.enabled = true对于从Java代码发送邮件是安全的吗? [英] is starttls.enabled = true is safe for mail sending from java code?

查看:49
本文介绍了是starttls.enabled = true对于从Java代码发送邮件是安全的吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在从Java代码发送电子邮件.我的配置是

I'm sending emails from java code.My configuration is

 props.put("mail.smtp.starttls.enable", "true");
 props.put("mail.smtp.host", "****"); 
 props.put("mail.smtp.auth", "true");
 props.put("mail.smtp.port", "587");

关于我的其他问题 EJP 回答

在STARTTLS之后,所有使用STARTTLS的协议都处于SSL模式发出命令

Any protocol that uses STARTTLS is in SSL mode after the STARTTLS command is issued

但是我的调试输出显示:DEBUG SMTP:尝试连接到主机"****",端口587,isSSL为false.

But my debug output shows:DEBUG SMTP: trying to connect to host "****", port 587, isSSL false.

所以我的问题听起来像

这样的配置真的很安全吗,并且使用 SSL 作为 EJP 所说的,尽管isSSL = false在我的调试输出上?

Is such configuration really safe and uses SSL as EJP said despite of isSSL=false on my debug output?

更新

连接代码

 Transport transport = session.getTransport("smtp");
 transport.connect("host", 587,"username", "password");

当我写 Transport transport = session.getTransport("smtps")

javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection

推荐答案

设置 mail.smtp.starttls.required = true 这样可以确保使用TLS或不会发生连接REF: https://javamail.java.net/nonav/docs/api/com/sun/mail/smtp/package-summary.html

Set mail.smtp.starttls.required=true This ensures TLS is used or connection won't happen REF: https://javamail.java.net/nonav/docs/api/com/sun/mail/smtp/package-summary.html

这篇关于是starttls.enabled = true对于从Java代码发送邮件是安全的吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆