You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jenkins Email Extension插件SMTP凭据配置异常求助

Jenkins Email Extension插件SMTP认证失败问题(标准邮件功能正常)

问题详情

  • 环境:Jenkins 2.426.3,Email Extension插件从2.104升级至2.105
  • 核心现象:Jenkins内置的标准邮件功能可正常发送,说明SMTP服务及凭据本身无问题;但Email Extension插件无论在配置中选择哪项凭据,发送邮件时均触发认证失败
  • 已尝试的排查操作:
    • 创建全局范围、系统范围的凭据
    • 更新插件至最新版本2.105
    • 删除并重建目标凭据
    • 查看INFO级别日志,无相关报错记录

插件调试日志如下:

Successfully created MimeMessage
Sending email to: xxx@example.com yyy@example.com
DEBUG: getProvider() returning jakarta.mail.Provider[TRANSPORT,smtp,org.eclipse.angus.mail.smtp.SMTPTransport,Oracle]
DEBUG SMTP: need username and password for authentication
DEBUG SMTP: protocolConnect returning false, host=smtp.example.com, user=jenkins, password=<null>
AuthenticationFailedException message: failed to connect, no password specified?

注意:实际凭据设置的用户名并非jenkins,且已配置有效密码。

解决思路

  • 确认插件SMTP认证配置开关
    进入Email Extension插件的配置页面,检查是否勾选了Use SMTP Authentication选项。部分场景下插件可能未自动继承全局邮件的认证配置,需手动开启该开关并重新选择凭据。

  • 验证凭据类型正确性
    确保使用的是Username with password类型的凭据,而非Secret text等单一字段类型。Email Extension插件需要同时读取用户名和密码,错误的凭据类型会导致插件 fallback 到默认的jenkins用户名且无法获取密码。

  • 开启更详细的DEBUG日志排查
    在Manage Jenkins > System Log > Log Levels中,添加javax.mail和hudson.plugins.emailext两个日志项并设置为DEBUG级别,查看凭据加载的完整流程,确认插件是否正确读取了目标凭据的用户名和密码。

  • 测试插件与Jenkins版本兼容性
    尽管已升级插件,但2.426.3是较新的Jenkins LTS版本,可尝试回退至Email Extension插件的2.103版本(若之前可用),或查看插件更新日志是否存在SMTP凭据读取相关的修复记录。

  • 临时直接填写SMTP账号信息测试
    暂时绕过凭据,在插件配置中直接填写SMTP用户名和密码(注意安全风险,测试后及时改回凭据方式)。若此方式能正常发送邮件,说明问题出在凭据读取环节,可能是权限配置或插件bug导致。

  • 检查凭据权限范围
    确认目标凭据的权限范围设置为System (Jenkins and nodes can access this),确保Jenkins系统用户具备读取该凭据的权限,过窄的权限范围会导致插件无法调取凭据内容。

内容的提问来源于stack exchange,提问作者dodo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 19:01:03