Какова роль, которая позволяет использовать GCP API (такие как Drive, Sheets и т. Д.)? - PullRequest
0 голосов
/ 05 апреля 2019

Я хочу использовать Drive & Sheets API из Python3.Я пытался создать служебную учетную запись в консоли GCP, но там было указано You already have credentials that are suitable for this purpose, не сообщая мне, какая роль GCP делает его подходящей.

Теперь я хочу найти и добавить эту роль в свою любимую служебную учетную запись.Я не хочу создавать новый или использовать уже подходящие.

Как называется роль, которая позволяет использовать API Google?

GCP console

1 Ответ

1 голос
/ 05 апреля 2019

Я думаю, что это сбивает с толку и плохо объясняется в документации Google, но области IAM и OAuth в основном (сейчас) дополняют друг друга.Я полагаю, что IAM уточнит или предоставит более детализированные, специфичные для учетных данных области

Области применения появились первыми, а IAM появились позже.

IAM - фактически Cloud IAM - применяется только к облачной платформе Google(GCP) услуги.

Области OAuth существуют для всех API Google (включая GCP).

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, основанного на человеке и пользователе, когда конечный пользователь делегирует полномочия, области остаются актуальными, так как они суммируют разрешения для просмотра конечным пользователем перед предоставлением кода.

...