Revisa un fallo de control de acceso

Usa identidades de prueba propietarias y no propietarias para distinguir autenticación de autorización sobre el objeto.

La autenticación identifica a quien llama. La autorización decide si puede realizar esa operación sobre ese objeto. Una sesión válida no establece la propiedad del objeto.

Este flujo sigue un endpoint de informes sintéticos. Separa lectura y escritura: demostrar una lectura indebida no significa que también se pueda modificar o eliminar.

Antes de empezar

  • Dos cuentas o tenants sintéticos, A y B, y un informe creado por A.
  • El handler, los helpers de autorización y el campo de propiedad, cuando el código esté disponible.
  • La política prevista para propietario, otro usuario, acceso anónimo y acceso privilegiado.

Sigue los pasos

  1. Captura la solicitud y respuesta correctas de A como referencia. Registra el campo exacto que demuestra acceso al contenido del informe.
  2. Repite la operación como B cambiando solo la sesión. Prueba el acceso anónimo por separado y evita cachés que confundan la identidad.
  3. Sigue la búsqueda del servidor. Comprueba si su filtro incluye al tenant actual o si una política posterior rechaza al no propietario.
  4. Escribe pruebas para el éxito de A y la denegación de B. Añade un caso privilegiado solo si el producto define esa excepción.
  5. Revisa el parche y ejecuta las pruebas. Examina endpoints alternativos, recursos anidados y respuestas de error para la misma regla.

Usa un prompt preciso

Adáptalo a tus pruebas
Revisa la búsqueda del informe y sus llamadores conforme a esta política: el tenant de la sesión debe poseer el informe. Muestra la autorización separada de la autenticación. Si un objeto puede cruzar tenants, propón una prueba de regresión y la corrección mínima del servidor. Identifica excepciones de rol que necesiten una decisión de producto.

Verifica tu trabajo

  • La prueba demuestra acceso al objeto protegido, no solo una respuesta 200.
  • Una sesión nueva no propietaria queda bloqueada tras la corrección y el acceso válido sigue funcionando.
  • El servidor impone la regla independientemente de botones ocultos, estado del cliente o identificadores impredecibles.

Lleva tus evidencias a una conversación y trabaja en la siguiente pregunta.

Abrir chat