2014-09-30 78 views
4

我一直在使用Google 2因素验证,并配置了多个应用程序。其中之一是offlineimap(这里我下载的邮件),但是当我使用mu4e撰写邮件,我得到以下错误:使用Google双因素验证与mu4e和Gmail时出错

Sending failed: 534-5.7.9 Application-specific password required. 
Learn more at 534-5.7.9 
http://support.google.com/accounts/bin/answer.py?answer=185833 

我有一个〜/ .authinfo.gpg配置(并解密成功手动),我的〜/ .offlineimaprc调用get_password_emacs(我使用的示例可以找到here)。

我甚至试图跳过GPG片,看看它的工作原理,直接使用我mu4e谷歌应用程序密码在〜/ .offlineimaprc,但我结束了相同的结果。

我的〜/ .authinfo.gpg文件:(这里解密,敏感信息已删除)

machine imap.gmail.com login [email protected] port 993 password GoogleAppPassword 
machine smtp.gmail.com login [email protected] port 587 password GoogleAppPassword 

我的〜/ .offlineimaprc文件:

[general] 
accounts = Gmail 
maxsyncaccounts = 3 
pythonfile = ~/.offlineimap.py 

[Account Gmail] 
localrepository = Local 
remoterepository = Remote 

[Repository Local] 
type = Maildir 
localfolders = ~/Maildir 

[Repository Remote] 
remotehost = imap.gmail.com 
remoteuser = [email protected] 
remotepasseval = get_password_emacs("imap.gmail.com", "[email protected]", "993") 
ssl = yes 
maxconnections = 1 
realdelete = no 
holdconnectionopen = true 
keepalive = 60 
type = IMAP 

和我的〜/ .offlineimap.py

#!/usr/bin/python 
import re, os 

def get_password_emacs(machine, login, port): 
    s = "machine %s login %s port %s password ([^ ]*)\n" % (machine, login, port) 
    p = re.compile(s) 
    authinfo = os.popen("gpg -q --no-tty -d ~/.authinfo.gpg").read() 
    return p.search(authinfo).group(1) 

任何人都可以看到我遇到的问题吗?我已验证〜/ .authinfo.gpg文件解密成功,并且我的Google应用密码正确。

谢谢你的时间。

+1

不知道人们为什么低调这一点,但它仍然是一个问题。暂时因为这个问题暂时停止使用mu4e。 – 2015-06-18 18:23:53

+1

Upvoted因为现在我面临同样的事情。 – tamouse 2015-10-05 20:35:00

+0

你大概可能面对与我一样的事情。您需要验证gpg会话,否则您的“gpg -q ...”解密将失败。尝试设置一个gpg代理并查看它是否有效。 – sanatana 2015-11-03 13:33:13

回答

1

using my mu4e Google App Password directly in the ~/.offlineimaprc

这就是问题所在。你不应该直接使用密码。对于不接受第二个因子令牌的遗留应用程序,您需要使用应用程序特定的密码。这是你从这个URL生成一个密码:

https://security.google.com/settings/security/apppasswords

而且你在你的真实密码的lieue使用生成的密码。但是,您应该注意,这些特定于应用程序的密码授予您对帐户的完全访问权限。因此,使用应用密码会大大降低您在帐户中启用双因子功能所获得的保护。

+0

我这样做了 - 我不是试图在这里使用我的真实Google密码,而是在该网站生成的应用程序密码。这就是我所说的“Google App Password”。 – 2014-10-01 12:42:42

+0

尝试使用裸露的Google应用密码来测试其是否正常工作与在正常操作下使用它不同。 – tamouse 2015-10-05 20:36:37

相关问题