【问题标题】:Create Google Drive folder on behalf of users using Google Service account使用 Google 服务帐户代表用户创建 Google Drive 文件夹
【发布时间】:2017-04-26 15:04:50
【问题描述】:

我创建了一个服务帐户并想代表其他用户创建文件夹。我正在使用 Google Drive API v3 (PHP)。

我可以在我的服务帐户下创建一个文件夹,并尝试将所有权转让给其他用户。但它不能工作,并显示未经授权的访问。

https://developers.google.com/api-client-library/php/auth/service-accounts 中,它提到“您的应用程序现在有权以您域中的用户的身份进行 API 调用(以“模拟”用户)。当您准备进行授权的 API 调用时,您指定要模拟的用户。 ”。我不知道该怎么做。

此外,我注意到一个函数“$client->setSubject($email)”,但我也无法使其工作。

请多多指教和帮助。

【问题讨论】:

    标签: php google-drive-api google-oauth


    【解决方案1】:

    首先,在您执行任何其他操作之前,请确保您了解服务帐号只能模拟其 Gsuite 域中的用户。他们不能冒充 xxx@gmail.com 用户

    假设您确实想冒充 Gsuite 用户, 见https://developers.google.com/api-client-library/php/auth/service-accounts 上面写着

    如果您已委派服务帐户的域范围访问权限并且 你想模拟一个用户帐户,指定电子邮件地址 使用方法 setSubject 的用户帐户:

    $client->setSubject($user_to_impersonate);

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-09-30
      • 2020-12-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多