Как может служба Google Cloud Run для Anthos на GKE подключиться к Firestore в другом проекте другой организации?

Сделал сервис Cloud Run для Anthos на GKE. И затем я хочу подключить его к Firestore в проекте другой организации. Как можно подключиться к Firestore?

Я создал сервис Cloud Run для Anthos на GKE в ProjectA организации. Языком программирования сервиса Cloud Run является Java, библиотека google-cloud-firestore.

И я создал базу данных Firestore на ProjectB of OrganizationB(без организации).

А затем, попытавшись получить доступ к Cloud Run Service к FirestoreDB, я получил сообщение об ошибке вроде удара.

{"message":"Internal Server Error: com.google.api.gax.rpc.PermissionDeniedException: io.grpc.StatusRuntimeException: PERMISSION_DENIED: Missing or insufficient permissions."}

1 ответ

Решение

Все зависит от ваших требований. В соответствии с этой страницей предоставьте учетной записи службыroles/datastore.user или roles/datastore.viewer в разделе IAM проекта B (нажмите "Добавить" и вставьте адрес электронной почты учетной записи службы).

В соответствии с вашим развертыванием GKE учетная запись службы может быть учетной записью службы вычислений по умолчанию (<projectNumber>-compute@developer.gserviceaccount.com) или что-то еще, если вы настроили свой кластер / идентификатор рабочей нагрузки