2009-08-15 90 views
2

我使用javamail來檢查IMAP收件箱,目前我只是通過存儲用戶名和密碼登錄到IMAP服務器。然而,我們的工作安全政策要求這樣做。Javamail,IMAP和Kerberos

我一直在閱讀了關於JavaMail的,IMAP和Kerberos,以及一些資源說這是不可能的,而其他人認爲這是可能的。不幸的是,我找不到任何示例顯示如何通過連接。 Kerberos的。

我只是想知道,如果有人可以確認/否認是否有可能通過連接到IMAP服務器。 kerberos與javamail,如果有人遇到任何可能有用的資源,將非常感激。

謝謝,

馬丁。

回答

4

這是理論上的可能在Java 1.5或更高和Kerberos V5由JavaMail IMAP providermail.imap.sasl.mechanisms屬性設置爲GSSAPIdocs),並使用JAAS and Java GSS API進行身份驗證,但它是實現絕對的婊子。

我通過上面的鏈接去以及this tutorial,我種了它在開發環境中工作,但結果卻是非常脆。現在我並不是暗示這是Sun的實施過錯 - 我確定這是我的;但缺乏可用的例子表明這可能不是經過時間考驗的生產就緒解決方案。

幸運的是我,我不會受到外部的安全策略:-)所以我最終通過SSL使用IMAP,而不是它是無限更直接的約束。

+0

謝謝,我會給這個鏡頭,看看它是多麼穩定!你必須自己實際執行嗎?通過這些鏈接,它只是看起來像設置mail.imap.sasl.enable爲true,mail.imap.sasl.mechanisms到GSS的情況? – user156966 2009-08-15 20:34:00

+0

Javamail-wise - 是的,儘管您也可能需要根據您的設置來設置「mail.imap.sasl.authorizationid」。這個「脆弱」的部分是試圖讓它實際上與你的郵件服務器一起工作。我已經在開發環境dovecot的,即使我能蠻好通過雷鳥連接到它,花了很多的麻煩得到的JavaMail與它合作。這是前一陣子,所以情況可能已經自那時以來有所改善,但我記得我已經受夠了各種'javax.security.sasl中的發揮。*'屬性來獲取它的工作。 – ChssPly76 2009-08-15 21:14:45