Me gustaría asegurarme de que todas las comunicaciones con mi aplicación web estén protegidas.
Es la primera aplicación web que desarrollo y soy realmente nuevo en este mundo de backend/infraestructura, por lo que mi pregunta puede sonar un poco tonta.
Mi aplicación está escrita en Node.js y uso Express :
var express = require('express'), bodyParser = require('body-parser'), methodOverride = require('method-override'), errorHandler = require('errorhandler'), jsdom = require('jsdom'), http = require('http'), ... var server = http.createServer(app).listen(app.get('port'), function () { // Allow prompt in Node after launching repl = require("repl") repl.start("> ") });Esta aplicación se ejecuta en una instancia EC2 de AWS (no sé si la redacción es correcta) y cualquier comunicación con la aplicación está protegida con HTTPS (puedo hacer llamadas API a https://my.api.com/get/results , por ejemplo).
Todo funciona muy bien hasta ahora, pero me pregunto si todo esto es seguro.
Como habrás notado, no estoy usando HTTPS con el servidor express:
http = require('http')
La cuestión es que, según tengo entendido, el servidor express todavía está "detrás" de un portal seguro HTTPS en mi caso.
Mejor preguntar antes de publicar cosas no seguras..
Si tiene un proxy inverso que maneja HTTPS por usted, generalmente no es necesario usar HTTPS en su aplicación Node, especialmente si la red a través de la cual se comunican esos dos es segura, como una interfaz de bucle invertido o una red interna en su centro de datos. Si el proxy inverso y su aplicación Node se comunican a través de la Internet pública, también debe usar HTTPS para ese tráfico.
Vea esas respuestas para más información: