8.3 Centralizar las Rutinas de Control.
Esta práctica facilita el mantenimiento de los módulos de control. Minimiza las probabilidades de cometer
errores en cada instancia del control. Previene la formación de puntos débiles. Facilita la reutilización de código.
entrada_1_sucia = parametro_get()
entrada_2_sucia = parametro_post()
entrada_1_sucia = quitar_puntoycoma(entrada_1_sucia)
entrada_1_sucia = quitar _guiones(entrada_1_sucia)
entrada_1_limpia = quitar _arrobas(entrada_1_sucia)
entrada_2_sucia = quitar _comillas(entrada_2_sucia)
entrada_2_limpia = quitar _puntoycoma(entrada_2_sucia)
// Complica la corrección de controles.
entrada_1_sucia = parametro_get()
entrada_2_sucia = parametro_post()
entrada_1_limpia = validar(entrada_1_sucia, tipo_de_validacion_1)
entrada_2_limpia = validar(entrada_2_sucia, tipo_de_validacion_2)
// Las rutinas centralizadas son más mantenibles.
Esta recomendación resuelve los problemas vinculados a un bajo nivel de mantenimiento del Código.
8.4 Autenticación, contraseñas y sesiones
Se recomienda usar librerías o servicios de autenticación estándares y bien comprobados. Se debería requerir
autenticación para todas las páginas y recursos, a menos que justifique que sean públicos. Los controles de
autenticación deben ejecutarse en el servidor. Se debería requerir autenticación para operaciones críticas sobre
una cuenta de usuario, como modificaciones o acceso a información privada y trámites sensibles.
Se recomienda utilizar librerías o frameworks de gestión de contraseñas estándar y bien comprobadas. Las
contraseñas nunca deben transmitirse ni almacenarse en texto plano. Se recomienda deshabilitar la opción de
autocomplete para formularios de credenciales en el frontend.
Se recomienda utilizar los controles de gestión de sesión del servicio o frameworks, antes de intentar
implementar los propios. Siempre ofrecer una funcionalidad de cierre de sesión y un tiempo de terminación
automática.
Esta recomendación resuelve los problemas vinculados al bypass de autenticación, robo de sesiones, robo
y destrucción de datos personales.
8.5 Control de Accesos.
Se deben unificar los controles de acceso para todo el sitio. La verificación de controles de acceso debe
ejecutarse en el servidor. Además, se debe limitar la cantidad de acciones permitidas por usuario, dentro de una
ventana de tiempo. La aplicación solo debe tener permisos de acceso a los archivos que resulten estrictamente
necesarios.
Esta recomendación resuelve los problemas vinculados al acceso a datos privados por referencia directa a
objetos,
manipulación
de
interfaces
administrativas.
IF-2021-76718462-APN-DNCIB#JGM
Página 19 de 35
Select target paragraph3
Connect to a paragraph
Connect to an entity
Disable highlights
Add to table of contents