我有两台使用 IMAP 收发电子邮件的计算机。所有设置表面上都相同,运行 Ubuntu 20.04 LTS,刚刚从 Thunderbird 68 升级到 78.7.1。我并排检查了“编辑帐户设置”,没有发现任何差异。这些机器在同一个网络上。
我没有保存几个电子邮件帐户的密码,但每次启动 Thunderbird 会话时,当系统要求输入密码时,我都会输入密码。在一台机器上,我只需输入一次密码,就可以整天发送电子邮件,没有任何问题。在另一台机器上,我必须每隔几分钟就重新输入密码。
看起来设置是一样的,但也许有一些隐藏的东西不存在。在寻找解决方案时,我遇到了这个,但它不太具描述性:
在记忆力差的机器上,我有几个奇怪的电子邮件帐户,但这似乎是区别所在(但这些是不同的帐户!)。在记忆力差的机器上,这些帐户的一些密码被保存了,就像 Thunderbird 的早期版本一样,没有任何问题。
我想知道是否存在可以调整的超时设置,或者这里是否遗漏了一些细微的东西。
答案1
[以防其他人在寻求帮助时偶然发现这个仍未解决的问题。]
错误报告
相关错误已发布在 mozilla 的 bugtracker bugzilla 上:
- 错误 1673446 于 2020-10-26 针对 TB 版本 78 开放:78.4.0 中的 imap 重复身份验证/密码(Yahoo OAuth + 其他未保存密码的 IMAP 帐户)
- 错误 1661337 于 2020-08-26 在 TB 版本 68 中出现 - 已关闭,原因是错误 1673446 重复:为一个帐户启用 OAuth2 后,其他帐户不会记住当前会话的密码(Yahoo OAuth2)
两个错误报告和大量评论的结合缩小了问题的范围,但遗憾的是该错误尚未修复。
仅供参考:此问题不仅限于 Linux 系统,也不限于 IMAP/POP3 中的任何一个。
可能的原因
我不打算对这些错误报告线程进行全面总结。
但是,问题似乎只发生在至少一个电子邮件帐户使用 OAuth2 方法时. 那么其他电子邮件帐户也会受到上述忘记密码问题的影响。
举个例子:
Yahoo 帐户使用 OAuth2 并可能导致该漏洞出现,但问题并不局限于该提供商。
在记忆力有问题的机器上,我还有更多奇怪的电子邮件账户,但这似乎就是区别所在(但这些是不同的帐户!)在健忘的机器上,这些帐户的一些密码会被保存,就像早期版本的 thunderbird 一样,没有任何问题。
@asylumax:如果这些“奇怪的电子邮件帐户”中至少有一个使用 OAuth2 方法,那么您很可能会遇到上述错误报告中描述的相同错误 - 我也是如此。
并非总是适用的解决方法
评论#96,#116和#124提示可能涉及设置“发送服务器(SMTP)设置”的解决方法。更具体地说,帐户设置为使用不同的SMTP 连接方法。
缺点
但是,并非所有电子邮件提供商都为我们提供多种可用的 SMTP 连接方法选择。帐户数量越多,应用此解决方法所需的不同 SMTP 连接方法总数就越多。因此,此解决方法不能被视为“真正的”解决方案。
对未来的希望
评论#116提出了一个更具体的假设:
当两个或多个帐户共享相同的 SMTP 连接方法时,OAuth2 模块可能会与 STARTTLS(或 SSL/TLS)混淆。
上述解决方法可以看作是这一假设的证据。这表明该错误位于 OAuth2 模块的某个地方……
更彻底地搜索漏洞的引入点莫兹回归正如评论中所建议的#125可以进一步查明确切原因,但这需要比我更多的空闲时间……
希望其他人能抽出时间完成这个过程并修复这个烦人的错误 – 并且不留下任何缺陷。