Recursos de AWS: Acceda de forma privada

recursos de AWS

Acceda a sus recursos de AWS de forma privada

Hoy en este blog, configuraremos nuestros recursos de AWS para acceder de forma privada con tres casos de uso diferentes. ¡Empecemos juntos!


1° Caso: configure sus funciones de Lambda para acceder a AWS RDS:

Como sabe, sus bases de datos siempre deben estar en la subred privada y no deben ser de acceso público. Debe conectar sus bases de datos desde sus funciones de AWS Lambda. Como puedes hacer eso?

¿Qué hacer? Usar AWS Lambda en VPC

Configure una función Lambda con una VPC para crear una red privada, como conectar nuestras bases de datos o servicios internos.

En primer lugar, debe verificar que nuestro RDS no sea de acceso público.

Configuraciones de seguridad de AWS RDS

recursos de AWS
Grupo de seguridad predeterminado para RDS

  • En la consola de AWS Lambda, debe elegir VPC → Editar.
recursos de AWS
Configuraciones de VPC de AWS Lambda
  • Podrá seleccionar VPC y subredes desde aquí. Para alta disponibilidad, elija al menos 2 subredes.
recursos de AWS
Ajustes de VPC de AWS Lambda
  • Probablemente obtendrá un error como este. Debe agregar una política a su rol de ejecución de AWS Lambda.
recursos de AWS
Error de VPC de AWS Lambda
  • AWS tiene una política administrada llamada “AWSLambdaVPCAccessExecutionRole”. Puede usar esto para evitar errores.
recursos de AWS
AWSLambdaVPCAccessExecutionRole

Después de eso, puede configurar con éxito su Lambda con la configuración de AWS VPC que especificó.

recursos de AWS
Configuraciones de VPC de AWS Lambda

Pruebe la conectividad desde su función AWS Lambda. Este es un código de prueba de ejemplo, no use credenciales codificadas en su código, puede usar AWS Secrets Manager para eso.

recursos de AWS


2° Caso: use la lista blanca de IP para sus URL de funciones de AWS Lambda:

Quiere acceder a las URL de la función AWS Lambda solo desde su EC2. ¿Como puedes hacer eso?

Solución: verifique la IP de origen del encabezado y utilícela para la lista blanca de IP

Con las URL de función de AWS Lambda, solo puede acceder a través de la Internet pública. Para la lista blanca de IP, encontré un recurso muy útil que puede incluir en la lista blanca sus IP de recursos para usar las URL de la función Lambda.

Acá debe verificar la IP de origen que invoca a Lambda. Si las IP pertenecen a su rango de IP, Lambda devuelve 200; de lo contrario, devuelve 500 mensajes “No autorizados”. Puedes consultar todos los códigos fuente desde aquí.

Lista blanca de IP de funciones de AWS Lambda

3° Caso: acceda a su DynamoDB de forma privada

Acceda a sus tablas de DynamoDB desde una función de Lambda que se encuentra en la subred privada. Sus funciones de AWS Lambda deben ser internas, no accesibles públicamente desde Internet. ¿Cómo puedes hacer esto?

¿Qué hacer? Configurar puntos de enlace de la VPC para DynamoDB

  • Desde VPC → Endpoints, debe seleccionar DynamoDB como servicio.

 

recursos de AWS
Punto de enlace de la VPC de AWS para DynamoDB
  • Seleccione la VPC a la que están asociados los recursos. También puede configurar una política que controle su acceso. Por ahora, podemos configurar el acceso completo (no lo haga en producción).
Configuraciones de puntos de enlace de la VPC de AWS
  • Luego de eso, no necesita hacer nada desde el lado del código. Puede acceder a su recurso de DynamoDB desde AWS Lambda con Boto3 SDK.

Gracias por llegar hasta aquí, si encuentras esto útil no olvides aplaudir 👍🏼suscribirse para recibir más contenido.

Si le interesa, puede echar un vistazo a algunos de los otros artículos que he escrito recientemente sobre AWS y Laravel:

Recent Post