Download Curso: Lenguaje de Programación Java

Document related concepts
no text concepts found
Transcript
Curso: Lenguaje de Programación Java
Parte 7: Seguridad
Autor: Jhimy Daniel Cussi Cruz
La plataforma Java fue creada por Sun Microsystems a mediados de los 90, no sólo pensando en que
tuviera la capacidad de ejecutarse en cualquier plataforma sino también en que fuera segura. Se
incorporaron características de seguridad que no tenía ningún otro lenguaje o plataforma de su época,
como el verificador de clases (Class Verifier), que se asegura de usar versiones de los programas sin alterar,
o el administrador de seguridad (Security Manager) que ayuda a controlar quiénes tienen acceso a ciertos
métodos o recursos de la aplicación. Incluso la interfaz para programación de aplicaciones (API) de
Criptografía de Java incluyó las implementaciones de los algoritmos criptográficos más importantes en su
momento. Es más, el famoso criptógrafo Whitfield Diffie fue CSO de Sun Microsystems en ese tiempo, lo
que refuerza la idea de que Java fue diseñado con la seguridad en mente. Fui un instructor certificado por
Sun Microsystems casi desde los inicios de Java y puedo dar fe de que existía un curso llamado
Implementing Java Security, donde enseñábamos cómo aprovechar las características de seguridad del
lenguaje. Todo indicaba que tendríamos una plataforma segura para rato[1], hasta que un día Oracle
compró Sun Microsystems y algo cambió.
¿Cómo se controla cuándo un applet o aplicación que no son de
confianza se ejecutan en mi explorador web?
Este artículo se aplica a:
Versiones de Java: 7.0, 8.0
Java 7u10 ha introducido la capacidad de gestionar cuándo y cómo las aplicaciones Java que no son de confianza
(p. ej., una aplicación firmada digitalmente por un emisor desconocido, o un certificado que no haya emitido una
autoridad de certificación de confianza) se ejecutarán si están incluidas en una página web. La configuración del
nivel de seguridad en el Panel de Control de Java determinará si
Se le solicitará confirmación antes de ejecutar una aplicación Java que no es de confianza (MEDIUM o HIGH) o
Se bloquearán las aplicaciones Java que no son de confianza para que no se puedan ejecutar (VERY HIGH).
A partir de Java 7 Update 51, todavía se pueden autorizar la ejecución de los applets que no cumplen con las prácticas de
seguridad más recientes si se incluyen los sitios que los albergan en la lista de excepciones de sitios.
A partir de Java 8 Update 20, el nivel de seguridad Medio ha sido eliminado del Panel de control Java. Solo están
disponibles los niveles de seguridad Alta y Muy alta.
La lista de excepciones de sitios proporciona a los usuarios la opción de permitir los mismos applets que se habrían permitido si
se hubiera seleccionado la opción Media, pero sitio por sitio, reduciendo así al mínimo el riesgo de utilizar configuraciones más
permisivas.
Búsqueda del panel de control de Java
» Windows
» Mac OS X
Configuración de los niveles de seguridad mediante el Panel de Control de Java
En el Panel de Control de Java, haga clic en el separador Seguridad.
Seleccione el nivel de seguridad que desee.
Haga clic en Aplicar.
Haga clic en Aceptar para guardar los cambios realizados en el Panel de Control de Java.
Panel de control de Java - Java 8u20 y versiones posteriores
Panel de control de Java - Java 7
Niveles de seguridad en el Panel de Control de Java
Muy Alta
Este es el valor de seguridad más restrictivo. Se podrán ejecutar todas las aplicaciones firmadas con un certificado
válido y que incluyan el atributo de permiso en el manifiesto para el archivo JAR principal tras las peticiones de datos
de seguridad. El resto de aplicaciones se bloquearán.
Alta
Esta es el nivel de configuración de seguridad mínimo recomendado (y por defecto). Se podrán ejecutar las
aplicaciones firmadas con un certificado válido o caducado y que incluyan el atributo de permiso en el manifiesto
para el archivo JAR principal tras las peticiones de datos de seguridad. Las aplicaciones también se pueden ejecutar
una vez realizadas las peticiones de datos de seguridad cuando el estado del certificado no se puede comprobar. El
resto de aplicaciones se bloquearán.
Media (nivel eliminado a partir de Java 8 Update 20)
Sólo aparecen bloqueadas las aplicaciones sin firma que soliciten todos los permisos. El resto de aplicaciones se
pueden ejecutar una vez realizadas las peticiones de datos de seguridad. No se recomienda seleccionar el nivel de
seguridad medio ya que hará que su computadora sea más vulnerable en caso de ejecutar una aplicación no
autorizada.