1

我想访问其他用户使用 SA 帐户创建的共享磁盘上的对象。

我通过使用以下查询调用https://www.googleapis.com/drive/v3/files发现了这一点:

q=mimeType!='application/vnd.google-apps.folder' and 'GOOGLE_DRIVE_FOLDER_ID' in parents and trashed=false&supportsTeamDrives=true&teamDriveId=GOOGLE_TEAM_DRIVE_ID&fields=files(id ,name ,webViewLink ,webContentLink)

根据帐户,我得到不同的结果。如果我使用为服务帐户生成的访问令牌,我们得到的结果与我使用为用户帐户生成的访问令牌不同。服务帐户仅“看到”由该特定服务帐户创建的文件,而普通用户也“看到”其他用户创建的所有文件。

任何人都有类似的问题并且知道任何解决方案或解决方法吗?

4

1 回答 1

0

根据帐户,我得到不同的结果。如果我使用为服务帐户生成的访问令牌,我们得到的结果与我使用为用户帐户生成的访问令牌不同。

您需要了解的是,您只能看到您有权查看的文件。如果您使用普通用户帐户登录,您将只能看到您拥有或有权访问的文件。服务帐户也是如此,将服务帐户视为虚拟用户。服务帐户只能查看已被授予访问权限的文件。

假设您正在谈论的共享磁盘是 gsuite,那么您可以让 gsuite 管理员在服务帐户上设置域范围的委派并授予其访问域上文件的权限。

权限

如果您没有 gsuite 或不想让服务帐户完全访问您的域。您可能还想尝试让驱动器的所有者运行权限。创建并添加服务帐户。

于 2020-09-04T13:21:49.263 回答