Tecnico Superior Universitario
El gestor de seguridad
Actualmente, todo el código del sistema del JDK invoca métodos del Gestor de seguridad para determinar la politica de seguridad activa y realizar verificaciones de control de acceso.
Por defecto, cuando se ejecutan applets siempre se carga una implementación del gestor de seguridad, pero cuando se lanzan aplicaciones esto no es así. Si el usuario desea que seinstale uno debe invocar la máquina virtual definiendo la propieda java.security.manager:
java -Djava.security.manager NomApp
o la aplicación debe invocar el método setSecurityManager de la clase java.lang.System para instalar un gestor.
Si se le asigna valor a la propiedad java.security.manager se instalará el gestor de seguridad especificado:
java -Djava.security.manager=iti.GestorSeguridadNomApp
Un aspecto muy importante del gestor de seguridad es que una vez cargado no se puede reemplazar, de modo que ni las applets ni las aplicaciones pueden instalar el suyo cuando el usuario (applicaciones) o el sistema (applets) ya han cargado uno.
Por último hay que señalar que el gestor de seguridad está muy relacionado con la clase AccessControler: la clase SecurityManager representa elconcepto de un punto central de control de acceso, mientras que la clase AccessControler implementa un algoritmo concreto de control de acceso con características especiales como el método doPrivileged().
En versiones del JDK anteriores a la 1.2, los programadores redefinian el gestor de seguridad cuando necesitaban métodos de control de acceso específicos, pero ahora el método adecuado para haceresto es emplear el AccessController.
Herramientas de seguridad
Java 2 incluye una serie de herramientas de seguridad que simplifican la gestión de la misma por parte de los usuarios.
A continuación vamos a presentar brevemente estas herramientas, para una explicación detallada del sistema remitimos al lector a la documentación del JDK:java.sun.com/products/jdk/1.2/docs/guide/security/SecurityToolsSummary.html.
Keytool
La herramienta keytool se emplea para gestionar un almacén de claves (keystore), entre otras cosas permite:
1. Crear pares de claves (pública y privada).
2. Emitir solicitudes de certificados (que se envían al CA apropiado).
3. Importar replicas de certificados (obtenidos del CA contactado).
4. Designar claves públicas de otros como de confianza.
El almacen declaves es una base de datos protegida que contienen claves y certificados para un usuario o grupo de usuarios. El acceso al mismo está protegido por un sistema de contraseñas y además, cada clave privada puede protegerse con una contraseña individual.
Jar
La herramienta jar se emplea para crear archivos JAR.
El formato JAR permite reunir multiples ficheros (clases, imágenes, textos) en unúnico archivo. Cuando se desea firmar una aplicación o applet se usa el programa jar para empaquetarla y luego se firma el resultado usando el programa jarsigner.
Jarsigner
La herramienta jarsigner se emplea para firmar y validar la firma de archivos JAR.
La herramienta jarsigner emplea el almacen de claves que crea y gestiona el programa keytool para buscar las claves privadas y certificadosque necesita para firmar archivos JAR.
Como los accesos al almacen de claves y a las claves privadas están protegidos con contraseña, sólo los usuarios que los conozcan podrán acceder a las claves para firmar archivos JAR.
Policytool
La herramienta policytool se emplea para crear y modificar los archivos de configuración de políticas. La herramienta tiene una interfaz gráfica cómoda paratrabajar con estos ficheros, lo que la hace preferible a la edición manual.
Dominios protegidos, modelo de permisos y políticas de seguridad
En este punto explicaremos que son los dominios protegidos, cómo funciona el modelo de permisos de Java 2 y como se definen las políticas de seguridad.
Dominios protegidos
El concepto de dominio protegido es fundamental para la seguridad de los sistemas....
Regístrate para leer el documento completo.