Какую часть личного ключа для служебных учетных записей в Google Cloud Platform я на самом деле использую? - PullRequest
1 голос
/ 26 октября 2019

Я пытаюсь проверить правильность private_key, как описано в этом вопросе SO .

Документы о закрытых ключах учетной записи службы приведены здесь.

{
"type": "service_account",
"project_id": "[PROJECT-ID]",
"private_key_id": "[KEY-ID]",
"private_key": "-----BEGIN PRIVATE KEY-----\n[PRIVATE-KEY]\n-----END PRIVATE KEY-----\n",
"client_email": "[SERVICE-ACCOUNT-EMAIL]",
"client_id": "[CLIENT-ID]",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://accounts.google.com/o/oauth2/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/[SERVICE-ACCOUNT-EMAIL]"
}

При использовании private_key я просто получаю часть между строкой

-----BEGIN PRIVATE KEY-----\n

и

\n-----END PRIVATE KEY-----\n

Другими словами, [PRIVATE-KEY] показано в примере?

Или я могу получить всю строку, включая две строки "bookend", показанные выше?

Кроме того, в строке [PRIVATE-KEY] есть несколько случаевподстрока \n. Я должен удалить их или оставить их в?

1 Ответ

1 голос
/ 28 октября 2019

Этот вопрос также относится к другому вопросу , поэтому обратите внимание на похожие симптомы при отладке.

Этапы устранения неполадок:

  1. Убедитесь, что файл JSONэто сгенерированный для вашей службы acocunt
  2. Убедитесь, что файл JSON читается правильно.
  3. Убедитесь, что вы используете правильные методы Firebase

Вывод:

Эта проблема с аутентификацией Firebase была вызвана неправильным чтением JSON.

Важно отметить, что закрытые ключи предназначены для использования с «бесполезной» информацией, поскольку метод для декодирования закрытого ключа предполагает наличие этих строк.

TL; DR

Проблема заключалась в правильном чтении файла JSON.

Спасибо @ Tanaike и @ Tedinoz за действия по устранению неполадок.

...