Un usuario malintencionado puede usar la información de excepciones y errores para mapear la API de una aplicación web, por lo que es habitual ver las listas de verificación de seguridad para recomendar que solo se envíe un mensaje de tipo "Comuníquese con su administrador".
Por otra parte, se nos recomienda utilizar estándares HTTP, que recomiendan errores como
- 400 - solicitud incorrecta
- 401 - no autorizado
- 403 - prohibido
- 405 - método no permitido
- 500 - error interno
- 501 - no implementado
Todos parecen proporcionar cierta información sobre la API, es decir, que existe tal invocación y que, aunque su ataque estuvo cerca de una solicitud con el formato correcto, no fue lo suficientemente cerca.
¿Se deberían traducir todas estas solicitudes HTTP al mismo mensaje de error, o debería prevalecer el cumplimiento de las normas?
ACTUALIZACIÓN : como desarrollador de aplicaciones, personalmente prefiero los mensajes de excepción bastante ricos y no me gusta que la mayoría de las aplicaciones en las que trabajo devuelvan 200 para todo lo que devuelve la aplicación y solo devuelva errores que no sean 200 cuando ASP.NET o IIS tienen ganas de devolver un error que no es 200.