Google云端硬盘API:用户没有使用API​​密钥对此文件的足够权限

问题描述

我正在尝试将使用SDK的Google云端硬盘与使用API​​密钥用VB.Net编写的应用集成在一起,并且我正在遵循本教程https://developers.google.com/api-client-library/dotnet/get_started#simple

发生的事情是,当调用ExecuteAsync方法时,我收到一个异常,说明用户对该文件没有足够的权限。

基本上,我只有API密钥(仅限访问Google Drive API),并且我不想向用户询问权限,因为我想使用特定帐户(因此每个人都会发送文件保存到该帐户)。

我也找不到将此API密钥“链接”到特定帐户的方法

解决方法

我最终使用service account作为Google Drive API。 这里的想法很简单,我创建了这个帐户并下载了生成的JSON文件,SDK使用该文件来验证和调用API。

有了这个服务帐户,我没有使用API​​密钥,可以使用Permissions 并为每个创建的文件夹上的每个用户设置权限。