2017-02-18 54 views
0

作爲G套件帳戶的管理員,有沒有辦法通過Google Drive API訪問域用戶的G Drive數據,但通過授權屏幕? 換句話說,OAuth2.0是爲每個用戶設置的,無需用戶直接與Google進行交互。G套件帳戶,訪問用戶的驅動器

如果可能的話,C#中的Web代碼示例將有所幫助。 謝謝 B

+0

我不確定這是否可以使用Drive API完成,但您可以嘗試使用Admin SDK。您可以使用此功能創建[雲端硬盤活動報告](https://developers.google.com/admin-sdk/reports/v1/guides/manage-audit-drive),並使用[數據傳輸API](https)傳輸數據://developers.google.com/admin-sdk/data-transfer/)。希望這可以幫助。 –

回答

0

使用service accountdomain-wide delegation正是你正在尋找。

服務帳戶用於冒充用戶,避免授權用戶的人爲交互。

根據您使用的scopes,您可以定義應用程序的訪問級別。您可能會找到樣品here

+0

嗨cjlallana, 感謝您的回答。我按照你的建議做了,而且男人也這麼做了。 但是,當涉及到大文件時存在速度問題,所以我們想到了使用JS進行上傳。 這意味着,不是讓用戶首先上傳到我們的服務器,然後我們將在服務器端調用API,它將直接上傳到存儲。 問題是JS暴露給最終用戶,這是我們試圖避免的。有沒有一種方法可以通過服務帳戶在服務器上驗證用戶,然後在JS中建立連接並執行所需的操作?也許可以隱藏JS? – Shnetz

+0

不幸的是,沒有安全風險的Javascript使用服務帳戶,就像你提到的那樣,因爲你會暴露你的客戶機密。 - 對於上傳大文件,建議使用Resumable Uploads,它可以將文件分塊成較小的部分,但我不確定這是否會使上傳速度更快:https://developers.google.com/drive/v3/web/resumable-upload – cjlallana

+0

再次感謝。所以,你會推薦安全的原因使用服務器2服務器上傳,而不是JS?這種可恢復的作品是「火而忘記」的,因此用戶可以上傳並離開它進行處理?我假設服務器2服務器需要首先上傳到我們的服務器,然後到存儲?這會減慢過程,不是嗎? – Shnetz

相關問題