Foros del Web » Programación para mayores de 30 ;) » Java »

seguridad

Estas en el tema de seguridad en el foro de Java en Foros del Web. Buenas, a ver tengo un problemilla, mas de forma que de fondo. Tengo que hacer una aplicación cliente y otra servidor en java. La idea ...
  #1 (permalink)  
Antiguo 11/01/2010, 06:41
 
Fecha de Ingreso: diciembre-2009
Mensajes: 18
Antigüedad: 14 años, 4 meses
Puntos: 0
seguridad

Buenas, a ver tengo un problemilla, mas de forma que de fondo.

Tengo que hacer una aplicación cliente y otra servidor en java. La idea es que los clientes se conecten al servidor y se sincronicen una serie de tablas de la bd del cliente y del servidor.

Pero los clientes tienen que autenticarse. La comunicación es por Sockets, no hay nada web. Había pensado en que el servidor tuviera un par de claves rsa y cuando se realizara la conexión en el socket, el servidor le enviara al cliente la clave pública, este cifrara su nick y contraseña y enviara al servidor. El problema que veo ahí es que las claves caducan, y querría generar un par nuevo cada cierto tiempo por eso enviaría la clave pública al empezar la conexión. ¿Es una buena idea?. ¿Podría generar el servidor las claves usando keytool desde la aplicación, él solito y guardar sustituir el par por el nuevo en un almacén de claves?.

Muchas gracias y espero respuestas, estoy un poco desorientado sobre cómo hacer el tema de la autenticación.
  #2 (permalink)  
Antiguo 11/01/2010, 07:15
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: seguridad

¿Y no sería mejor definir en la base de datos unos roles y hacer tú las asignaciones de roles por usuario? El acceso a las diferentes secciones y el control de consultas se puede hacer recuperando los roles que tenga asignado cada usuario y comparandolos con los roles a los que hayas dado permisos para realizar dicha acción.
  #3 (permalink)  
Antiguo 11/01/2010, 09:30
 
Fecha de Ingreso: diciembre-2009
Mensajes: 18
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: seguridad

La cuestión mas importante relativa a la seguridad en el proyecto es que toda la información que se envíe se encripte. Por lo tanto, la información relativa a usuarios del cliente que se conecta al servidor (datos de alta, contraseña para autenticarse...) la quiero encriptar con RSA y el resto de información (el mogollón de las tablas) la encriptaré con AES. El servidor va a estar ejecutando constantemente, sólo hay que configurarlo al principio. Mi problema está en que se generen un par de claves RSA cada cierto tiempo y se guarden en un almacén de claves, y que cada cliente tenga en todo momento la clave pública generada. Eso usando dos aplicaciones mondas y lirondas en Java. Por eso quiero saber si se puede ejecutar el keytool y guardar las claves generadas en el almacén. Cuando la conexión con el Socket se realice, el servidor mandaría la clave pública.

Muchas gracias

Etiquetas: seguridad
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:37.