使用https://www.googleapis.com/auth/drive时,请求过多的Google云端硬盘权限

时间:2015-07-17 01:21:14

标签: google-api google-drive-api google-oauth2

我的应用需要上传csv并转换为Google表格。所以我们要求这个许可" https://www.googleapis.com/auth/drive"来自我们的用户。但是我们的一些用户抱怨说我们要求的权限太多了。我们可以使用其他任何设置来避免过多询问吗?

以下是用户授权时的权限列表:

  

上传,下载,更新和删除Google云端硬盘中的文件       在您的Google云端硬盘中创建,访问,更新和删除原生Google文档       管理Google云端硬盘中的文件和文档(例如,搜索,整理和修改权限以及其他元数据,例如标题)

1 个答案:

答案 0 :(得分:4)

我的应用需要哪些范围或范围?

作为一般规则,请选择尽可能最严格的范围,并避免请求您的应用实际上不需要的范围。用户可以更轻松地访问有限的,明确描述的范围。相反,用户可能会毫不犹豫地授予对其文件的广泛访问权限,除非他们真正信任您的应用并了解其需要信息的原因。

范围https://www.googleapis.com/auth/drive.file以实用的方式实现了这种平衡。据推测,用户只能打开或创建一个他们信任的应用程序的文件,原因是他们理解。

  

https://www.googleapis.com/auth/drive.file按文件访问由应用创建或打开的文件

请求应用的完整驱动器范围

对于某些应用,可能需要完全访问用户驱动器中的所有文件(https://www.googleapis.com/auth/drive)。例如,用于同步文件的应用程序需要此级别的驱动器访问权限。与列出或重组文件相关的具有特殊需求的应用可能需要完整的范围。

为应用程序请求驱动器范围的只读范围

对所有用户的云端硬盘文件(https://www.googleapis.com/auth/drive.readonly)进行只读访问可能对某些应用有用。例如,照片浏览器可能需要以幻灯片放映的唯一呈现顺序重新组织图像文件,或者移动应用程序可能必须解决独特的显示约束而无需编写任何内容。对于只需要读取云端硬盘中所有文件的文件元数据的应用,即可https://www.googleapis.com/auth/drive.metadata.readonly

在应用开发期间请求完整的驱动器范围

使用完整范围的一个常见且完全有效的情况是迭代开发。在开发期间测试应用程序时,可能更容易避免与授权相关的约束并使用完整范围。然后,在实际发布应用程序之前,您可以退回到文件级范围或生产操作所需的任何范围。

<强> Conculsion

该文本是直接从Google Drive Scopes page中删除的,我在开发驱动应用程序时将其作为经验法则使用。在您的情况下,因为您需要能够上传文件,我会说您应该考虑使用https://www.googleapis.com/auth/drive.file范围进行一些测试,我之前没有尝试过这个,但听起来它可能适用于您的实例。不幸的是,我认为这是除了完全驱动器访问之外唯一的其他选择