Как отправить письмо по триггеру в cloud functions?

Завел себе базу на firebase, тк нет нужды в каком-то широком функционале от бек-енда, сейчас думаю, как лучше подключить отправку писем.
Есть 2 стула... на одном sendgrid, а на другом gmail, на какой сам сядешь, на какой клиента посадишь?:

В gmail какая-то странная авторизация и, кажется, требует сервис акк:
const auth = {
user: ....@gmail;
password: ...word;
privateKey: ????;
}


Не сильно комфортно себя чувствую запихивая эти данные в объект, а потом закидывая этот код в репу (закрытую), в добавок ко всем, как я понимаю, для отсылки через gmail нужен сервис аккаунт (privateKey же).

В свою очередь sendgrid позволяет отправить письмо просто, но зачем вообще иметь cloud functions, если хранить 1 таблицу данных и письма отсылать через сторонний сервис, имея под боком gmail?

Есть ли какой-то более адекватный способ отослать письмо через cloud function, не регистрируя сервис ак и не юзая левых сервисов?
  • Вопрос задан
  • 121 просмотр
Решения вопроса 1
achubutkin
@achubutkin
Во-первых, не нужно запихивать в объект и в репу данные авторизации, для этого есть Environment variables in Cloud Functions https://cloud.google.com/functions/docs/env-var

Второе - сервис-аккаунт для Gmail нужен как раз для того, чтобы контролировать доступы сторонних приложений (в данном кейсе, это Firebase). Это на самом деле удобнее, чем помещать в Environment variables свои логины и пароли, вместо просто private key.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы