允许使用GCP API(例如Drive,Sheets等)的角色是什么?

问题描述 投票:0回答:1

我想使用Python3中的Drive&Sheets API。我试图在GCP控制台中创建一个服务帐户,但它说You already have credentials that are suitable for this purpose,没有告诉我GCP的哪个角色使其适合。

现在我想找到并将角色添加到我最喜欢的服务帐户。我不想创建一个新的,也不想使用已经合适的。

允许使用Google API的角色名称是什么?

GCP console

google-sheets google-cloud-platform google-drive-sdk gsuite google-iam
1个回答
1
投票

我认为这在Google的文档中很容易引起混淆和解释,但IAM和OAuth范围主要是(现在)互补技术。我认为IAM可以优化或提供更精细的帐户特定于凭据的范围

范围首先出现,IAM后来出现。

IAM - 实际上是Cloud IAM - 仅适用于Google Cloud Platform(GCP)服务。

所有Google的API(包括GCP的API)都存在OAuth范围。

https://developers.google.com/identity/protocols/googlescopes

在您的情况下,Drive和Sheets是G Suite的一部分,不包含在Cloud IAM中。因此,您没有IAM角色可以分配给适用于这些服务的服务帐户。

对于GCP服务,习惯上(虽然看似多余)同时使用IAM和范围。

通常你会看到https://www.googleapis.com/auth/cloud-platform被用作一个包罗万象的默认范围。

更新:回想起来,我应该为此添加一个限定符,OAuth范围对于服务帐户来说实际上是多余的。对于最终用户授权的基于人的OAuth流的情况,范围仍然相关,因为它们在授予代码之前总结了最终用户要审阅的权限。

© www.soinside.com 2019 - 2024. All rights reserved.