1

CORS Sin Secretos: Seguridad y Rendimiento en Peticiones Cross-Origin

Domina CORS desde cero y explora cómo manejar de forma segura las peticiones cross-origin en diferentes plataformas. Aprende a evitar vulnerabilidades y configurar APIs con confianza.

Duración aproximada: 2.5 - 4 horas.

>> Índice <<

Módulo 1: Introducción a CORS

1. ¿Qué es CORS?

• Definición y contexto.

• ¿Por qué es importante CORS?

2. El concepto de Same-Origin Policy (SOP)

• Explicación de la política del mismo origen.

• Problemas que resuelve y su relación con CORS.

3. ¿Cuándo necesitas CORS?

• Ejemplos comunes de su uso en la web.

• Casos de uso típicos en aplicaciones frontend y backend.

Módulo 2: Fundamentos Técnicos de CORS

1. Peticiones simples y preflight

• ¿Qué son las peticiones simples?

• ¿Qué es una preflight request y cuándo ocurre?

• Diferencias y ejemplos prácticos.

2. Métodos y cabeceras permitidas

• Métodos HTTP soportados por CORS (GET, POST, OPTIONS, etc.).

• Cabeceras estándar y personalizadas (Authorization, Content-Type, etc.).

3. Credenciales y CORS

• Cookies y autenticación en peticiones cross-origin.

• Access-Control-Allow-Credentials y seguridad.

4. Política de CORS y respuestas del servidor

• Cabeceras clave (Access-Control-Allow-Origin, Access-Control-Allow-Methods, etc.).

• Control de acceso condicional basado en orígenes.

Módulo 3: CORS Avanzado y Consideraciones de Seguridad

1. Vulnerabilidades comunes relacionadas con CORS

• Implementaciones inseguras y casos de uso que crean brechas de seguridad.

• Ataques comunes aprovechando configuraciones incorrectas de CORS.

2. Mejores prácticas para la seguridad de CORS

• Cómo limitar orígenes permitidos de manera segura.

• Restricciones en métodos y cabeceras permitidas.

• Seguridad en el manejo de cookies y tokens.

3. CORS y API REST

• Configuración segura de CORS para APIs públicas y privadas.

• Autenticación en APIs REST y CORS.

4. CORS y OAuth 2.0

• Cómo interactúa CORS con OAuth 2.0 y los flujos de autenticación.

• Consideraciones específicas de seguridad.

Módulo 4: Casos de Estudio y Ejemplos Prácticos

1. Implementación segura de CORS en una API REST pública

• Configuración de orígenes dinámicos.

• Ejemplo paso a paso de una API configurada correctamente.

2. CORS en una SPA (Single Page Application)

• Configuración de proxies para manejar CORS en desarrollo.

• Manejo de peticiones cross-origin con fetch o axios.

• Configuración de CORS en producción para una SPA.

• CORS en React, Angular, Vue.js, Next.js y Nuxt.js.

• Seguridad en la configuración de CORS en SPAs.

3. CORS en Mobile Apps (React Native, Ionic, Flutter)

• Cómo manejar CORS en aplicaciones móviles que consumen APIs REST.

• Ejemplo práctico de configuración de CORS en aplicaciones híbridas y nativas.

4. CORS en GraphQL

• Habilitación de CORS en servidores GraphQL y en clientes que consumen APIs.

• Ejemplos prácticos de configuración.

5. CORS en WebAssembly (WASM)

• Manejo de CORS en aplicaciones WASM que interactúan con APIs.

• Consideraciones de seguridad y rendimiento.

6. CORS en Progressive Web Apps (PWA)

• Cómo las PWA gestionan CORS en peticiones HTTP.

• Ejemplos prácticos de configuración.

7. CORS en Microservicios y Arquitecturas de Frontend Desacoplado

• Uso de CORS en arquitecturas de microservicios con frontend separado.

• Ejemplo práctico de configuración de CORS para microservicios.

8. CORS y WebSockets

• Interacción entre CORS y WebSockets en aplicaciones en tiempo real.

• Ejemplo práctico de implementación.

9. CORS en APIs Serverless

• Configuración de CORS en plataformas serverless (AWS Lambda, Azure Functions, etc.).

• Ejemplo práctico de consumo de APIs serverless desde una SPA.

10. CORS y Web Components

• Cómo manejar CORS en aplicaciones basadas en Web Components.

• Ejemplo práctico con componentes web reutilizables.

11. CORS en APIs GraphQL Serverless

• Configuración de CORS en APIs GraphQL serverless.

• Ejemplo práctico y consideraciones de seguridad.

12. CORS en CDN (Content Delivery Network)

• Gestión de CORS en servidores CDN como Cloudflare o AWS CloudFront.

• Ejemplo práctico de configuración para recursos estáticos.

13. CORS en APIs de terceros (OAuth y OpenID Connect)

• Cómo interactuar con APIs de autenticación de terceros con CORS.

• Ejemplo práctico y consideraciones de seguridad.

14. CORS en Micro Frontends

• Uso de CORS en arquitecturas de micro frontends con backend compartido.

• Ejemplo práctico de implementación.

15. CORS y WebRTC (Real-Time Communication)

• Configuración de CORS en servidores de señalización para WebRTC.

• Ejemplo práctico en aplicaciones de comunicación en tiempo real.

16. CORS en API Gateways (NGINX, AWS API Gateway, Kong)

• Gestión de CORS en API Gateways para aplicaciones distribuidas.

• Ejemplo práctico y seguridad en APIs de múltiples orígenes.

17. CORS en Infraestructura sin Servidor (Serverless Framework, Netlify Functions, Vercel)

• Implementación de CORS en arquitecturas completamente serverless.

• Ejemplo práctico en plataformas como Vercel y Netlify.

18. CORS y Content Security Policy (CSP)

• Combinación de CORS con políticas de seguridad de contenido (CSP).

• Ejemplo práctico para reforzar la seguridad en aplicaciones web.

Módulo 5: CORS y el Futuro de la Seguridad en la Web

1. Evolución de CORS

• Cambios recientes en los navegadores y la web.

2. Alternativas y complementos a CORS

• Otras políticas de seguridad de navegadores (Content Security Policy, etc.).

3. El futuro de la seguridad cross-origin en aplicaciones modernas.

Comments

To leave a comment, please authenticate.

No comments yet
Voters
Status
Backlog
Board
Curso
Submitted
8 months ago, Daniel