2014-02-19 52 views
0

我們希望爲我們的(基於Web的)個人文檔管理解決方案的用戶提供導入作爲附件發送到他們的GMail地址的文檔的可能性。如何避免訪問用戶的Gmail收件箱被計爲「黑客入侵」

我們目前的解決方案只允許我們的用戶在我們的Web應用程序中存儲他們的登錄憑證,然後使用它通過IMAP訪問用戶的GMail收件箱,這不僅是從安全角度來看並不理想(我們寧願不存儲登錄憑據,如果可能的話),它有時(也許當我們太頻繁輪詢或太多用戶的時候)導致我們的應用的登錄嘗試被GMail阻止。我們從IMAP服務器和用戶的報告中收到錯誤消息「[ALERT]請通過您的網絡瀏覽器登錄:http://support.google.com/mail/accounts/bin/answer.py?answer=78754」,他們發現GMail阻止了一些「可能的黑客攻擊」或類似行爲。

所以我的主要問題是:

  • 請問切換到OAuth進行身份驗證(和仍然使用IMAP來檢查我們的用戶的收件箱,只需驗證與OAuth憑證)幫助在這種情況呢?我找到了關於如何做到這一點的文檔,我只是想知道在這種情況下它是否會有所幫助。
  • 對於我們應該/允許輪詢用戶收件箱的頻率(或者我們向GMail並行打開多少個連接等),是否有任何指導/配額/限制?我在Googles網站的開發人員文檔中找不到任何關於此的信息。
  • 除IMAP之外,還有其他方法可以將GMail郵件中的附件導入我們的應用程序嗎?

回答

1

回答您的問題使用OAuth

1.Benefit是,你不存儲用戶的憑證directly.So你會重定向用戶到Google登錄頁面,谷歌將驗證用戶,並提供您的訪問令牌和刷新令牌,則可以使用訪問令牌和谷歌API訪問用戶的電子郵件。刷新令牌將重新生成該訪問令牌。

2.Since Gmail支持IMAP4協議與Idle,你可以用它來接受來自Gmail的服務器實時通知,當新郵件到來時(你不需要每次查詢的Gmail)

+0

我已經知道的OAuth是如何工作的,我們已經實施了Google Drive和其他服務。我的問題更傾向於如果通過OAuth驗證用戶的身份將有助於我們在這種情況下看到的錯誤消息。 – David

+0

我們有相當多的用戶將他們的GMail帳戶連接到我們的服務,所以如果我理解正確,保持IMAP Idle連接從我們的服務器打開到每個GMail都可能不會擴展。 – David

+1

OAuth肯定會幫助您擺脫現在正在獲取的錯誤,而不是始終打開IDLE連接,您可以在登錄到系統後爲每個用戶打開它。 – Cris