[筆記]設定Google API 讓OwnCloud 可以提供 External Storage 服務
本文于2135天之前發表,文章內容可能已經過時。
設定Google API 讓OwnCloud 可以提供 External Storage 服務
之前因為要測試私有雲的關係,所以弄了一台 OwnCloud 起來玩
但是因為機器放在ESXI 上,已經沒有太大的空間可以來丟東西,而且畢竟只是測試用,開那麼大的空間好像也不太對
後來看到一些文章,說OwnCloud 有支援External Storage 的選項,可以把Amazon S3 / Google Drive/WebDAV 這些空間MOUNT進來變成自己的儲存空間
形成一個沒有 local storage 的private cloud
底下簡單說明測試 設定Google API 讓OwnCloud 可以提供 External Storage 服務 的步驟
owncloud 基本安裝設定可以參考 [筆記] CENTOS 7+OWNCLOUD+LDAP+AD 認證設定 這篇
登入OwnCloud 的管理者介面,到應用程式確認 External Storage 選項有啟用 p.s 不知道為何,要進入應用程式這個選項都要很久很久….
再來先登入 Google Develop Console,選擇左邊選單的API和驗證–>API ,當然前提是在這邊要先建立好專案等等的基本設定,這部分就不多提
點API之後,右邊會列出現在系統上有提供的API,預設應該是沒有啟用 Drive API / Drive SDK
所以要去啟用,
啟用之後,在畫面上就可以看到 Drive API 之後多了個齒輪的圖示
點齒輪進去看看狀況!
沒有啥東西,所以點那個前往原始控制台看看,這裡就有一些選項需要設定了
首先輸入 Application Name ,然後要選擇Icon
下面還有一些選項,可以看情況決定要不要點選,不過就算都沒勾選,也不會影響owncloud 作業就是
Open URL 是必填選項,不過因為不知道要填什麼,所以我把等下才要用到的URL貼過來
http://you_owncloud_server_hostname/owncloud/index.php/settings/personal
存檔之後,進行下一步
在左邊選單選擇 API Access ,然後點選那個大大的藍色的 Create an OAuth 2.0 client ID
接下來要填一些選項, Application type 選 Web application
其他部分其實可以先不管,等下再來修改。
上面的步驟完成後,就會看到底下片這樣的畫面,右邊會有個 edit setting ,進去編輯
編輯 Authorized Redirect URIs
這邊參考官方文件 http://doc.owncloud.org/server/6.0/user_manual/external_storage/google_drive.html
需要輸入
https://your-internet-domain/owncloud/index.php/settings/personalhttps://your-internet-domain/owncloud/index.php/settings/admin
有沒有 https 無所謂,重點是你要能夠用 hostname 連這台 OwnCloud ,不能用 IP (不管是 Public / Private 都不行,google API 不接受 )
下面那個 Authorized Java Script 就不管他了,預設會幫你改成上面的 hostname ,我是順手再把他改回 example.com
接著回到 OwnCloud 的管理介面
在External Storage 部分選擇新增 類型選擇 Google Drive
再填入 Client ID和 Client Secret ,這邊要特別注意複製、貼上時候是不是選擇了完整的字串,不能多也不能少
曾經在這邊卡關一個多小時,一直認證失敗,後來發現網路上有人說 Client Secret 最後面會多一個空格,要手動刪除……..
不過我後續操作也沒有碰到類似狀況了(Google 好像還在持續改操作介面,寫這篇的時候,跟我最早開始操作的畫面就不太一樣)
總之,要複製貼上時,最好都先貼到記事本去確認
輸入完 Client ID / Client Secret 之後,點一下允許存取,會跳到 Google 要求驗證的畫面,在那邊點確定(忘了截圖)
再回來看,就可以看到燈號變成綠色,可以運作了。
繼續指定這個空間給要開放的群組,設定就算完成了。
測試一下在網頁上新增一個 test.txt ,在 Client 端當然也會跟著自動更新!
不過不知道為什麼,這次的同步時間比較久,記得上次測試是正常的,可能還要再觀察看看!
底下是分別在 Server上傳一個 1.png & 在 Client 貼上一個 png 檔案後的狀況,還是可以同步,但是中間大概等了一分鐘…(是我太貪心了嗎? ….)