Как безопасно хранить телефонные номера в базе данных Heroku Postgres с Node.js API

#javascript #node.js #postgresql #security #heroku

Вопрос:

Я работаю над приложением для устройств iOS. Телефоны, очевидно, действуют как клиент, и тогда у меня есть Node.js API, который был развернут в Heroku, и я также использую базу данных Heroku Postgres. В моей базе данных Postgres включены учетные данные по умолчанию. Мое соединение с базой данных API инициализируется с помощью:

 const pool = new Pool({
  connectionString: process.env.DATABASE_URL,
  ssl: {
    rejectUnauthorized: false
  }
});
 

Все мои SQL-запросы более или менее похожи:

 `INSERT INTO table (param1, param2, param3) VALUES($1, $2, $3)`
 

Я никогда раньше не занимался какой-либо работой по обеспечению безопасности, поэтому на самом деле я не принимал никаких мер для предотвращения того, что я теперь знаю как перехват «человек посередине» и SQL-инъекции. Мне также было интересно, должна ли моя инициализация пула содержать какие-либо другие параметры для повышения безопасности. Мне также было любопытно, есть ли у кого-нибудь какие-либо предложения или ссылки о том, как шифровать/расшифровывать сами фактические телефонные номера (сейчас они буквально хранятся в виде текста, и я лично получил несколько спам-сообщений, поэтому кто-то каким-то образом получает номера).