我正在使用 mutt 和 Outlook365,它支持 OAuth2。我生成了一个访问令牌,该令牌由我的 muttrc 中的以下几行进行检查:
set imap_authenticators = "xoauth2"
set imap_oauth_refresh_command = "~/.config/neomutt/mutt_oauth2.py ~/.config/neomutt/mytoken.token"
set smtp_authenticators = ${imap_authenticators}
set smtp_oauth_refresh_command = ${imap_oauth_refresh_command}
哪儿mutt_oauth2.py
是脚本由 mutt 提供,mytoken.token
是相应生成的GPG加密令牌。
我的问题是,gpg-agent.conf
出于安全原因,我对 gpg 密码进行了限时缓存设置。如果超时并且我尝试发送一封电子邮件,我会遇到Authenticating (XOAUTH2)...
后跟 的情况No authenticators available
,并且该电子邮件将不会发送。
如果我出于其他目的(通过)在系统上的其他位置输入我的 gpg 密码pinentry-curses
,然后尝试再次发送,则身份验证工作正常,因为密码现在(暂时)在缓存中。
所以我的问题是为什么 mutt 在尝试发送时不提示我输入 gpg 密码,我该如何做到这一点?
提前致谢。