Conceptos generales de seguridad

1

Ciberseguridad para Desarrolladores: Protege tus Proyectos y Datos

2

Principales Riesgos de Seguridad en Empresas y Cómo Mitigarlos

3

Principios de Seguridad en AWS: Autenticación, Autorización y Auditoría

Funciona en mi local

4

Configuración de Webhooks y API REST con Go y ngrok

5

Creación de repositorios seguros y prevención de SQL Injection

6

Creación de Métodos Testeables con Mocks en Go

Introducción a DevSecOps

7

Implementación de DevSecOps con GitHub Actions para Desarrolladores

8

Automatización de Pruebas en Go con GitHub Actions

9

Pruebas Unitarias con Mocks en GitHub Actions

10

Gestión de Permisos y Presupuestos en AWS para Nuevas Arquitecturas

Seguridad en la arquitectura

11

Integración de GitHub Webhooks y AWS para Gestión de Commits

12

Gestión de Infraestructura como Código con Terraform en AWS

13

Infraestructura como Código con Terraform y Makefiles

14

Automatización de Infraestructura con Terraform: Roles y Políticas en AWS

15

Implementación de buckets y funciones Lambda con Terraform y AWS S3

16

Configuración de Bases de Datos en AWS con VPC y Seguridad IP

17

Configuración de Lambdas en VPC usando Terraform

18

Configuración de API Gateway para Lambdas en AWS

Evitando vulnerabilidades en el código

19

Configuración de Autenticación con Auth0 en Aplicaciones Web

20

Implementación de Authorizer con Auth0 en AWS Lambda

21

Conexión y Configuración de Lambda con AWS y Postgres

22

Configuración de Endpoints y Políticas en AWS con Terraform

23

Validación de Webhooks desde GitHub usando User Agent

24

Validación de Webhooks de GitHub con AWS Secrets Manager

Controles de seguridad sobre datos

25

Seguridad de Datos y Certificados SSL en AWS

26

Protección de Datos en Reposo con AWS KMS

Monitoring y alertas

27

Creación de un Sistema de Logs en Go para Observabilidad

28

Monitoreo y Auditoría en AWS con CloudWatch y CloudTrail

29

Creación de Alertas en AWS CloudWatch

CORS y cierre

30

Manejo de CORS en Desarrollo Web Seguro

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Configuración de API Gateway para Lambdas en AWS

18/30
Recursos

¿Cómo configurar API Gateway para acceder a Lambdas en AWS?

Al tener nuestras funciones Lambda dentro de una VPC, se encuentran completamente aisladas del acceso público, lo cual es ideal para protegerlas. Sin embargo, para poder interactuar con ellas, necesitamos establecer un método de acceso controlado y seguro. Aquí es donde entra en juego el API Gateway, que actuará como puerta de entrada, definiendo los diversos endpoints necesarios para llegar a nuestras Lambdas.

¿Por qué es crucial el API Gateway?

El API Gateway no solo facilita el acceso a nuestras Lambdas, sino que también se convierte en el único punto de conexión a ellas. Sin embargo, esto lo vuelve el único punto de falla, es decir, si el API Gateway falla, no podremos acceder a nuestras funciones Lambda. Para mitigar este riesgo, podemos implementar diferentes estrategias:

  • Balanceador de Carga: Añadir un balanceador de carga puede distribuir el tráfico, evitando que el API Gateway reciba más peticiones de las que puede manejar.
  • Validación de Entradas: Configurar validaciones dentro del API Gateway para poder bloquear o desechar solicitudes sospechosas desde el principio.
  • Lambda de Autorización: Proporcionar una capa de autorización que solo permita peticiones de fuentes confiables.

¿Cuáles son los tipos de API que podemos crear?

Dentro del servicio de API Gateway en AWS, existen varias opciones para crear APIs, tales como:

  • HTTP API: Más sencilla y económica, ideal para microservicios y casos de usos básicos de HTTP.
  • WebSocket API: Útil para aplicaciones que requieren comunicación bidireccional.
  • REST API: Más funcional y robusta, adecuada para aplicaciones que requieren una estructura completa de REST.
  • REST API Privada: Para cuando se necesita una mayor seguridad y la API no tiene que ser accesible desde internet.

En este caso, nos enfocaremos en crear una HTTP API que apunta directamente a nuestras Lambdas.

¿Cómo definir integraciones y rutas en el API Gateway?

Una vez configurada nuestra API desde la consola de AWS, el siguiente paso es definir las integraciones y las rutas:

  1. Añadir Integraciones: Conectar la API a recursos como URLs HTTP y funciones Lambda. En este ejemplo, integraremos dos Lambdas: handle.github.webhook y getmetrics.

  2. Definir Rutas: Determinar el método HTTP (GET, POST, etc.) y el recurso al que se asignará cada Lambda. Por ejemplo:

    • handle.github.webhook será un POST al recurso commit.
    • getmetrics será un GET al recurso metrics, con un posible filtro por email.

¿Cómo probar la configuración del API Gateway con Postman?

Tras crear y configurar nuestra API Gateway, el paso final es probar su funcionamiento. Para ello, podemos usar herramientas de prueba como Postman:

  1. Crear una nueva petición GET: Pegar la URL generada y añadir /metrics/dummy para comprobar la ruta getmetrics. Al enviar la petición, deberíamos recibir una respuesta como "hello from getmetrics".

  2. Configurar una petición POST: Usar /commit según la ruta configurada para handle.github.webhook. La respuesta debería ser "Hello from handle GitHub notifications".

Estas pruebas nos confirman que las peticiones son gestionadas adecuadamente por el API Gateway, y que nuestras Lambdas permanecen seguras e invisibles al mundo exterior.

Finalmente, te animamos a seguir explorando y perfeccionando tus habilidades en el uso de AWS y herramientas relacionadas. Aprender a interactuar eficazmente con estas tecnologías fortalece tus capacidades y abre un universo de posibilidades en el desarrollo de aplicaciones escalables y seguras. ¡Continúa aprendiendo y ampliando tu horizonte tecnológico!

Aportes 1

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

## Single point of failure Para crear la puerta de entrada se utiliza un API Gateway donde se definen los endpoint y se encarga de enrutarlo a las lambdas que se hayan configurado, el API Gateway se convierte en el único punto de falla, esto quiere decir que cuando se tiene una falla en este único punto puede afectar todo el sistema, para esto se puede utilizar diferentes técnicas, una de ellas sería colocarle un balanceador de carga, también se puede validar entradas y bloquear peticiones.