4

我正在使用 Google Apps 脚本开发应用程序,并使用一些高级服务,例如 Admin SDK (Directory API) 和 Reseller API。

似乎这些 API 是由我的 WebApp 在访问我的 WebApp 的用户的上下文中调用的(它部署为“以“用户访问 webapp”的身份执行应用程序)。

理想情况下,我希望这些 API 调用通过我的项目下的某个服务帐户(在开发控制台中)进行身份验证。可能吗?如何?

4

1 回答 1

7

当您的脚本作为“用户访问 webapp”运行时,它会根据您的配额运行用户数据。如果您想针对您的数据运行它,您需要更改设置以将应用程序作为“我”执行。

如果您需要执行混合身份验证模型,其中应用程序需要访问两个不同帐户的数据,您有一些选择。无论哪种方式,一个帐户都可以访问内置的 Apps 脚本服务,而另一个帐户将使用 API 的 REST 接口来访问其数据。

您可以以“我”身份运行该应用程序,然后为用户管理您自己的 Oauth。这可以通过 OAuth 库来完成,例如:

https://github.com/googlesamples/apps-script-oauth2

或者,您可以以用户身份运行应用程序并为您的服务器使用服务帐户。这是我为在 Apps 脚本中使用服务帐户而整理的一个库:

https://github.com/Spencer-Easton/Apps-Script-GSApp-Library

于 2015-04-08T18:13:11.190 回答