Estoy implementando un servidor back-end (nodo/express) en Heroku. Está utilizando Mongodb Atlas como base de datos y la aplicación está alojada en Heroku.
Durante el desarrollo, acepté "permitir el acceso desde cualquier lugar", lo que funciona bien, pero para la producción creo que esto es un riesgo de seguridad. Parece que no puedo encontrar una dirección IP para mi servidor Heroku, ya que parece estar cambiando de vez en cuando.
¿Alguna mejor práctica que sea algo fácil de implementar pero también segura?
Hay un excelente artículo aquí que habla sobre cómo resolvieron este problema y lo hicieron usando Fixie , que proporciona direcciones IP estáticas que resuelven el problema que está tratando. Recomendaría esto sobre algunas otras opciones que he proporcionado a continuación.
Puede encontrar todos los rangos de IP de Heroku con el siguiente comando:
HEROKU_REGION=eu; sudo apt -qqy install curl jq 2>/dev/null 1>/dev/null; heroku regions --json 2>/dev/null | jq ".[] | select(.name==\"$HEROKU_REGION\") | .provider.region" | (REGION=$(cat); curl -s https://ip-ranges.amazonaws.com/ip-ranges.json | jq ".prefixes[] | select(.region==$REGION) | .ip_prefix")Tomado de esta respuesta
además,
Heroku dynos usa un subconjunto del rango de IP de las instancias de AWS EC2, uno puede agregar los rangos de IP de AWS a la lista blanca de Cloud Atlas, u obtener un complemento para proporcionar una dirección IP de salida estática, o para usar una comunicación segura a través de TLS.
tomado de un comentario sobre esta respuesta