增强了 Google 表格的第三方访问
Enhanced third-party access for Google Sheets
随着对 Google 工作表的第三方访问保护的更改,对可视化 API 的调用现在需要 OAuth 凭据,除非将电子表格共享到 "anyone who has the link can view"。 (Google Developers Blog Post)(Google Charts Authorization)
这是否仍然适用于共享给 "anyone at domain with the link can view" 的电子表格?如果是这样,我如何在不提示最终用户访问其云端硬盘或电子表格的情况下获得 OAuth 凭证?是否可以使用服务帐户传递凭据?我们不想提示每个使用该应用程序的用户,因为它已获得 Google 应用程序管理员的授权并使用服务帐户执行。
这是否仍然适用于共享给“域中具有 link 的任何人都可以查看”的电子表格?
在此documentation中声明:
Google Sheets requires end-user credentials to access private
spreadsheets via the Google Visualization API ("/tq requests")
但请注意:
Spreadsheets shared to "anyone who has the link can view" do not
require credentials. Changing your spreadsheet's sharing settings is
much easier than implementing authorization.
因此,如果您的电子表格共享给“拥有 link 的任何人都可以查看”,您将不受 2016 年 9 月 14 日开始的此更新的影响。
有关详细信息,请查看此 thread。
"Anyone at domain with the link can view" 仍然需要 OAuth 凭据,因为应用程序正在访问非 public 数据。如果您使用全域委托和服务帐户模拟,您只需在后端生成一个访问令牌并将其在请求中传递给 /tq
端点。
随着对 Google 工作表的第三方访问保护的更改,对可视化 API 的调用现在需要 OAuth 凭据,除非将电子表格共享到 "anyone who has the link can view"。 (Google Developers Blog Post)(Google Charts Authorization)
这是否仍然适用于共享给 "anyone at domain with the link can view" 的电子表格?如果是这样,我如何在不提示最终用户访问其云端硬盘或电子表格的情况下获得 OAuth 凭证?是否可以使用服务帐户传递凭据?我们不想提示每个使用该应用程序的用户,因为它已获得 Google 应用程序管理员的授权并使用服务帐户执行。
这是否仍然适用于共享给“域中具有 link 的任何人都可以查看”的电子表格?
在此documentation中声明:
Google Sheets requires end-user credentials to access private spreadsheets via the Google Visualization API ("/tq requests")
但请注意:
Spreadsheets shared to "anyone who has the link can view" do not require credentials. Changing your spreadsheet's sharing settings is much easier than implementing authorization.
因此,如果您的电子表格共享给“拥有 link 的任何人都可以查看”,您将不受 2016 年 9 月 14 日开始的此更新的影响。
有关详细信息,请查看此 thread。
"Anyone at domain with the link can view" 仍然需要 OAuth 凭据,因为应用程序正在访问非 public 数据。如果您使用全域委托和服务帐户模拟,您只需在后端生成一个访问令牌并将其在请求中传递给 /tq
端点。