限制 Google API 对单个用户或用户组的访问权限,而不是对您的服务帐户的全域权限

Limit Google API access to single or group of users instead of domain-wide authority to your service account

我想通过 Google 驱动器 API 访问和管理单个用户的驱动器。我目前有这个工作,但是它确实需要(或者至少似乎需要)服务帐户具有域范围的权限访问并利用用户模拟。

但是,这会赋予此服务帐户过多的权限,最终它可以冒充任何用户。有什么方法可以限制服务帐户的权限或 API 访问单个或一组用户?

根据 official google documentation, there is no way to do this. In my opinion, this is a feature request. It is similar to the one filed here。也许你可以提交一个新的功能请求来更好地解释你的意图;但是,由于这是一个功能请求,所以不要指望很快就会发生什么。

如果您不希望用户数据暴露给客户端凭据应用程序,那么也许您应该改用 3-Legged Auth。让用户登录到您的应用程序,将令牌缓存在数据库或某处,并在必要时使用刷新令牌刷新访问令牌。这样您将确保应用程序有权读取其预期用户的数据。