Protección de aplicaciones web con una herramienta de ensamblaje

Hay disponibles tres tipos de mecanismos de autenticación de inicio de sesión web: autenticación básica, autenticación basada en formulario y autenticación basada en certificado de cliente. Los recursos web de una aplicación web deben protegerse asignando roles de seguridad a dichos recursos.

Acerca de esta tarea

Para proteger las aplicaciones web, determine los recursos web que necesitan protección para determinar cómo protegerlos.
Nota: Este procedimiento puede que no coincida con los pasos que deben realizarse al utilizar la herramienta de ensamblaje, o que no coincida con la versión de la herramienta de ensamblaje que va a utilizar. Debe seguir las instrucciones para la herramienta y versión que está utilizando.

Los siguientes pasos proporcionan información detallada acerca de cómo proteger aplicaciones web utilizando una herramienta de ensamblaje:

Procedimiento

  1. En una herramienta de ensamblaje, importe el archivo archivador web (WAR) o un archivo archivador de aplicaciones (EAR) que contenga uno o más módulos Web.
  2. En la carpeta Explorador de proyectos, localice la aplicación web.
  3. Pulse el botón derecho del ratón en el descriptor de despliegue y pulse Abrir con > Editor del descriptor de despliegue. Se abre la ventana Descriptor de despliegue. Para consultar información en línea acerca del editor, pulse F1 y pulse el nombre del editor. Si selecciona un archivo WAR (Web Archive), se abrirá web Deployment Descriptor Editor. Si selecciona un archivo EAR (Enterprise Archive) de aplicación, se abrirá un Application Deployment Descriptor Editor.
  4. Cree roles de seguridad a nivel de aplicación o a nivel de módulo web. Si se crea un rol de seguridad a nivel de módulo Web, el rol también aparecerá en el nivel de aplicación. Si se crea un rol de seguridad a nivel de aplicación, el rol no aparecerá en todos los módulos web. Puede copiar y pegar un rol de seguridad a nivel de aplicación a uno o más roles de seguridad de módulos Web.
    • Cree un rol a nivel de módulo Web. En web Deployment Descriptor Editor, pulse la pestaña Security (Seguridad). En Security Roles (Roles de seguridad), pulse Add (Añadir). Entre el nombre del rol de seguridad, describa el rol de seguridad y pulse Finish (Finalizar).
    • Cree un rol a nivel de aplicación. En Application Deployment Descriptor Editor, pulse la pestaña Security (Seguridad). En la lista de roles de seguridad, pulse Add (Añadir). En el asistente Add Security Role (Añadir rol de seguridad), asigne un nombre al rol de seguridad y descríbalo y, a continuación, pulse Finish (Finalizar).
  5. Cree las restricciones de seguridad. Las restricciones de seguridad es una correlación de uno o varios recursos web con un conjunto de roles.
    1. En la pestaña Security (Seguridad) de Web Deployment Descriptor Editor, pulse Security Constraints (Restricciones de seguridad). En la pestaña Security Constraints (Restricciones de seguridad), puede realizar la siguiente acción:
      • Añadir o eliminar restricciones de seguridad para roles de seguridad específicos.
      • Añadir o eliminar recursos web y sus métodos HTTP.
      • Definir qué roles de seguridad tienen autorización para acceder a los recursos web.
      • Especificar las restricciones None, Integral o Confidential (Ninguna, Integral o Confidencial) en los datos del usuario.
        Ninguno
        La aplicación no requiere garantías de transporte.
        Integral
        Los datos pueden modificarse durante la transmisión entre el cliente y el servidor.
        Confidential
        No se puede observar el contenido de los datos durante su transmisión.

        Las restricciones Integral y Confidential normalmente requieren el uso de SSL. Cuando despliegue aplicaciones que están disponibles en redes públicas, especifique Confidential para sus restricciones de aplicaciones web.

    2. En Security Constraints (Restricciones de seguridad), pulse Add (Añadir).
    3. En Constraint name (Nombre de restricción), especifique un nombre de visualización para la restricción de seguridad y pulse Next (Siguiente).
    4. Proporcione un nombre y una descripción para la colección de recursos web.
    5. Seleccione uno o más métodos HTTP. Las opciones de métodos HTTP son: GET, PUT, HEAD, TRACE, POST, DELETE y OPTIONS.
    6. En el campo Patrones, pulse Añadir.
    7. Especifique un patrón de URL. Por ejemplo, escriba - /*, *.jsp, /hello. Consulte la especificación del Servlet versión 2.4 para obtener las instrucciones para correlacionar patrones URL con servlets. El tiempo de ejecución de la seguridad utiliza la primera coincidencia exacta para correlacionar el URL entrante con los patrones URL. Si no existe ninguna coincidencia exacta, el tiempo de ejecución de la seguridad utiliza la coincidencia más larga. El patrón de URL con carácter comodín (*.,*.jsp) coincidente se utiliza el último.
    8. Pulse Finalizar.
    9. Repita estos pasos para crear varias restricciones de seguridad.
  6. Correlacione los elementos security-role-ref y role-name con el elemento role-link. Durante el desarrollo de la aplicación web, puede crear el elemento security-role-ref. El elemento security-role-ref sólo contiene el campo role-name. El campo role-name contiene el nombre del rol al que se hace referencia en el código JSP (Java ServerPage) o del servlet para determinar si el llamante está en un rol especificado. Puesto que los roles de seguridad se crean durante la fase de ensamblaje, el desarrollador utiliza un nombre de rol lógico en el campo Role-name y proporciona la suficiente descripción en el campo de Descripción para que el ensamblador establezca la correlación con el rol real. El elemento security-role-ref está a nivel del servlet. Un servlet o un archivo JSP (JavaServer Pages) puede tener varios elementos security-role-ref o ninguno.
    1. En la pestaña References (Seguridad) de Web Deployment Descriptor Editor, pulse Security Constraints (Restricciones de seguridad). En la pestaña References (Referencias), puede añadir o eliminar el nombre de una referencia de enterprise bean al descriptor de despliegue. Puede definir cinco tipos de referencias en esta pestaña:
      • Referencia de EJB
      • Referencia de servicio
      • Referencia de recurso
      • Referencia de destinos de mensajes
      • Referencia de roles de seguridad
      • Referencia de entorno de recursos
    2. En la lista de referencias EJB (Enterprise JavaBeans), pulse Añadir.
    3. Especifique un nombre y un tipo para la referencia en los campos Name (Nombre) y Ref Type (Tipo de referencia).
    4. Seleccione Enterprise Beans in the workplace (Enterprise Beans en el lugar de trabajo) o Enterprise Beans not in the workplace (Enterprise Beans que no están en el lugar de trabajo)
    5. Opcional: Si selecciona Enterprise Beans not in the workplace (Enterprise Beans que no están en el lugar de trabajo), seleccione el tipo de enterprise del campo Tipo. Puede especificar un bean de entidad o un bean de sesión.
    6. Opcional: Pulse Browse (Examinar) para especificar los valores de inicio local y de interfaz local en los campos Local home (Inicio local) y Local antes de pulsar Siguiente.
    7. Correlacione cada role-name utilizado durante el desarrollo con el rol utilizando los pasos anteriores. Todos los nombres de rol utilizados durante el desarrollo se correlacionan con el rol real.
  7. Especifique la identidad RunAs para los archivos JSP y servlets. La identidad de RunAs de un servlet se utiliza para invocar enterprise beans desde el código del servlet. Cuando se invocan los enterprise beans, la identidad de RunAs se pasa a enterprise para llevar a cabo la comprobación de autorización en los enterprise beans. Si no se especifica la identidad de RunAs, la identidad del cliente se propaga a los enterprise beans. La identidad de RunAs se asigna a nivel de servlet.
    1. En la pestaña Servlets de web Deployment Descriptor Editor, bajo Servlets and JSP (Servlets y JSP), pulse Add (Añadir). Se abrirá el Add Servlet o JSP wizard (Asistente de añadir servlet o JSP).
    2. Especifique los valores de servlet o del archivo JSP (JavaServer Page), incluidos el nombre, los parámetros de inicialización y las correlaciones de URL y pulse Next (Siguiente).
    3. Especifique el destino del archivo de clases.
    4. Pulse Next (Siguiente) para especificar valores adicionales o pulse Finsh (Finalizar).
    5. Pulse Run As (Ejecutar como) en la pestaña Servlets y seleccione el rol de seguridad y describa el rol.
    6. Especifique una identidad RunAs para cada servlet y archivo JSP utilizados por la aplicación web.
  8. Configure el mecanismo de inicio de sesión para el módulo Web. Este mecanismo de inicio de sesión configurado se aplica a todos los servlets, archivos JSP (JavaServer Pages) y recursos HTML del módulo web.
    1. Pulse la pestaña Pages (Páginas) de Web Deployment Descriptor Editor y pulse Login (Inicio de sesión). Seleccione el método de autenticación necesario. Los valores de método disponibles son: Unspecified, Basic, Digest, Form, and Client-Cert.
    2. Especifique un nombre de reino.
    3. Si selecciona el método de autenticación Form (Formulario), seleccione una dirección web de la página de inicio de sesión y de la página de errores. Por ejemplo, puede utilizar /login.jsp o /error.jsp. Las páginas de error y de inicio de sesión especificadas están en el archivo .war.
    4. [AIX Solaris HP-UX Linux Windows][IBM i]Instale el certificado del cliente en el navegador o cliente web y ponga el certificado de cliente en el archivo de conjunto de claves de confianza del servidor, si está seleccionado ClientCert.
    5. [z/OS]Instale el certificado del cliente en el navegador web del cliente y ponga el certificado de cliente en el archivo de conjunto de claves de confianza del servidor, si está seleccionado el certificado ClientCert. El certificado público de la entidad emisora de certificados de clientes debe colocarse en el conjunto de claves RACF de los servidores. Si se trata de un registro del sistema operativo local, utilice el mandato RACDCERT MAP o el mandato SAF (System Authorization Facility) equivalente para permitir que se cree una identidad MVS mediante el certificado de cliente.
  9. Cierre Deployment Descriptor Editor y, cuando se le solicite, pulse Yes (Sí) para guardar los cambios.

Resultados

Después de proteger una aplicación web, el archivo WAR (archivador Web) resultante contiene información de seguridad en su descriptor de despliegue. La información de seguridad del módulo web se almacena en el archivo web.xml. Cuando se trabaja en el editor de descriptor de despliegue web, también puede editar otros descriptores de despliegue del de despliegue en el proyecto web, incluida la información sobre enlaces y extensiones de IBM® en los archivos ibm-web-bnd.xmi y ibm-web-ext.xmi.
Supported configurations Supported configurations: Para los archivos de enlace y extensión de IBM, la extensión del nombre de archivo .xmi o .xml es diferente en función de si se utiliza una aplicación o módulo previo a Java EE 5 o una aplicación o módulo Java EE 5 o posterior. Un archivo de enlace o extensión de IBM se denomina ibm-*-ext.xmi o ibm-*-bnd.xmi donde * es el tipo de archivo de extensión o enlace como app, application, ejb-jar o web. Se aplican las condiciones siguientes:
  • En el caso de una aplicación o módulo que utilice una Java EE anterior a la versión 5, la extensión del archivo debe ser .xmi.
  • En el caso de una aplicación que utilice Java EE versión 5 o posterior, la extensión del archivo debe ser .xml. Si los archivos .xmi se incluyen con la aplicación o el módulo, el producto ignora los archivos .xmi.

No obstante, puede existir un módulo de Java EE 5 o posterior dentro de una aplicación que incluya archivos previos a Java EE 5 y que utilice la extensión de nombre de archivo .xmi.

Los archivos ibm-webservices-ext.xmi, ibm-webservices-bnd.xmi, ibm-webservicesclient-bnd.xmi, ibm-webservicesclient-ext.xmi, y ibm-portlet-ext.xmi siguen utilizando la extensión de archivo .xmi.

sptcfg

Qué hacer a continuación

Después de utilizar una herramienta de ensamblaje para proteger una aplicación web, puede instalar la aplicación web con la consola administrativa. Durante la instalación de la aplicación web, complete los pasos descritos en Despliegue de aplicaciones protegidas para finalizar la protección de la aplicación web.

Icon that indicates the type of topic Task topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tsec_secweb_atk
File name: tsec_secweb_atk.html