2009-12-08 98 views
2

昨天,IT部門對Exchange服務器進行了更改。我以前能夠使用imaplib從服務器獲取消息。但現在看來他們已經關閉了我使用的認證機制。從下面的輸出中,看起來服務器現在僅支持NTLM身份驗證。使用AUTH = NTLM對Exchange imap服務器驗證imaplib.IMAP4_SSL

>>> from imaplib import IMAP4_SSL 
>>> s = IMAP4_SSL("my.imap.server") 
>>> s.capabilities 
('IMAP4', 'IMAP4REV1', 'IDLE', 'LOGIN-REFERRALS', 'MAILBOX-REFERRALS', 
'NAMESPACE', 'LITERAL+', 'UIDPLUS', 'CHILDREN', 'AUTH=NTLM') 
>>> s.login("username", "password") 
... 
imaplib.error: Clear text passwords have been disabled for this protocol. 

問題:

  1. 我如何驗證到使用NTLM與imaplib IMAP服務器?我假設我需要使用IMAP4_SSL.authenticate(「NTLM」,authobject)來做到這一點?如何設置authobject回調。
  2. 由於SSL/TLS是連接服務器的唯一方式,因此重新啓用明文密碼身份驗證不應構成安全風險。正確?

連接到imap服務器的進程正在Linux上運行,BTW。所以我不能使用pywin32。

編輯:

我能找出1自己。但如何2:在IMAP over SSL中的明文密碼不是一個安全問題,是嗎?

回答

相關問題