¿Debemos preocuparnos por las herramientas de desarrollo de los navegadores?

  • Autor Autor victorvu
  • Fecha de inicio Fecha de inicio
V

victorvu

Beta
Programador
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Tengo la duda de que tanto hay que protegerse de developer tools de los navegadores ya que podemos editar contenido de la web como x ejemplo el id de un checkbox y probocar problemas en la consistencia de los datos. Esto es asi o estoy confundido?

Gracias! :topsy_turvy:
 
Toda tu información se almacena en server-side (client-side solo es para interacción con el cliente), protege tu back-end y no tendrás que preocuparte por lo que los curiosos hagan en front-end 🙂
 
Lo que uno modifica con las herramientas para desarrolladores solo lo ve uno, no lo los demas. Y las validaciones por usabilidad del lado del cliente y por seguridad del lado del servidor. Saludos
 
Cliente pide Página de Servidor.
Servidor envia copia de página a Cliente.
Cliente modifica la copia.
Cliente recarga la página > Cliente pide Página de Servidor.
Servidor envia "nueva" copia de página a Cliente.
 
Entiendo como funciona pero x ejemplo si tengo 1 checkbox el cual utilizo para saber un id para eliminarlo x ejemplo

El servidor envia el id 15 al checkbox y vos lo cambias a 500, realizas la accion y enviaste el 500 no el 15 que envio el servidor... como dice Tony hay que proteger del lado del servidor.
 
Entiendo como funciona pero x ejemplo si tengo 1 checkbox el cual utilizo para saber un id para eliminarlo x ejemplo

El servidor envia el id 15 al checkbox y vos lo cambias a 500, realizas la accion y enviaste el 500 no el 15 que envio el servidor... como dice Tony hay que proteger del lado del servidor.

Para eso se escapan los datos, y luego se comprueban.

Si:
if ( isset($_GET['valor']) && is_numeric($_GET['valor']) && $_GET['valor'] == 15) {
// 😀
} else {
// :C ...
}
 
Para eso se escapan los datos, y luego se comprueban.

Si:
if ( isset($_GET['valor']) && is_numeric($_GET['valor']) && $_GET['valor'] == 15) {
// 😀
} else {
// :C ...
}

Eso si sabes que valor esperas, si es dinamico no podes
 
Eso si sabes que valor esperas, si es dinamico no podes

Siempre se debe tener en mente que es lo que se espera, de lo contrario podrían ocurrir problemas.

Por ejemplo, un campo para un nombre, no debe contener otros caracteres que no sean "[a-z][A-Z][ ][áéíóú][ÁÉÍÓÚ][.]", esto seria escapar los datos.
 
Siempre se debe tener en mente que es lo que se espera, de lo contrario podrían ocurrir problemas.

Por ejemplo, un campo para un nombre, no debe contener otros caracteres que no sean "[a-z][A-Z][ ][áéíóú][ÁÉÍÓÚ][.]", esto seria escapar los datos.

Obviamente siempre tenes q saber que tipo de dato esperas pero me refiero a q x ejemplo tenes un carrito de compra donde el usuario con un checkbox selecciona los productos que quiere comprar, no hay forma de que sepas que id viene, si sabes que es un numero pero no cual entonces el codigo
PHP:
if ( isset($_GET['valor']) && is_numeric($_GET['valor']) && $_GET['valor'] == 15) {
// 
} else {
// :C ...
}
solo sirve para escapar como bien decis pero no sirve para mantener una consistencia ya que el usuario puede editar el codigo y enviarte un valor que no deberia, seria un entero pero quizas uno que no tenes en tu base de datos x lo que tenes q consultar a tu base de datos x cada valor que se envia y ni siquiera asi podriamos decir que es consistente.
 
Atrás
Arriba