Como configurar la seguridad de un Applet
1. Introducción
Un applet es un programa Java que, típicamente, se ejecuta dentro de un navegador Web.
Es posible que en algunos casos necesitemos que un applet se conecte a un servidor Web, distinto del servidor de donde se ha bajado el propio applet, o que necesite escribir en el disco local algún tipo de información. Por las restricciones de seguridad de la JVM, esto no es posible, ya que para evitar ataques maliciosos un applet se ejecuta en un entorno controlado.
Si queremos “relajar” estas restricciones de seguridad es necesario que el applet esté “firmado” por alguna entidad de confianza para el cliente. De esta forma el cliente puede estar tranquilo porque sabe que la ejecución del applet no va a tener ningún efecto malicioso en su equipo.
Un applet lo firmamos usando un certificado (un ficherito que contiene una firma digital). Normalmente este certificado nos lo proporciona una entidad reconocida mundialmente (como VeriSign). Con esto conseguimos que cuando un tercero vea nuestro certificado, y vea que este está firmado por esa entidad, pueda confiar del certificado.
En el ejemplo que vamos a ver, vamos a generar un certificado firmado por nosotros mismos, estos certificados nos pueden servir de prueba o para nuestra Intranet, pero si queremos usarlos en Internet suele ser recomendable que lo firme una entidad certificadora con autoridad o reconocimiento a nivel mundial, de lo contrario puede que los usuarios de nuestro applet no se fíen, y nunca lleguen a usarlo.
Para firmar un applet con el JDK 1.2 o superior usaremos las utilidades
keytool : la usaremos para generar los certificados.
jarsigner : la usaremos para firmar el applet con el certificado que hemos generado.
Estas utilidades las podemos encontrar en $JAVA_HOME/bin
2.1. Crear el certificado
En primer lugar generamos un par de claves (privada/publica) que usaremos
keytool -genkey -alias autentia -validity 120 -v
Con esto estamos generando un par de claves (privada/publica) que se asocian con el alias 'autentia' con una validez de 120 días, que por defecto usa el algoritmo DSA con longitud de clave de 1024.
La opción -v es para activar el modo 'verbose', que nos permite ver más información de lo que va haciendo el comando.
Cuando ejecutemos el comando nos pedirá cierta información:
En primer lugar nos pedirá la clave para el almacén de claves. Este almacén es donde se guardan las claves que vamos generando, los certificado, ... Es por esto que necesite estar protegido. Siempre que accedamos a este almacén tendremos que especificar esta clave.
Luego nos pedirá nombre y apellidos. Por ejemplo: Alejandro Pérez :)
Luego nos pide el nombre del departamento. Por ejemplo: Desarrollo.
Luego nos pide el nombre de la organización. Por ejemplo: Autentia Real Business Solutions.
Luego nos pide el nombre de la ciudad o localidad. Por ejemplo: Tres Cantos.
Usuarios que han visto este tema también han visto...
- Clonación de objetos en Java
- Conectar Java con MySQL en NetBeans
- Trabajando con SocketChannels en J2SDK 1.4 en Java
- Creación de una Clase utilizando otra ya creada
- ¿Qué es el path y el classpath de Java?
Información legal | Política de Privacidad | Contacte con nosotros
Otro proyecto de Factoría de Internet. Copyright© 2003-2008 Factoría de Internet S.L.. Todos los derechos reservados.