0

我們正在Google Apps Marketplace上構建一個應用程序,該應用程序位於GMail之上,並讀取客戶電子郵件以提供分析數據。從我所瞭解的文檔:在我們的應用授予域名訪問權後,我們獲取GMails的最佳方式是什麼?

  1. 當客戶帳戶的IT管理員安裝我的應用程序時,我的應用程序詢問所需的權限,然後授予OU/Org。
  2. 現在我有兩種情況:
    • a。用戶創建Google+登錄以訪問我的網站上的電子郵件
    • b。我們的服務可在後臺運行分析,並在必要時提供通知/報告。

我希望能夠做到這一點,而無需再次詢問每個用戶的權限。爲所有用戶提取特定客戶域的電子郵件的方法是什麼?如果我按照正常的「服務器認證」流程,我需要一個刷新令牌,我需要access_type = offline,它總是提示授予請求,如果我使用服務帳戶,我會收到一個HTTP 500「Backend Error」 App Engine本地開發服務器。

在我投入時間走向任何道路之前,我想確定最佳實踐是什麼。 GMail API文檔討論服務對象,但沒有提及服務帳戶或諸如AppAssertionCredentials之類的內容。

回答

0

使用服務帳戶是正確的方法,並且可以在新的Gmail API中使用服務帳戶。不幸的是,500錯誤不是非常具有描述性,但請嘗試重新閱讀服務帳戶文檔,並檢查是否正確安裝了所有設備。

0

可以使用服務帳戶完成此操作,並讓域管理員在cPanel中將您的應用列入白名單。它需要與鑰匙的工作一點點地形成JWT要求以請求在域$ RANDOM_USER憑證集,但它的解釋相當不錯的: https://developers.google.com/accounts/docs/OAuth2ServiceAccount#formingclaimset

一旦你做到了這一點,使用Gmail工作API應該看起來與用戶直接訪問時相同。

相關問題