Node.js в запросах Elastic beanstalk - это HTTPS, но express используется как HTTP.Это безопасно? - PullRequest
0 голосов
/ 16 ноября 2018

У меня есть проект экспресс-узла, размещенный на эластичном бобовом стебле AWS. Мои запросы HTTPS, когда я проверяю вкладку сети в моих инструментах разработчика. Однако код моего экспресс-приложения узла подается в HTTP. Нужно ли менять модуль «http» на «https»? Если я это сделаю, то не должен ли я предоставить какой-нибудь ключ от AWS?

const http = require('http');
const app = require('./app');

const normalizePort = val => {
  var port = parseInt(val, 10);

  if (isNaN(port)) {
    // named pipe
    return val;
  }

  if (port >= 0) {
    // port number
    return port;
  }

  return false;
};


const onListening = () => {
  const addr = server.address();
  const bind = typeof addr === "string" ? "pipe " + addr : "port " + port;
  //debug("Listening on " + bind);
};

const port = normalizePort(process.env.PORT || "8081");
app.set("port", port);

const server = http.createServer(app);
server.on("error", onError);
server.on("listening", onListening);
server.listen(port);

1 Ответ

0 голосов
/ 16 ноября 2018

Вам не нужно менять его на HTTPS.

Когда вы используете AWS EB, вы получаете балансировщик нагрузки (ELB) с сертификатом + nginx на каждой машине, используемой для обратного прокси в вашем приложении.

AWS поможет вам защитить соединение до балансировщика нагрузки бесплатно.

Вам решать, хотите ли вы добавить дополнительный уровень безопасности.

для большинства случаев использования, если только вы не имеете дело с очень конфиденциальными данными (медицинскими, промышленными), первый уровень достаточно хорош и будет поддерживать все соединения с ELB защищенными и нетронутыми.

Если вы хотите добавить дополнительный уровень безопасности, вы можете создать сертификат с помощью команды «Давайте шифровать», сохранить ключи на своем компьютере, запустить сервер с https и настроить ключи.

взгляните на: https://www.sitepoint.com/how-to-use-ssltls-with-node-js/

он использует certbot (давайте зашифруем cli ...)

...