No tienes acceso a esta clase

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

Errores de CORS

30/30
Recursos

¿Qué son los CORS y cómo afectan al desarrollo web?

Entender y manejar los CORS (Cross-Origin Resource Sharing, o Intercambio de Recursos de Origen Cruzado) es crucial para cualquier desarrollador web, ya que influye directamente en cómo los recursos son compartidos de manera segura entre diferentes servidores. Este mecanismo se utiliza para permitir que un dominio solicite recursos a otro, siempre que se haya permitido explícitamente. Al tratar con el backend y el frontend, este conocimiento es invaluable para evitar errores y garantizar una experiencia de usuario óptima.

¿Cómo funcionan los headers de CORS?

Cuando un navegador hace una solicitud a otro servidor web, este último responde con un header particular llamado Access-Control-Allow-Origin. Este header especifica qué orígenes están autorizados a acceder a los recursos. La ausencia de un origen permitido provocará el conocido error de CORS, que impide que los recursos sean compartidos entre los dos puntos involucrados.

¿Cómo configurar los CORS en API Gateway y Auth0?

Configurar correctamente los CORS es fundamental para el funcionamiento de tus APIs. Aquí es donde herramientas como API Gateway y Auth0 resultan útiles:

  • API Gateway: Desde el menú de CORS, puedes añadir los headers requeridos para permitir que ciertos orígenes hagan solicitudes a tus APIs.

  • Auth0: Este servicio ofrece un panel donde es necesario añadir manualmente los orígenes que deseas permitir. La interfaz gráfica de Auth0 facilita esta tarea, asegurando que solo las solicitudes de orígenes aprobados sean procesadas.

¿Cuáles son las mejores prácticas para la seguridad del desarrollo web?

La seguridad en el desarrollo web no se limita a la gestión adecuada de los CORS. Aquí te presentamos algunas prácticas esenciales para garantizar la protección de tus aplicaciones y datos:

  1. Autenticación de Dos Factores (2FA): Utilizada para aumentar la seguridad de tu cuenta AWS y prevenir accesos no autorizados.

  2. Automatización con GitHub Actions: Creación de pipelines que aseguran que tu flujo de trabajo sea más eficiente y seguro.

  3. Diseño de Arquitectura Segura: Incluir la base de datos en una VPC y limitar el acceso desde direcciones IP específicas o recursos seguros.

  4. Mitigación de Riesgos de SQL Injection: Implementando prácticas efectivas para proteger tus datos contra ataques comúnmente dirigidos a bases de datos.

  5. Uso de Access Tokens con Auth0: Creación de authorizers que validan tokens de acceso, asegurando que solo usuarios autenticados interactúen con tu aplicación.

  6. Protección de Datos en Reposo o en Tránsito: Adopción de técnicas que protejan tus datos, sean estos almacenados o en proceso de transmisión.

¿Cómo seguir aprendiendo sobre seguridad y buenas prácticas?

El aprendizaje constante es el camino hacia un desarrollo web seguro y eficiente. Aquí te mostramos algunas maneras de continuar expandiendo tu conocimiento:

  • Material adicional: Consulta la sección de recursos del curso para más información y profundiza en técnicas de seguridad y buenas prácticas.

  • Compromiso comunitario: Participa en redes sociales, comparte tus logros y mantente actualizado con las últimas tendencias y técnicas en seguridad y desarrollo web.

  • Educación complementaria: Considera realizar cursos adicionales que se enfoquen en áreas específicas de seguridad o nuevas tecnologías de desarrollo.

Crear aplicaciones seguras y eficientes es una meta alcanzable con dedicación y aprendizaje continuo. Aprovecha cada recurso a tu disposición y sigue desarrollando tus habilidades. ¡Tu próximo proyecto puede ser aún más impresionante!

Aportes 4

Preguntas 0

Ordenar por:

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

muy bueno, gracias
## **Errores de CORS** Cuando se habla de desarrollo web no solo se habla de backend sino también se tiene un aplicativo que corre sobre navegadores normalmente con frontend, donde puede salir el error de CORS que sería Cross-Origin Resource Sharing o  intercambio de recursos de origen cruzado el cual es un mecanismo que utilizan los navegadores para permitir que los recursos sean compartidos dentro de diferentes servidores de forma segura cuando se permite que otro dominio acceda a ellos. Cuando un navegador va a preguntar por los recursos a otro servidor web, este va a responder con un header llamado Access-Control-Allow-Origin en el cual llegará una lista de especificaciones con los orígenes que va aceptar, así cuando se mande la petición si el origen no está dentro de la lista no va a permitir que se compartan recursos y se tendría el error de CORS. *¿Qué aprendimos en este curso?* * Riesgos de seguridad y técnicas para mitigarlos * Proteger la cuenta de AWS usando two factor authentication * Creamos un pipeline utilizando GitHub Actions *  Diseño de arquitectura segura * Creación de Base de Datos dentro de una VPC para restringir el acceso sólo para nuestra IP y los recursos necesarios * Mitigar riesgos de SQL injection * Creamos una lambda authorizer para validar token de auth0 * Técnicas para cuidar los datos cuando están at-rest o in transit * Que son CORS y cómo desarrollar nuestra aplicación web
Los headers de CORS (Cross-Origin Resource Sharing) son esenciales para permitir el intercambio seguro de recursos entre diferentes orígenes. Cuando un navegador realiza una solicitud a un servidor diferente, el servidor responde con un header llamado `Access-Control-Allow-Origin`, que especifica qué orígenes pueden acceder a los recursos. Si el origen de la solicitud no está en esta lista, el navegador bloquea la respuesta por razones de seguridad, generando un error de CORS. Esto ayuda a prevenir ataques y garantiza que solo los dominios autorizados puedan interactuar con tu API o servidor.
good