我正在開發一個開源的Node模塊,需要訪問每個用戶的私有Google雲端硬盤文件。我一直試圖圍繞所有這些不同的身份驗證類型進行打包,並且走到了路障。從我收集的,有兩種主要類型的認證在沒有OAuth2重定向/複製和粘貼的情況下訪問私有Google雲端硬盤數據
我,圖書館作者,提供我的圖書館需要用的OAuth2每個用戶進行身份驗證的公鑰和私鑰。這意味着給他們一個URL來讓我的應用訪問他們的數據,並讓他們將訪問碼複製並粘貼回他們的終端。我能夠運行this教程並使其運行,但由於必須使用我的庫進行打包,並且不必要的困難,所以此方法看起來很危險。
讓用戶轉到Google API控制檯,獲取他們自己的API密鑰,並通過某種配置文件將其提供給我的庫。沒有URL重定向,沒有複製和粘貼,只有他們有權訪問的一些私人憑證。
2聽起來好多對我說:這個圖書館有絕對無關,與我,一旦它在用戶的手中,所以感覺不正確,讓他們與我進行身份驗證。但是從我所能找到的方面來看,使用Google API執行此操作的唯一方法是創建一個Google服務帳戶,下載它們提供給您的JSON,通過類似於this博客文章的頂級評論的流程,然後手動給出服務帳戶電子郵件訪問我的個人Google雲端硬盤文件。這看起來很詭異,而且還有很多工作要獲得我自己的私人數據。有沒有更好的方法來解決這個問題?我覺得這很奇怪,在其他API中這種相當標準的流程只能通過服務帳戶在Google的API中使用,但也許有一種方法,我只是沒有看到它。我對身份驗證相當陌生,因此,任何幫助都是值得讚賞的。謝謝!
我該如何去讓每個用戶使用OAuth2?我認爲OAuth2會成爲我給他們一個Url的地方,並且該網址說「給Weston許可做x,y和z」。但是,如果這不是我在URL中給出的憑證,那有什麼意義?有沒有辦法使用OAuth2進行身份驗證,而無需複製和粘貼網址? – Weston
當他們下載您的項目時,他們將不得不獲得一個配置文件或一些地方,他們可以從Google Developer控制檯添加他們自己的憑據。 – DaImTo
所以它會是相同的流程(給他們一個URL,他們複製並粘貼回控制檯),但OAuth屏幕只會說「給我[自己]許可做x,y和z」?似乎很奇怪必須這樣做,我想有一種方法可以通過編程來完成所有這些,就像在服務帳戶流程中一樣。 – Weston