Tema 1

1. Introducción al curso y panorama general de identidad y control de acceso

La autenticación, la autorización y la identidad no son funciones aisladas: juntas definen cómo un sistema reconoce sujetos, valida quiénes son, decide qué pueden hacer y deja trazabilidad de esas decisiones. Entender esta base es indispensable para diseñar aplicaciones, APIs y plataformas que controlen el acceso de forma segura y mantenible.

Objetivo Comprender el mapa general de identidad y acceso
Enfoque Conceptual, técnico y orientado a sistemas reales
Resultado Base sólida para el resto del curso

1.1 Introducción

Cada vez que una persona inicia sesión, una aplicación consulta un token o una API evalúa si una operación está permitida, entran en juego conceptos de identidad y control de acceso. En muchos sistemas estos mecanismos se perciben como algo secundario, pero en realidad forman parte del núcleo de la seguridad y de la arquitectura del software.

Un sistema puede tener una interfaz excelente y lógica de negocio correcta, pero si no controla bien quién accede, cómo demuestra su identidad y qué acciones puede ejecutar, termina siendo inseguro. A la inversa, un sistema con controles de acceso mal diseñados también suele ser difícil de operar, integrar, auditar y escalar.

Por eso este curso no se limita a explicar cómo crear un formulario de login. El objetivo es entender el problema completo: identidades, credenciales, sesiones, permisos, políticas, federación, proveedores de identidad, protocolos y riesgos operativos.

1.2 Qué estudia este curso

Este curso estudia cómo representar identidades digitales, cómo autenticar sujetos, cómo autorizar acciones y cómo gobernar el acceso a recursos a lo largo del tiempo.

Nos enfocaremos en cuatro preguntas centrales:

  • Quién es el sujeto: persona, servicio, dispositivo o proceso.
  • Cómo prueba su identidad: contraseña, token, certificado, MFA, biometría u otros factores.
  • Qué puede hacer: permisos, roles, atributos, políticas y alcance de acceso.
  • Cómo se administra ese acceso: altas, bajas, cambios, auditoría, revocación y trazabilidad.
En sistemas modernos, el problema no es solo autenticar usuarios. También hay que autenticar aplicaciones, APIs, servicios internos, procesos automatizados y dispositivos.

1.3 Por qué identidad y acceso son tan importantes

La mayoría de los incidentes graves no requieren vulnerabilidades exóticas. Muchas veces empiezan con credenciales robadas, sesiones secuestradas, permisos excesivos o integraciones mal diseñadas entre aplicaciones. Eso convierte a la capa de identidad en un objetivo prioritario para atacantes y en un área crítica para arquitectos y desarrolladores.

Además, la identidad digital atraviesa toda la operación: empleados, clientes, administradores, microservicios, herramientas internas, paneles administrativos, entornos cloud, plataformas SaaS y APIs públicas o privadas. Si este plano de control está mal resuelto, el riesgo se expande al resto de los sistemas.

Escenario Problema de identidad o acceso Consecuencia típica
Aplicación web corporativa Permisos demasiado amplios o sesiones débiles Acceso indebido a datos o funciones administrativas
API consumida por terceros Tokens mal emitidos o scopes mal definidos Abuso de endpoints y exposición de información
Entorno empresarial Altas y bajas mal gestionadas Usuarios con acceso residual tras cambiar de rol o salir
Infraestructura cloud Claves y roles de servicio excesivos Escalada de privilegios y compromisos de gran alcance
SSO entre aplicaciones Confianza mal configurada o validaciones incompletas Suplantación o aceptación de identidades no válidas

1.4 Qué es identidad digital

La identidad digital es la representación de un sujeto dentro de un sistema. Ese sujeto puede ser humano o no humano. La identidad incluye atributos, relaciones, estado, historial y uno o más mecanismos para demostrar pertenencia.

No debe confundirse identidad con cuenta. Una identidad puede estar vinculada a varias cuentas, y una cuenta puede existir como una manifestación operativa de esa identidad en una aplicación concreta.

Por ejemplo, una persona puede tener una identidad organizacional con atributos como nombre, sector, cargo y ubicación. A partir de esa identidad pueden derivarse accesos a correo, ERP, VPN, CRM y paneles internos. El verdadero problema de seguridad no es cada cuenta por separado, sino la coherencia del conjunto.

1.5 Sujetos, recursos y acciones

Para entender control de acceso conviene separar tres piezas básicas:

  • Sujeto: quien solicita acceso. Puede ser un usuario, un servicio, una aplicación, un job automatizado o un dispositivo.
  • Recurso: aquello a lo que se intenta acceder. Puede ser un archivo, una pantalla, una API, una base de datos o una operación administrativa.
  • Acción: la operación deseada sobre el recurso, como leer, crear, modificar, eliminar, aprobar o administrar.

Esta distinción parece simple, pero estructura todo el diseño posterior. Cuando un sistema madura, deja de pensar en términos de “usuario logueado” y empieza a pensar en términos de “qué sujeto intenta qué acción sobre qué recurso bajo qué condiciones”.

1.6 Autenticación: demostrar identidad

Autenticar es verificar que un sujeto es quien dice ser. No alcanza con que un identificador exista; el sistema necesita una prueba suficiente. Esa prueba puede basarse en algo que el sujeto sabe, posee, es, hace o en señales contextuales que aumentan o disminuyen la confianza.

En la práctica, la autenticación suele combinar varios elementos:

  • Identificador, como usuario, correo o identificador de cliente.
  • Credencial, como contraseña, código OTP, clave privada o certificado.
  • Canal seguro y controles de integridad para transportar la prueba.
  • Controles complementarios, como MFA, rate limiting, detección de riesgo y protección contra replay.

Un punto importante: autenticar no implica autorizar. Un usuario puede estar autenticado correctamente y aun así no tener derecho a ejecutar una acción concreta.

1.7 Autorización: decidir qué está permitido

La autorización responde a la pregunta “¿qué puede hacer este sujeto autenticado?”. Esa decisión puede ser muy simple o extremadamente compleja según el dominio del sistema.

Algunos sistemas usan reglas directas, como “el rol administrador puede editar usuarios”. Otros evalúan políticas más ricas: departamento, geografía, sensibilidad del dato, horario, tipo de dispositivo, estado del recurso, relación entre sujetos o nivel de riesgo actual.

Un error frecuente es mezclar autenticación y autorización en una sola lógica difusa. Eso suele producir código difícil de mantener y permisos inconsistentes.

Durante el curso veremos distintos modelos de autorización, pero desde ahora conviene retener esta idea: una buena autorización no solo restringe acceso, también expresa reglas de negocio de forma clara, auditable y sostenible.

1.8 Autenticación, autorización, identidad y accounting

En muchos contextos aparece el conjunto AAA: Authentication, Authorization y Accounting. A eso hoy se suma el plano más amplio de identidad.

Concepto Pregunta que responde Ejemplo
Identidad ¿Cómo está representado el sujeto en el ecosistema? Usuario con atributos, grupos, relaciones y ciclo de vida
Autenticación ¿Es realmente quien dice ser? Ingreso con contraseña y segundo factor
Autorización ¿Qué puede hacer sobre un recurso? Puede ver facturas pero no aprobar pagos
Accounting o trazabilidad ¿Qué hizo, cuándo y bajo qué contexto? Registro de acceso, cambios y eventos de seguridad

Si falta cualquiera de estas piezas, el control de acceso queda incompleto. Sin identidad no hay base estable; sin autenticación no hay confianza; sin autorización no hay restricción; sin trazabilidad no hay auditoría ni capacidad de investigación.

1.9 Credenciales, secretos y pruebas de identidad

Una credencial es un elemento que el sistema usa para verificar identidad. Puede ser una contraseña, una clave API, un token, un certificado, una clave privada o un secreto compartido. Pero no todas las credenciales ofrecen el mismo nivel de seguridad ni encajan igual en cada escenario.

En aplicaciones modernas aparece una diferencia importante entre:

  • Credenciales humanas: contraseñas, passkeys, biometría, códigos temporales.
  • Credenciales de sistema: secretos de cliente, certificados, claves de firma, tokens de servicio.
  • Artefactos derivados: sesiones, access tokens, refresh tokens, cookies firmadas.

Un sistema seguro no solo valida credenciales. También define cómo se emiten, almacenan, rotan, revocan y monitorean.

1.10 Qué es IAM

IAM significa Identity and Access Management. Es la disciplina y el conjunto de prácticas, procesos y tecnologías orientados a administrar identidades y controlar accesos de manera consistente.

Cuando una organización crece, ya no alcanza con tener usuarios dispersos en cada aplicación. Hace falta gobernanza: aprovisionar cuentas, asignar permisos según rol, revisar accesos, retirar privilegios al cambiar de puesto y dejar evidencia verificable de lo ocurrido.

IAM conecta dimensiones técnicas y organizativas:

  • Directorio o fuente de identidad.
  • Procesos de alta, baja y modificación.
  • Políticas de autenticación y MFA.
  • Modelos de autorización y segregación de funciones.
  • Auditoría, cumplimiento y recertificación.

1.11 Casos de uso típicos

La teoría se vuelve más clara cuando se la vincula con situaciones reales. Algunos escenarios frecuentes son los siguientes:

  • Login de usuarios finales: aplicaciones web, móviles o de escritorio que autentican personas y administran sesiones.
  • SSO empresarial: múltiples aplicaciones delegan el inicio de sesión a un proveedor central.
  • Acceso a APIs: clientes autenticados reciben tokens con scopes definidos.
  • Administración interna: paneles sensibles requieren MFA, trazabilidad y privilegios mínimos.
  • Comunicación entre servicios: microservicios se autentican entre sí con identidades no humanas.
  • Gobernanza organizacional: altas, bajas y cambios de permiso según eventos del negocio.

Todos estos casos comparten principios, pero cambian mucho en protocolos, amenazas y requisitos de implementación.

1.12 Riesgos más comunes en identidad y acceso

Los sistemas de identidad son atacados de forma constante porque permiten acceso directo o facilitan escalada. Algunos riesgos típicos son:

  • Robo de credenciales: phishing, malware, filtraciones, reutilización de contraseñas.
  • Credential stuffing: uso automatizado de combinaciones obtenidas en brechas previas.
  • Fuerza bruta y password spraying: intentos masivos controlados para evitar bloqueo inmediato.
  • Secuestro de sesión: robo o reutilización de cookies y tokens.
  • Permisos excesivos: usuarios o servicios con más privilegios de los necesarios.
  • Errores de validación: aceptar tokens mal firmados, claims incorrectos o audiencias no previstas.
  • Fallas de lifecycle: accesos que permanecen activos cuando ya no corresponden.
Una parte importante de la seguridad de identidad no consiste en inventar controles complejos, sino en eliminar confianza implícita y reducir el valor de una credencial comprometida.

1.13 Arquitectura básica de una solución de identidad

Aunque las implementaciones varían, muchas arquitecturas de identidad incluyen componentes similares.

Componente Función principal Ejemplo de responsabilidad
Directorio o repositorio de identidad Guardar identidades, atributos y grupos Usuarios, áreas, estados, relaciones y metadatos
Proveedor de identidad Autenticar y emitir afirmaciones sobre el sujeto Login centralizado y SSO
Servidor de autorización Emitir tokens y aplicar políticas de acceso delegadas OAuth 2.0 y OpenID Connect
Aplicación o recurso protegido Consumir identidad y aplicar autorización local Panel web, API, servicio de negocio
Sistema de auditoría Registrar eventos y decisiones críticas Logs de acceso, cambios de rol y revocaciones

En cursos introductorios suele parecer que “el login” sucede dentro de la aplicación y termina ahí. En la práctica, muchas veces intervienen varios sistemas coordinados con responsabilidades separadas.

1.14 Qué cambia entre aplicaciones simples y ecosistemas modernos

En una aplicación pequeña, identidad y acceso pueden resolverse con una base de usuarios, contraseñas almacenadas de forma segura y algunas reglas de permisos. Pero al crecer el ecosistema aparecen nuevas exigencias:

  • Múltiples aplicaciones deben compartir identidad.
  • Usuarios internos y externos siguen reglas distintas.
  • Se requieren integraciones con proveedores externos.
  • APIs necesitan delegación de acceso y tokens con alcance controlado.
  • Hay que auditar decisiones y revisar privilegios periódicamente.
  • Los accesos de máquina a máquina pasan a ser tan críticos como los de usuarios humanos.

Ese cambio de escala explica por qué este curso incluye IAM, SSO, federación y protocolos estándar. No son complejidades “opcionales”; son respuestas a problemas reales de ecosistemas distribuidos.

1.15 Principios que guían un buen diseño de acceso

Antes de profundizar en herramientas concretas conviene fijar algunos principios que se repetirán durante todo el curso.

  • Mínimo privilegio: otorgar solo el acceso necesario y durante el tiempo necesario.
  • Separación de responsabilidades: evitar que una sola identidad concentre acciones críticas incompatibles.
  • Verificación explícita: no asumir confianza por origen de red, sesión previa o contexto implícito.
  • Revocación y expiración: diseñar para que permisos y tokens puedan caducar o invalidarse.
  • Trazabilidad: registrar eventos relevantes con suficiente contexto para auditoría e investigación.
  • Usabilidad razonable: un control de acceso inútil para el usuario tiende a ser eludido o mal operado.

La seguridad real aparece cuando estos principios se convierten en decisiones de diseño concretas, no cuando quedan escritos como declaraciones generales.

1.16 Errores frecuentes en sistemas poco maduros

  • Tratar autenticación y autorización como el mismo problema.
  • Confiar únicamente en usuario y contraseña sin MFA ni controles de abuso.
  • Guardar permisos dispersos en código sin modelo claro.
  • Emitir tokens demasiado largos, con demasiados datos o sin controles adecuados de validación.
  • Mantener cuentas huérfanas, compartidas o sin dueño claro.
  • No revisar privilegios históricos cuando cambian roles o procesos.
  • Construir integraciones de identidad ad hoc en vez de adoptar estándares cuando corresponde.

Estos problemas no solo debilitan la seguridad. También encarecen el mantenimiento, dificultan auditorías y vuelven frágiles las integraciones futuras.

1.17 Qué aprenderemos en el resto del curso

Este tema sirve como mapa general. En los próximos temas iremos descomponiendo cada parte del problema.

  • Definiremos con más precisión qué es identidad digital y cómo se representan usuarios, cuentas, atributos y credenciales.
  • Estudiaremos factores y modelos de autenticación, incluido MFA.
  • Profundizaremos en sesiones, tokens, cookies y riesgos asociados.
  • Analizaremos modelos de autorización como RBAC, ABAC y variantes relacionadas.
  • Veremos IAM, directorios, SSO, federación y ciclo de vida de identidades.
  • Explicaremos protocolos clave como OAuth 2.0, OpenID Connect y SAML.
  • Revisaremos ataques frecuentes, auditoría, cumplimiento y enfoques como Zero Trust.

1.18 Qué debes recordar de este tema

  • Identidad, autenticación y autorización son problemas relacionados pero distintos.
  • El control de acceso debe pensarse en términos de sujetos, recursos, acciones y contexto.
  • Autenticar bien no resuelve por sí solo qué está permitido.
  • IAM agrega gobernanza, ciclo de vida y consistencia organizacional al acceso.
  • Las credenciales, sesiones y permisos son objetivos frecuentes de ataque y deben diseñarse con criterios estrictos.
  • En sistemas modernos, las identidades no humanas y las APIs son parte central del problema.

1.19 Conclusión

La autenticación, la autorización y la identidad constituyen el plano de confianza de un sistema. Allí se define quién entra, cómo lo hace, qué puede alcanzar y qué evidencia queda de ese acceso. Cuando este plano está bien diseñado, la seguridad mejora, pero también mejora la operación, la integración entre sistemas y la gobernanza del negocio.

En el próximo tema profundizaremos en la identidad digital propiamente dicha: qué representa, cómo se modela y por qué usuarios, cuentas, atributos y credenciales no son la misma cosa.