1. Identificar no es autorizar
Autenticación es el proceso de establecer la identidad de quien llama a un servicio. Autorización evalúa si esa identidad puede realizar una acción sobre un recurso concreto. Ambas decisiones deben comprobarse del lado servidor.
2. Cada recurso tiene su contexto
En sistemas con organizaciones distintas, una identidad válida no garantiza acceso a todas las organizaciones. Es necesario comprobar pertenencia, permisos y propiedad del recurso. Denegar por defecto reduce errores de exposición.
3. Validar y tratar errores
Los parámetros, cuerpos y archivos recibidos de clientes no deben considerarse confiables. Las APIs deben validar entradas, limitar privilegios, registrar fallos sin incluir secretos y definir respuestas consistentes.
4. Reintentos e idempotencia
Si un sistema remoto falla, reintentar puede ser apropiado, pero duplicar pagos o pedidos no. Una operación idempotente está diseñada para que repetirla no produzca efectos adicionales no deseados.
Fuentes para profundizar
Material introductorio revisable, no certificación de seguridad ni descripción de una auditoría ejecutada.

