SlideShare une entreprise Scribd logo
1  sur  9
Cómo desarrollar aplicaciones seguras con GeneXus Diego Rostagnol - Universal ST -  [email_address]   Twitter: @elrosti Martín Oliveri – Artech
Dos áreas Servidor Aplicación
Autenticación <> Autorización ,[object Object]
Autorización :  Se produce después de la Autenticación y es el proceso por el cual obtenemos o no permisos para efectuar una determinada acción.
¿Que implica? ,[object Object]
Evitar que personas no autorizadas puedan autenticarse ante mi aplicación.
Asegurar que los usuarios accedan solamente a los datos que que están autorizados a manipular.
Errores comunes ,[object Object]
No validar los roles en cada pantalla

Contenu connexe

En vedette

Is your Business Process accessible from Mobile Devices? - Gonzalo Fernández
Is your Business Process accessible from Mobile Devices? - Gonzalo FernándezIs your Business Process accessible from Mobile Devices? - Gonzalo Fernández
Is your Business Process accessible from Mobile Devices? - Gonzalo FernándezGeneXus
 
Generadores web Genexus nuevas caracteristicas para nuevas aplicaciones
Generadores web Genexus nuevas caracteristicas para nuevas aplicacionesGeneradores web Genexus nuevas caracteristicas para nuevas aplicaciones
Generadores web Genexus nuevas caracteristicas para nuevas aplicacionesGeneXus
 
Responsive Web Design: Sin fronteras para una excelente experiencia de usuari...
Responsive Web Design: Sin fronteras para una excelente experiencia de usuari...Responsive Web Design: Sin fronteras para una excelente experiencia de usuari...
Responsive Web Design: Sin fronteras para una excelente experiencia de usuari...GeneXus
 
GeneXus X Evolution 3, Part II, with Veronica Buitron, CTO, GeneXus USA, GX S...
GeneXus X Evolution 3, Part II, with Veronica Buitron, CTO, GeneXus USA, GX S...GeneXus X Evolution 3, Part II, with Veronica Buitron, CTO, GeneXus USA, GX S...
GeneXus X Evolution 3, Part II, with Veronica Buitron, CTO, GeneXus USA, GX S...GeneXusUSA
 
52 UTE - Una aplicación Smart Device completamente Off-line con GeneXus X Evo...
52 UTE - Una aplicación Smart Device completamente Off-line con GeneXus X Evo...52 UTE - Una aplicación Smart Device completamente Off-line con GeneXus X Evo...
52 UTE - Una aplicación Smart Device completamente Off-line con GeneXus X Evo...GeneXus
 
Laboratorio desarrollo de aplicaciones WEB con GeneXus Tilo
Laboratorio desarrollo de aplicaciones WEB con GeneXus TiloLaboratorio desarrollo de aplicaciones WEB con GeneXus Tilo
Laboratorio desarrollo de aplicaciones WEB con GeneXus TiloGeneXus
 
Laboratorio WEB GXEv3
Laboratorio WEB GXEv3Laboratorio WEB GXEv3
Laboratorio WEB GXEv3GeneXus
 
Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!GeneXus
 
Overview GeneXus Evolution 3 - III Evento GeneXus Italia e Svizzera
Overview GeneXus Evolution 3 - III Evento GeneXus Italia e SvizzeraOverview GeneXus Evolution 3 - III Evento GeneXus Italia e Svizzera
Overview GeneXus Evolution 3 - III Evento GeneXus Italia e SvizzeraRad Solutions
 

En vedette (10)

Is your Business Process accessible from Mobile Devices? - Gonzalo Fernández
Is your Business Process accessible from Mobile Devices? - Gonzalo FernándezIs your Business Process accessible from Mobile Devices? - Gonzalo Fernández
Is your Business Process accessible from Mobile Devices? - Gonzalo Fernández
 
Generadores web Genexus nuevas caracteristicas para nuevas aplicaciones
Generadores web Genexus nuevas caracteristicas para nuevas aplicacionesGeneradores web Genexus nuevas caracteristicas para nuevas aplicaciones
Generadores web Genexus nuevas caracteristicas para nuevas aplicaciones
 
3.GeneXus creación_de_la_aplicación
3.GeneXus creación_de_la_aplicación3.GeneXus creación_de_la_aplicación
3.GeneXus creación_de_la_aplicación
 
Responsive Web Design: Sin fronteras para una excelente experiencia de usuari...
Responsive Web Design: Sin fronteras para una excelente experiencia de usuari...Responsive Web Design: Sin fronteras para una excelente experiencia de usuari...
Responsive Web Design: Sin fronteras para una excelente experiencia de usuari...
 
GeneXus X Evolution 3, Part II, with Veronica Buitron, CTO, GeneXus USA, GX S...
GeneXus X Evolution 3, Part II, with Veronica Buitron, CTO, GeneXus USA, GX S...GeneXus X Evolution 3, Part II, with Veronica Buitron, CTO, GeneXus USA, GX S...
GeneXus X Evolution 3, Part II, with Veronica Buitron, CTO, GeneXus USA, GX S...
 
52 UTE - Una aplicación Smart Device completamente Off-line con GeneXus X Evo...
52 UTE - Una aplicación Smart Device completamente Off-line con GeneXus X Evo...52 UTE - Una aplicación Smart Device completamente Off-line con GeneXus X Evo...
52 UTE - Una aplicación Smart Device completamente Off-line con GeneXus X Evo...
 
Laboratorio desarrollo de aplicaciones WEB con GeneXus Tilo
Laboratorio desarrollo de aplicaciones WEB con GeneXus TiloLaboratorio desarrollo de aplicaciones WEB con GeneXus Tilo
Laboratorio desarrollo de aplicaciones WEB con GeneXus Tilo
 
Laboratorio WEB GXEv3
Laboratorio WEB GXEv3Laboratorio WEB GXEv3
Laboratorio WEB GXEv3
 
Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!
 
Overview GeneXus Evolution 3 - III Evento GeneXus Italia e Svizzera
Overview GeneXus Evolution 3 - III Evento GeneXus Italia e SvizzeraOverview GeneXus Evolution 3 - III Evento GeneXus Italia e Svizzera
Overview GeneXus Evolution 3 - III Evento GeneXus Italia e Svizzera
 

Similaire à 0150 como desarrollar_aplicaciones_seguras_con_gene_xus

Memorias 3era gug cali colombia
Memorias 3era gug cali colombiaMemorias 3era gug cali colombia
Memorias 3era gug cali colombiagoscar
 
Grails: Framework para el desarrollo de aplicaciones Web No 5
Grails: Framework para el desarrollo de aplicaciones Web No 5Grails: Framework para el desarrollo de aplicaciones Web No 5
Grails: Framework para el desarrollo de aplicaciones Web No 5Esteban Saavedra
 
Seguridad para aplicaciones web java con json web tokens (jwt) 2020
Seguridad para aplicaciones web java con json web tokens (jwt)  2020Seguridad para aplicaciones web java con json web tokens (jwt)  2020
Seguridad para aplicaciones web java con json web tokens (jwt) 2020Eudris Cabrera
 
Presentación sso con cas
Presentación sso con casPresentación sso con cas
Presentación sso con casEnrique Toledo
 
Curso basicoseguridadweb slideshare4
Curso basicoseguridadweb slideshare4Curso basicoseguridadweb slideshare4
Curso basicoseguridadweb slideshare4tantascosasquenose
 
Taller evento TestingUY 2017 - Incorporando Seguridad a las Tareas de Testing
Taller evento TestingUY 2017 - Incorporando Seguridad a las Tareas de TestingTaller evento TestingUY 2017 - Incorporando Seguridad a las Tareas de Testing
Taller evento TestingUY 2017 - Incorporando Seguridad a las Tareas de TestingTestingUy
 
Framework .NET 3.5 08 Validación de datos
Framework .NET 3.5 08 Validación de datosFramework .NET 3.5 08 Validación de datos
Framework .NET 3.5 08 Validación de datosAntonio Palomares Sender
 
Seguridad en las apis desde un punto de vista de developer
Seguridad en las apis desde un punto de vista de developerSeguridad en las apis desde un punto de vista de developer
Seguridad en las apis desde un punto de vista de developerCloudAppi
 
Asp seguridad
Asp seguridad Asp seguridad
Asp seguridad gerardd98
 
Validación de datos.
Validación de datos.Validación de datos.
Validación de datos.Alex Florez
 
GFI - Seguridad en tus APIs
GFI - Seguridad en tus APIsGFI - Seguridad en tus APIs
GFI - Seguridad en tus APIsGFI Informática
 
Control interno informatico
Control interno informaticoControl interno informatico
Control interno informaticonehifi barreto
 
Seguridad web
Seguridad webSeguridad web
Seguridad webcamposer
 
Security in MVC Core by Hugo Biarge
Security in MVC Core by Hugo BiargeSecurity in MVC Core by Hugo Biarge
Security in MVC Core by Hugo BiargePlain Concepts
 
Seguridad en el ciclo de desarrollo del software
Seguridad en el ciclo de desarrollo del softwareSeguridad en el ciclo de desarrollo del software
Seguridad en el ciclo de desarrollo del softwareAnel Sosa
 
Argentesting 2018 - Incorporando seguridad a las tareas de testing
Argentesting 2018 - Incorporando seguridad a las tareas de testingArgentesting 2018 - Incorporando seguridad a las tareas de testing
Argentesting 2018 - Incorporando seguridad a las tareas de testingArgentesting
 
Acegi Security System for Spring
Acegi Security System for SpringAcegi Security System for Spring
Acegi Security System for SpringCarlos Sanchez
 

Similaire à 0150 como desarrollar_aplicaciones_seguras_con_gene_xus (20)

Memorias 3era gug cali colombia
Memorias 3era gug cali colombiaMemorias 3era gug cali colombia
Memorias 3era gug cali colombia
 
Grails: Framework para el desarrollo de aplicaciones Web No 5
Grails: Framework para el desarrollo de aplicaciones Web No 5Grails: Framework para el desarrollo de aplicaciones Web No 5
Grails: Framework para el desarrollo de aplicaciones Web No 5
 
Seguridad para aplicaciones web java con json web tokens (jwt) 2020
Seguridad para aplicaciones web java con json web tokens (jwt)  2020Seguridad para aplicaciones web java con json web tokens (jwt)  2020
Seguridad para aplicaciones web java con json web tokens (jwt) 2020
 
Presentación sso con cas
Presentación sso con casPresentación sso con cas
Presentación sso con cas
 
30.gam introduction sp
30.gam introduction sp30.gam introduction sp
30.gam introduction sp
 
Curso basicoseguridadweb slideshare4
Curso basicoseguridadweb slideshare4Curso basicoseguridadweb slideshare4
Curso basicoseguridadweb slideshare4
 
Taller evento TestingUY 2017 - Incorporando Seguridad a las Tareas de Testing
Taller evento TestingUY 2017 - Incorporando Seguridad a las Tareas de TestingTaller evento TestingUY 2017 - Incorporando Seguridad a las Tareas de Testing
Taller evento TestingUY 2017 - Incorporando Seguridad a las Tareas de Testing
 
Framework .NET 3.5 08 Validación de datos
Framework .NET 3.5 08 Validación de datosFramework .NET 3.5 08 Validación de datos
Framework .NET 3.5 08 Validación de datos
 
Seguridad en las apis desde un punto de vista de developer
Seguridad en las apis desde un punto de vista de developerSeguridad en las apis desde un punto de vista de developer
Seguridad en las apis desde un punto de vista de developer
 
Asp seguridad
Asp seguridad Asp seguridad
Asp seguridad
 
Validación de datos.
Validación de datos.Validación de datos.
Validación de datos.
 
Temas owasp
Temas owaspTemas owasp
Temas owasp
 
GFI - Seguridad en tus APIs
GFI - Seguridad en tus APIsGFI - Seguridad en tus APIs
GFI - Seguridad en tus APIs
 
Control interno informatico
Control interno informaticoControl interno informatico
Control interno informatico
 
Seguridad web
Seguridad webSeguridad web
Seguridad web
 
Security in MVC Core by Hugo Biarge
Security in MVC Core by Hugo BiargeSecurity in MVC Core by Hugo Biarge
Security in MVC Core by Hugo Biarge
 
Inyecciones SQL
Inyecciones SQLInyecciones SQL
Inyecciones SQL
 
Seguridad en el ciclo de desarrollo del software
Seguridad en el ciclo de desarrollo del softwareSeguridad en el ciclo de desarrollo del software
Seguridad en el ciclo de desarrollo del software
 
Argentesting 2018 - Incorporando seguridad a las tareas de testing
Argentesting 2018 - Incorporando seguridad a las tareas de testingArgentesting 2018 - Incorporando seguridad a las tareas de testing
Argentesting 2018 - Incorporando seguridad a las tareas de testing
 
Acegi Security System for Spring
Acegi Security System for SpringAcegi Security System for Spring
Acegi Security System for Spring
 

Plus de GeneXus

After Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) BotsAfter Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) BotsGeneXus
 
Live Editing in Action
Live Editing in ActionLive Editing in Action
Live Editing in ActionGeneXus
 
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...GeneXus
 
¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?GeneXus
 
K2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuroK2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuroGeneXus
 
Sd y Plataformas
Sd y PlataformasSd y Plataformas
Sd y PlataformasGeneXus
 
PXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivosPXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivosGeneXus
 
APPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industriaAPPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industriaGeneXus
 
GeneXus 4 Students
GeneXus 4 StudentsGeneXus 4 Students
GeneXus 4 StudentsGeneXus
 
La importancia de ser responsive
La importancia de ser responsiveLa importancia de ser responsive
La importancia de ser responsiveGeneXus
 
K2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXusK2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXusGeneXus
 
GeneXus 15 (Salto)
GeneXus 15 (Salto)GeneXus 15 (Salto)
GeneXus 15 (Salto)GeneXus
 
GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.GeneXus
 
LigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuariosLigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuariosGeneXus
 
Innovando con GeneXus y SAP
Innovando con GeneXus y SAPInnovando con GeneXus y SAP
Innovando con GeneXus y SAPGeneXus
 
Going mobile
Going mobileGoing mobile
Going mobileGeneXus
 
Audit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXusAudit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXusGeneXus
 
WW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite PlusWW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite PlusGeneXus
 
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...GeneXus
 
Laboratorio GXserver (cont)
Laboratorio GXserver (cont)Laboratorio GXserver (cont)
Laboratorio GXserver (cont)GeneXus
 

Plus de GeneXus (20)

After Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) BotsAfter Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) Bots
 
Live Editing in Action
Live Editing in ActionLive Editing in Action
Live Editing in Action
 
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
 
¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?
 
K2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuroK2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuro
 
Sd y Plataformas
Sd y PlataformasSd y Plataformas
Sd y Plataformas
 
PXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivosPXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivos
 
APPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industriaAPPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industria
 
GeneXus 4 Students
GeneXus 4 StudentsGeneXus 4 Students
GeneXus 4 Students
 
La importancia de ser responsive
La importancia de ser responsiveLa importancia de ser responsive
La importancia de ser responsive
 
K2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXusK2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXus
 
GeneXus 15 (Salto)
GeneXus 15 (Salto)GeneXus 15 (Salto)
GeneXus 15 (Salto)
 
GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.
 
LigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuariosLigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuarios
 
Innovando con GeneXus y SAP
Innovando con GeneXus y SAPInnovando con GeneXus y SAP
Innovando con GeneXus y SAP
 
Going mobile
Going mobileGoing mobile
Going mobile
 
Audit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXusAudit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXus
 
WW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite PlusWW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
 
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
 
Laboratorio GXserver (cont)
Laboratorio GXserver (cont)Laboratorio GXserver (cont)
Laboratorio GXserver (cont)
 

0150 como desarrollar_aplicaciones_seguras_con_gene_xus

Notes de l'éditeur

  1. * Cuando hablamos de seguridad en la web podemos hablar de 2 grandes areas. * El servidor, que involucra al sistema operativo, Servidor WEB, Base de Datos, etc. * La aplicación, que es con la que el usuario interactúa. * Nosotros como desarrolladores la mayoría de las veces solo deberemos preocuparnos de la seguridad dentro de la aplicación.
  2. La autenticación es el proceso por el cual demostramos ser quienes decimos ser.  Por ejemplo mediante el nombre de usuario y contraseña. Si suponemos que digo ser &amp;quot;Diego&amp;quot; y solo yo se cual es mi contraseña y la ingreso correctamente, el sistema comprobaráque yo realmente soy  &amp;quot;Diego&amp;quot;. La autorización se produce luego de la autenticación y es el proceso por el cual obtenemos o no permisos para efectuar determinada acción, como puede ser acceder a ciertos datos.
  3. ¿ Que cosas implica encargarme de la seguridad de mi aplicación ? Mantener la seguridad de mi aplicación implica en primer lugar crear un manejo de los permisos de usuarios de mi sistema. Será mas avanzado o mas básico según nuestras necesidades. Esto nos permitirá evitar que personas no autorizadas puedan acceder a nuestra aplicación. También nos permitirá diferenciar a los usuarios de nuestro sistema y asignar los diferentes niveles de acceso a la información que nuestra aplicación maneja y de esa manera autorizar o desautorizar a los usuarios a realizar determinadas acciones.
  4. * No chequear que exista un usuario logueado en todas las pantallas de la aplicación.   * No validar los roles en cada pantalla (a veces lo que se hace simplemente es limitar el menú a los permisos pero luego a nivel de aplicación solo se controla el usuario)   * Confiar en que el usuario llega a las pantallas de mi aplicación siguiendo los links en ella y no escribiendo la URL directamente en el navegador                  Ej: Pongo un link a la pantalla de modificación de los datos del usuario a la que paso como parametro el ID del usuario logueado sin tener en cuenta que puedo escribir la URL del Link cambiando el código de usuario que se le pasa. * No usar las transacciones como parte de mi aplicación pero dejarlas accesibles y sin seguridad. (Escribiendo la URL en el navegador), esto permite acceso total a modificar la información existente en la base de datos de nuestra aplicación.   Tambien muchas veces dejamos accesibles los webpanels generados por los pattern (ej: WorkWith) pero no los usamos todos como parte de la aplicación.    
  5. * No se pueden confiar en las validaciones que se ejecutan en el browser.  Olvidemonos por favor de hacer cosas como ocultar la barra de direcciones, poner javascript para que no pudan ver el código HTML de mi aplicación o cosas por el estilo. Continuando con lo dicho anteriormente debemos asegurarnos que las validaciones importantes se hagan del lado del servidor.  Los chequeos que se jecutan del lado del servidor son mucho mas fiables. En lo posible que sean exactamente antes de hacer la inserción o modificación de los datos y en caso que sea una consulta de datos, el mejor lugar para hacer los chequeos es el evento Refresh. Usar MD5, SHA1 o similar para la encriptación de contraseñas. De esta manera es imposible que ni siquiera teniendo acceso total a la base de datos y a la aplicación la contraseña pueda ser desencriptada.  También depende de cuan fuerte sea la contraseña del usuario, si es muy debil se puede descubrir mediante un ataque de fueza bruta. Tambien existen sitios que almacenan contraseñas encriptadas con MD5 generando una gran base de datos contra la cual luego se pueden comparar las contraseñas encriptadas.
  6. * GeneXus tiene una propiedad a nivel de objeto que nos permite automaticamente encriptar los parametros que se pasan de un objeto a otro evitando que sean manipulables facilmente. Si lo encriptamos con la opción &amp;quot;SiteKey&amp;quot; la URL de los objetos no va a cambiar durante las diferentes sessiones, esto quiere decir por ejemplo que si la dirección queda guardada en el historial del navegador, luego voy a poder usar esa misma URL para acceder a un objeto pasandole los parametros que haya usado esa vez. En cambio si utilizo &amp;quot;SessionKey&amp;quot; los parametros son encriptados con una clave diferente en cada session por lo cual la URL cambia en cada session que iniciamos. * El objeto WebSession nos permite almacenar información * Se encarga de prevenir automaticamente de ataques de &amp;quot;SQL Injection&amp;quot;
  7. * No se pueden confiar en las validaciones que se ejecutan en el browser.  Olvidemonos por favor de hacer cosas como ocultar la barra de direcciones, poner javascript para que no pudan ver el código HTML de mi aplicación o cosas por el estilo. Continuando con lo dicho anteriormente debemos asegurarnos que las validaciones importantes se hagan del lado del servidor.  Los chequeos que se jecutan del lado del servidor son mucho mas fiables. En lo posible que sean exactamente antes de hacer la inserción o modificación de los datos y en caso que sea una consulta de datos, el mejor lugar para hacer los chequeos es el evento Refresh. Usar MD5, SHA1 o similar para la encriptación de contraseñas. De esta manera es imposible que ni siquiera teniendo acceso total a la base de datos y a la aplicación la contraseña pueda ser desencriptada.  También depende de cuan fuerte sea la contraseña del usuario, si es muy debil se puede descubrir mediante un ataque de fueza bruta. Tambien existen sitios que almacenan contraseñas encriptadas con MD5 generando una gran base de datos contra la cual luego se pueden comparar las contraseñas encriptadas.