我正在使用一个Fusion表来存储一些地理数据。我想要允许用户使用他们的Google帐户访问这个表的读/写。有没有人能告诉我怎么做?
我尝试使用OAUTH2.0 [使用this作为参考],并使用客户端凭据来完成此操作。但是,该表似乎是在用户的帐户中创建的,而不是管理员帐户。
发布于 2013-02-12 20:14:40
首先要注意的是:如果您想在want页面上的Google Map上可视化这些数据(使用FusionTablesLayer),您唯一的选择就是将您的表作为公共共享。这意味着每个人都有读访问权。没有变通方法。接受它吧。
对于写访问:您可以使用Google Drive API来设置您的融合表的权限。https://developers.google.com/drive/v2/reference/permissions/insert您需要首先使用您的管理员帐户创建融合表(我认为服务帐户更合适),然后使用权限授予访问您页面的任何人访问权限。
发布于 2015-06-29 21:18:38
我知道这个问题有点老了,但我想我会为更多的搜索者提供一个答案。
从根本上说,Google Fusion可以用作私有数据库,通过绑定到Google Apps Business帐户的Google Apps Service帐户进行访问。
服务帐户:创建一个应用程序,然后转到https://console.developers.google.com/project/[appname]/permissions并赋予您的应用程序电子邮件地址所有权(在权限部分);要使用服务帐户(用于2LO身份验证),请单击“创建新的客户端ID”,然后生成一个新的P12密钥,如果您还生成了JSON密钥,则该密钥中的文本将包含您稍后将需要的电子邮件地址。
谷歌应用程序:在管理控制台中的https://admin.google.com/[AppDomain]/AdminHome?fral=1进入安全并选择‘管理应用程序接口客户端访问’。API客户机名应该取自前面步骤生成的JSON文件;作用域应该与您在设置服务帐户凭证对象时在代码中使用的作用域相匹配。如果您查看Google Code Playground (https://developers.google.com/oauthplayground/),您将看到所有可能的API作用域的确切拼写和设置。对于融合表,作用域当前为https://www.googleapis.com/auth/fusiontables
FUSION表: fusion表现在需要业务管理员电子邮件帐户作为编辑者
现在,一切都应该设置为从代码访问私有融合表。上有大量示例代码:https://developers.google.com/oauthplayground/
https://stackoverflow.com/questions/14823426
复制相似问题