2.2 Seguridad

Pasar de una etapa previa a la producción a la etapa de producción implica, por lo general, reforzar los aspectos de seguridad del sistema. En las pruebas experimentales, es posible que haya estado utilizando HTTP normal para conectar el controlador de la aplicación de usuario con JBoss o bien puede que haya utilizado un certificado autofirmado (como medida temporal) para la comunicación del tipo controlador/servidor de aplicación. Por otra parte, en producción, probablemente necesitará utilizar conexiones seguras, con una autenticación de servidor basada en el certificado Verisign (u otro proveedor de confianza) de su empresa.

Es normal utilizar certificados X.509 en una serie de lugares del entorno de la aplicación de usuario del Gestor de identidades, tal como se muestra en el esquema siguiente.

Descripción: Descripción: Ilustración

Todas las comunicaciones entre la aplicación de usuario y el repositorio seguro de identidades son seguras utilizando, por defecto, Transport Layer Security. La instalación del certificado del repositorio seguro de identidades (eDirectory) en el almacén de claves de JBoss se efectúa automáticamente en el momento de la instalación. A menos que se indique lo contrario, el programa de instalación de la aplicación de usuario pondrá una copia del certificado de eDirectory en el almacén cacerts de JRE.

Si las comunicaciones deben ser seguras, es preciso que el certificado del servidor esté en varios lugares, tal como se muestra en el esquema. Es posible que deba efectuar una configuración diferente, en función de si piensa utilizar un certificado autofirmado en los diversos lugares del esquema donde aparece un recuadro que indica JBoss cert o si, en vez de ello, desea utilizar un certificado emitido por una autoridad certificadora (CA) de confianza como, por ejemplo, Verisign.

Certificados autofirmados

Si utiliza un certificado de una autoridad certificadora reconocida y de confianza (como, por ejemplo, Verisign), no necesitará realizar ningún tipo de configuración especial. No obstante, si piensa crear y utilizar un certificado autofirmado, deberá seguir los pasos siguientes:

  1. Cree un almacén de claves con un certificado autofirmado, utilizando una sintaxis de línea de comando similar a la siguiente:

    keytool -genkey -alias tomcat -keyalg RSA -storepass changeit -keystore jboss.jks -dname "cn=JBoss,ou=exteNd,o=Novell,l=Waltham,s=MA,c=US" -keypass changeit
    

    Observe que va a crear el archivo “jboss.jks”, además de crear el certificado.

  2. Copie el archivo almacén de claves (jboss.jks) en el directorio de la aplicación de usuario de JBoss; por ejemplo:

    cp jboss.jks ~/jboss-4.0.2/server/spitfire/conf
    

Activación de SSL en JBoss

Para habilitar SSL en JBoss, localice el archivo jbossweb-tomcat55.sar en [IDM]/jboss/server/IDM/deploy/. En éste, busque el archivo server.xml y ábralo en un editor de texto. Habilite SSL eliminando el comentario o añadiendo una sección similar a la siguiente:

<Connector port="8443" address="${jboss.bind.address}" maxThreads="100" strategy="ms" maxHttpHeaderSize="8192" emptySessionPath="true" scheme="https" secure="true" clientAuth="false" keystoreFile="${jboss.server.home.dir}/spitfire/conf/jboss.jks" keystorePass="changeit" sslProtocol = "TLS" />

Activación de la seguridad SOAP

En IDM.war, busque el archivo web.xml y ábralo en un editor de texto. En la parte inferior del archivo, elimine el comentario de la sección siguiente:

<security-constraint> <web-resource-collection> <web-resource-name>IDMProv</web-resource-name> <url-pattern>/*</url-pattern> <http-method>POST</http-method> <http-method>GET</http-method> <description>IDM Provisioning Edition</description> </web-resource-collection> <user-data-constraint> <transport-guarantee>CONFIDENTIAL</transport guarantee> </user-data-constraint> </security-constraint>

Guarde el archivo y el archivo de reserva. Reinicie JBoss.

2.2.1 Autenticación mutua

La aplicación de usuario del Gestor de identidades admite los casos de autenticación de usuario normales (tal como se utilizan habitualmente en las sesiones https con páginas Web seguras en la Web), pero no admite la autenticación basada en certificados bidireccionales por defecto. No obstante, esta función se puede obtener con Novell iChain. Así, si, por ejemplo, su organización necesita que los usuarios entren mediante un certificado de usuario, en lugar de entrar utilizando una contraseña, lo conseguirá añadiendo iChain a su entorno.

Si desea obtener más información, consulte al representante de Novell.