Вы смотрите на служебные аккаунты немного задом наперед.
Конечно, я вижу, как наименование может привести вас в этом направлении. «Служба» в данном случае относится не к предлагаемой услуге, а скорее к не относящимся к человеку объектам (то есть приложениям, машинам и т. Д., В данном случае называемым службами), пытающимся получить доступ к этой предлагаемой услуге. От Общие сведения об учетных записях служб :
Сервисный аккаунт - это особый тип аккаунта Google, который принадлежит
ваше приложение или виртуальная машина (ВМ), а не к
индивидуальный конечный пользователь. Ваша заявка предполагает идентичность
сервисную учетную запись для вызова API Google , чтобы пользователи не
непосредственно участвует.
Таким образом, вам не следует смотреть на учетные записи служб с точки зрения предлагаемой службы - т.е. API хранилища данных или Alert Center, а скорее с точки зрения их «пользователей» - в этом случае ваш CF.
Эта единственная учетная запись службы, назначенная определенному CF, просто идентифицирует этот CF (в отличие от некоторого другого CF, приложения, компьютера, пользователя и т. Д.) При доступе к определенной услуге.
Если вы хотите, чтобы CF имел доступ к определенной службе Google, вам необходимо предоставить учетной записи службы CF соответствующую роль (и) и / или разрешения для этого.
Чтобы получить доступ к хранилищу данных, вы должны посмотреть на эти Разрешения и роли . Если хранилище данных, к которому ваши CF должны иметь доступ, находится в том же проекте GCP , то учетная запись службы CF по умолчанию , которая совпадает с учетной записью приложения GAE из этого проекта, уже имеет доступ к хранилищу данных (конечно, если вы в порядке с использованием учетной записи службы по умолчанию).
Я не использовал API Alert Center, но, по-видимому, использует OAuth 2.0 , поэтому вам, вероятно, следует пройти через Сервисные учетные записи .