/
[CBS-030] Seguridad de APIs

[CBS-030] Seguridad de APIs

Este curso aborda la protección de aplicaciones web, cubriendo desde las bases de REST APIs hasta protocolos avanzados. Incluye temas como seguridad en HTTP, SSL, autenticación, OAuth2, CORS, JWT, y OpenID Connect, proporcionando un enfoque integral en la protección de recursos y datos en aplicaciones.

Duración:                     16 horas

Perfil:                           Avanzado

Dirigido a

Esta acción formativa va dirigida a programadores, analistas, arquitectos de sistemas e ingenieros de seguridad interesados en aprender cómo proteger las APIs y aplicaciones web.

Requisitos previos 

Los alumnos necesitarán tener experiencia con el lenguaje de programación Java y Java EE.  Recomendables conocimientos Web Services y Spring framework previos.

Objetivos

  • Fundamentos de seguridad en APIs, incluyendo protocolos como SSL, TLS y OAuth2.
  • Implementar mecanismos de autenticación y autorización seguros en aplicaciones.
  • Estrategias de seguridad avanzadas.
  • Implementar flujos de autenticación eficientes y seguros.


Contenido

  1. Introducción a las APIs REST

    1. Conceptos básicos de las APIs RESTful
    2. Estructura y funcionamiento de una API REST
  2. Seguridad en el protocolo HTTP

    1. Vulnerabilidades comunes en HTTP
    2. Mejores prácticas para asegurar las comunicaciones HTTP
  3. Seguridad en el Transporte

    1. Protección de datos en tránsito
    2. Uso de TLS/SSL para asegurar la conexión
  4. Certificados X.509 y SSL

    1. Introducción a los certificados digitales
    2. Implementación y gestión de certificados X.509 y su relación con SSL/TLS
  5. Autenticación

    1. Conceptos y métodos de autenticación en APIs
    2. Autenticación básica, digest y avanzada
  6. Seguridad en el Cliente

    1. Buenas prácticas para proteger el cliente (navegadores, aplicaciones móviles)
    2. Prevención de vulnerabilidades a nivel de cliente
  7. Autenticación Implícita del Navegador (IBA)

    1. Funcionamiento de la autenticación implícita en navegadores
    2. Riesgos y protección frente a ataques de autenticación
  8. CSRF (Cross-Site Request Forgery)

    1. Qué es y cómo prevenir la falsificación de peticiones entre sitios
    2. Implementación de medidas de protección contra CSRF
  9. CORS (Cross-Origin Resource Sharing)

    1. Concepto y configuración de CORS para permitir o restringir el acceso a recursos entre diferentes orígenes
    2. Riesgos asociados y cómo gestionarlos
  10. Autorización con OAuth2

    1. Introducción al protocolo OAuth2 para control de acceso
    2. Diferencia entre autenticación y autorización
  11. Flujos de OAuth2

    1. Authorization Code Flow: Autenticación basada en código de autorización
    2. Implicit Flow: Flujo implícito para aplicaciones cliente
    3. Resource Owner Password Credentials Flow: Flujo de credenciales del propietario de recursos
    4. Client Credentials Flow: Flujo para aplicaciones de servidor a servidor
  12. JWT (JSON Web Token) y JWS (JSON Web Signature)

    1. Estructura de JWT y su uso para la autenticación y autorización
    2. Generación, consumo y validación de tokens JWT
    3. Introducción a JWS para garantizar la integridad del token
  13. OpenID Connect (OIDC)

    1. Introducción a OpenID Connect sobre OAuth2 para autenticación federada
    2. Flujos de autenticación con OIDC
    3. Uso del ID Token para la identificación de usuarios


Documentación Recomendada

The Design of Web APIs
Arnaud Lauret
October 2019 | 392 pages
ISBN 9781617295102

https://www.manning.com/books/the-design-of-web-apis

Related pages