2013-02-12 55 views
3

我正在使用Fusion表來存儲一些地理數據。我想允許用戶使用他們的Google帳戶訪問[讀/寫]到此表。任何人都可以讓我知道如何做到這一點?如何允許用戶使用他們的Google帳戶訪問[讀/寫]私人融合表

我嘗試使用OAUTH2.0 [使用this作爲參考]並使用客戶端憑證來執行此操作。但是,似乎表格是在用戶帳戶中創建的,而不是由管理員帳戶創建的。

回答

0

首先要注意:如果你希望顯示在您的網頁(使用FusionTablesLayer會)你唯一的選擇是分享你的表作爲公衆在谷歌地圖這個數據。這意味着讀取所有人。沒有解決方法。和它一起生活。

對於寫入權限:您可以使用Google Drive API在融合表上設置權限。 https://developers.google.com/drive/v2/reference/permissions/insert 您需要首先使用您的管理員帳戶創建融合表(我認爲服務帳戶更合適),然後使用權限訪問訪問您網頁的人。

+3

作爲「Google Maps API for Business」客戶,您可以使用FusionTablesLayer訪問私人表:http://support.google.com/fusiontables/answer/2459324。所以*有*解決方法:) – Odi 2013-02-12 16:14:56

+0

謝謝。我認爲現在我會使用@sanya建議的方法。 – usp 2013-02-12 20:41:51

+0

Mea culpa,Odi!那是對的。 :) – sanya 2013-02-13 06:43:47

3

我知道這個問題有點老,但我想我會爲更多的搜索者提供一個答案。

從根本上說,Google Fusion可以作爲私人數據庫,通過綁定到Google Apps商業帳戶的Google Apps服務帳戶訪問。

服務帳號:創建一個應用程序&轉到https://console.developers.google.com/project/[appname]/permissions &給你的應用程序的電子郵件地址的所有權(在權限部分);要使用服務帳戶(用於2LO認證),然後點擊'創建新客戶端ID'&,然後生成一個新的P12密鑰,您將在您的應用程序中使用該密鑰,如果您還生成JSON密鑰,該密鑰中的文本將包含您稍後需要的電子郵件地址。

GOOGLE APPS:https://admin.google.com/[AppDomain]/AdminHome?fral=1 在管理控制檯中轉到安全&選擇'管理API客戶端訪問'。 API客戶端名稱應取自前面步驟生成的JSON文件;範圍應與您在設置服務帳戶憑證對象時在代碼中使用的範圍相匹配。如果您查看Google Code Playground(https://developers.google.com/oauthplayground/),您將看到所有可能的API範圍的確切拼寫&設置。有關Fusion Tables的範圍是目前https://www.googleapis.com/auth/fusiontables

融合表:融合表現在需要企業管理員的電子郵件帳戶作爲一個編輯

現在一切都應該建立從代碼中訪問私有融合表。許多示例代碼位於:https://developers.google.com/oauthplayground/

+0

謝謝@amelvin。你知道服務賬戶是否可以創建融合表?我似乎遇到了其他人遇到的問題(在桌面資源上發佈了403個問題),但是關於這個主題的所有問題仍然沒有答案多年。 – scipilot 2015-10-17 08:02:06

+2

忽略 - 我正在使用錯誤的範圍! – scipilot 2015-10-17 08:15:26

相關問題