Работа с сервисным аккаунтом Firebase Admin SDK
Как пользователь и владелец приложения, я хочу быть уверен, что следующие условия будут соблюдены:
- Безопасность передачи прав на управление моим приложением
- Возможность мгновенной деактивации доступа с моей стороны
- Легкость в передаче прав на использование моего приложения команде Accelera
- Прозрачность и каноничность процесса передачи прав
Предлагается воспользоваться следующей пошаговой инструкцией.
Инструкция по передаче прав на управление Firebase пушами
- Создайте проект в Firebase Console , если вы не использовали пуши в вашем приложении
Пропустите первые 4 шага
Если вы уже установили Firebase admin SDK в свое приложение


-
Активируйте Firebase Messaging API для своего приложения
Перейдите в настройки приложения в Firebase (Project Settings->Cloud Messaging -> Контекстное меню ( три точки ) -> Manage API in Google Cloud Console
-
Найдите по поиску или в списке API Firebase Messaging API

-
Активируйте Firebase Messaging API

-
Возвращаемся в настройки проекта Firebase и переходим в закладку Service Accounts

- Генерируем новый ключ для сервисного аккаунта Firebase
Список существующих сервисных аккаунтов доступен по адресу
<https://console.cloud.google.com/iam-admin/serviceaccounts>

Убедитесь в том, что аккаунт активирован .
-
В окне настройки только что созданного сервисного аккаунта - создаем ключи доступа.
В контексном меню Actions выберите Manage keys

-
В появившемся окне с ключми сервисного аккаунта - выбираем Add key

Создаём новый ключ с помощью “Create new key“ кнопки.
-
Выбираем тип JSON в типе создаваемого ключа.

-
Проверяем корректность выданного ключа
{
"type": "service_account",
"project_id": "gcp-project-id", //Здесь указывается id вашего проекта
"private_key_id": "123456890abcdefgh",
"private_key": "-----BEGIN PRIVATE KEY-----\nabcdefgh\n-----END PRIVATE KEY-----\n", // Здесь указан ключ доступа - он может быть длинным
"client_email": "user@gcp-project-id.iam.gserviceaccount.com", // Здесь указан email сервисного аккаунта (он будет виден в IAM сервисе)
"client_id": "123456890",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/user%40gcp-project-id.iam.gserviceaccount.com",
"universe_domain": "googleapis.com"
}- Полученный ключ передаем отвественному лицу из Accelera