Guía defensiva
¿Cómo distinguir autenticación de autorización al revisar una aplicación?
Autenticación y autorización ocurren cerca, pero responden preguntas distintas. Separarlas evita que una pantalla de acceso o un código HTTP se conviertan en conclusiones apresuradas sobre permisos.
Haz dos preguntas
La autenticación busca evidencia de que una persona o sistema controla un autenticador asociado a una identidad. La autorización decide si esa identidad puede realizar una acción sobre un recurso. Que una persona haya iniciado sesión no responde todavía si puede ver, editar o descargar algo.
Al revisar una ruta, escribe ambas preguntas: “¿cómo reconoce el servicio a quien solicita?” y “¿qué regla decide esta acción?”. Esa pauta revela huecos de información y evita pedir a un equipo que depure el acceso cuando el problema puede estar en la asignación de permisos.
Lee la respuesta sin sobreinterpretarla
Una respuesta 401 comunica que la solicitud carece de credenciales de autenticación válidas para ese contexto. Una 403 indica que el servidor entendió la solicitud y la rechaza. Los códigos orientan la revisión; no revelan por sí solos el rol, la política ni una causa humana.
Ejemplo defensivo: una cuenta de prueba entra a https://app.example.com y después recibe 403 al abrir un informe. La nota separa el acceso exitoso de la autorización denegada para ese informe. El siguiente paso es revisar la política declarada para el rol de prueba, no intentar modificar la petición.
Conserva la decisión en el servidor
Los controles de interfaz ayudan a guiar a la persona, pero no sustituyen una comprobación del servidor. Ocultar un botón puede ser correcto para la experiencia; la operación sensible necesita que el servicio valide identidad, permiso y contexto antes de producir un efecto.
También evita confiar en etiquetas del cliente como “administrador” si no provienen de una comprobación vigente. Para una revisión, busca el punto autorizado donde la aplicación evalúa la regla y registra qué evidencia falta. No copies credenciales ni intentes acceder a recursos fuera del laboratorio.
Prueba el recorrido autorizado
Diseña una comprobación con dos cuentas de prueba y una sola acción aprobada. Una cuenta con permiso debe completar el recorrido y otra sin permiso debe recibir una respuesta clara sin revelar datos. El resultado esperado incluye la decisión del servidor y un mensaje útil para la interfaz.
Si los resultados difieren de la política esperada, conserva hora, cuenta de laboratorio, recurso y respuesta. No llames vulnerabilidad a cualquier 403 o 401: primero compara el caso con la regla de negocio y con el estado de autenticación observado.