¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

25
¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones? Alejandro Zeballos Investigación y Desarrollo (GAM), Artech

Transcript of ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

Page 1: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

Alejandro ZeballosInvestigación y Desarrollo (GAM), Artech

Page 2: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

Tres pilares de la seguridad

Disponibilidad

Integridad

Confidencialidad

Page 3: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

Mapa de seguridad

Seguridad física1Seguridad en

comunicacionesSeguridad en Internet

2

3

4

5

6

Seguridad wireless

Capacitación en seguridad

Seguridad de la información

Page 4: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

v“ ”

GeneXus nos provee la funcionalidad de poder incorporar SEGURIDAD a nuestras aplicaciones WEB y Smart Devices.

Page 5: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

Veamos estos puntos

¿Qué hace en WEB? ¿Qué hace en SD?

Casos de uso Futuro

¿Qué es GAM?

Page 6: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

v

¿QUÉ ES GAM?

Page 7: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

¿Qué es GAM?• GAM = GeneXus Access Manager• Biblioteca integrada a GeneXus• Fácil de incorporar a la KB

• Provee una solución a:– Autenticación– Autorización

Page 8: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

v

¿QUÉ HACE EN WEB?

Page 9: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

¿Qué hace en WEB?• Autenticación

– Base de datos Local– Web Service Externo– Facebook– Google– Twitter

• Autorización– Quien puede ejecutar/acceder a un objeto– En las Transacciones permiso por Modo

Page 10: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

Autenticación WEB

WEB APPLICATI

ON DB APP.

DB GAMGAM API

Login Usuario PasswordHTTPS

SessionRespuesta

Application Server

Page 11: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

Autorización WEB• Generación de Permisos por cada objeto

– <nombre-objeto>_Execute– En Transacciones hay permisos por Modo

• Código del chequeo de seguridad en el generador– Declarativo– No se “ensucia” el código GeneXus

Page 12: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

• Chequeo de seguridad en cada Get/Post/Ajax/etc.

Autorización WEB

WEB APPLICATI

ON

DB APP. DB GAM

GAM APIGET/POST/AJAXValid

Session

Respuesta

Application Server

Valid Permission

Page 13: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

v

¿QUÉ HACE EN SMART DEVICES?

Page 14: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

¿Qué hace en Smart Devices?• Autenticación

– Utilizamos oauth 2.0

• Autorización– Quien puede ejecutar/acceder a un servicio o objeto SD– En las Transacciones permiso por Modo de cada BC

expuesto como Servicio

Page 15: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

• HTTPS

Autenticación SD

WEB APPLICATI

ON

DB APP. DB GAM

GAM APILogin Client _Id Client _Secret Usuario Password

Valid Token

Access Token

Application Server

Valid Permission

GET o PUT con Access Token

Respuesta RESTHTTP 200/401/403

Autorización SD

Page 16: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

v

CASOS DE USO

Page 17: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

Caso de uso• Aplicación del evento

– Aplicación SD pública– Usuario anónimo– Backend privado y con permisos

Page 18: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

Caso de uso• Pesobook

– Backend privado– Aplicación SD privada

Page 19: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

v

FUTURO

Page 20: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

Futuro del GAM en TILO• Permisos en la KB

– Conocer quien lo utiliza– Ayudar al programador con intellisense

• Permisos por Control

• Permisos por Datos

• Menú dinámico en función a la metadata del GAM

Page 21: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

v

CONCLUSIONES

Page 22: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

¿Y con esto es suficiente?• Resolvemos de seguridad en la aplicación

• Utilizar HTTPS para autenticación

• Proceso consciente de lo que se publica

• Seguir pasos de Hardening

Page 23: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

ReferenciasWIKI de GXtechnical

• http://wiki.gxtechnical.com

“Security Scanner”: Analizador de KB

• http://marketplace.genexus.com

“Going into production: checklist for Applications using GAM”:• http://wiki.gxtechnical.com/commwiki/servlet/hwiki?Going+into+production%3A+checklist+for+Applicati

ons+using+GAM

“OWASP Top 10 in GeneXus Applications”:

• http://wiki.gxtechnical.com/commwiki/servlet/hwiki?OWASP+Top+10+in+GeneXus+Applications,

OWASP top 10:

• https://www.owasp.org/index.php/Top_10_2010-Main

Page 24: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

Referencias• Conferencias relacionadas

– Cómo hacer aplicaciones seguras - Sala 2C, hoy, 11:00– Café con Seguridad – Piso 25, hoy, 11:45

• Alejandro Zeballos, Investigación&Desarrollo (GAM), [email protected]

Page 25: ¿Qué hace hoy GeneXus por la seguridad de nuestras Aplicaciones?

¡GRACIAS!

Alejandro Zeballos

Artech