我有一个Google App Engine应用程序:
对用户进行身份验证并授权drive.file scope;
通过应用程序拥有的'regular' Google帐户代表用户创建和存储文件;
与该用户共享该文件(授予写入权限)。
但是,当用户尝试通过应用创建的授权云服务更新其中一个文件时,会引发following exception:
403: The authenticated user has not granted the app {appId} access to
the file {fileId}
。
我错过了什么?鉴于该文件最初由应用程序创建并且仍由应用程序拥有,为什么用户必须专门授予应用程序对文件的访问权限?
我的目标是让用户修改文件(他们具有写访问权限,存储在应用程序拥有的帐户中/由应用程序拥有的帐户拥有)作为他们自己,以便维护适当的'最后修改用户'归因。
除了(a)授权驱动器之外,我还能做些什么来解决这个问题吗?范围,(b)使用Google Picker或云端硬盘用户界面明确地'使用我的应用程序打开文件(这是否意味着该文件必须存在于用户的云端硬盘帐户中?),或者(c)让我的应用程序拥有的帐户执行所有文件更新操作?
答案 0 :(得分:2)
文件范围授权目前作为用户 - 应用程序对完成。每个用户都必须单独授权应用程序访问该文件。
鉴于此,我认为您已经确定了可能的解决方案。对于b,文件不需要由用户拥有,他们只需要访问它。与他们分享就足够了。