Проблема: метод API управления Firebase projects.addFirebase возвращает код состояния 403
Шаги для воссоздания:
В приложении Android мне нужно создать отдельные учетные записи Firebase для базы данных реального времени.Для этого я аутентифицирую пользователей с помощью GoogleSignIn.Затем я получаю токен с соответствующей областью действия "oauth2: https://www.googleapis.com/auth/cloud-platform".. На следующем шаге я использую API GCP Resource Manager для создания нового проекта GCP, который будет контейнером для проекта Firebase.
Новый проектуспешно создается на каждой из тестовых учетных записей.
Когда я пытаюсь вызвать метод API управления Firebase projects.addFirebase, используя тот же токен, который я получил ранее (та же область действия), я получаю сообщение об ошибке «У вызывающей стороны нет разрешения». Эта ошибка возникает на 3 из 4 учетных записей, которые я пробовал.
Мне удалось воспроизвести эту ошибку также с помощью google-apis-explorer. Apis Explorer
Iбудем благодарны за любые подсказки о том, как решить эту проблему. Как я упоминал ранее, эта ошибка не возникает ни на одном из протестированных мной аккаунтов, а на остальных трех - каждый раз.
Спасибо.
Обновление
@ Дуг, спасибо, что нашли время посмотреть на мою проблему. Кажется, я нашел причину. После доступа к https://console.firebase.google.com и нажав «Добавить проект», появилось следующее всплывающее окно (я не могу вставить его напрямую, потому что моя репутация слишком низкая):
Всплывающая ссылка
После того, как я проверил все согласия и добавил первый проект, я также могу успешно совершать вызовы API.
Похоже, у меня возник вопрос: существует ли способ предоставления необходимых разрешений через вызовы Resi Manager Api, чтобы я могможно добавить Firebase в существующий облачный проект?
Также для справки я вставляю метод, который я использую для вызова projects.addFirebase, он использует RxJava2 (Android) и Retrofit2.
@Headers({"Content-Type: application/json"})
@POST("projects/{project}:addFirebase")
Single<Operation> addFirebaseToProject(@Header("Authorization") String bearerToken,
@Path("project") String project,
@Body FirebaseDataModel dataModel
);
Спасибоза вашу помощь.
Ps.извините за мой плохой английский, это не мой родной язык.