Protección de clientes JAX-RS 2.0 mediante SSL

Puede proteger la comunicación entre su aplicación JAX-RS (Java™ API for RESTful Web Services) y los clientes que invocan la aplicación utilizando la seguridad de la capa de transporte SSL (Secure Sockets Layer).

Antes de empezar

En esta tarea se presupone que ha llevado a cabo los pasos siguientes:
  • Ha definido un perfil de célula para un servidor de aplicaciones o para un servidor de aplicaciones que está federado a un gestor de despliegue de red. Consulte la información acerca de la creación de perfiles de célula que contienen un nodo de servidor de aplicaciones federado y un gestor de despliegue.
  • Ha instalado la aplicación JAX-RS 2.0 en el servidor de aplicaciones.

Acerca de esta tarea

Los programas de cliente JAX-RS 2.0 pueden beneficiarse de la seguridad de transporte que utiliza SSL para proteger las solicitudes y respuestas de los recursos JAX-RS.

Si ha configurado la aplicación de JAX-RS 2.0 para utilizar un canal SSL para la seguridad a nivel de transporte, es posible que el cliente JAX-RS 2.0 utilice la conexión SSL para invocar los recursos REST. Por ejemplo, si la aplicación JAX-RS 2.0 está configurada para utilizar la autenticación básica, utilice SSL para que las credenciales de usuario se transporten a través de conexiones seguras.

Para ilustrar este escenario, supongamos que tiene un servidor de aplicaciones en la célula y que ha desplegado recursos JAX-RS 2.0 en este servidor. Los recursos JAX-RS 2.0 de este servidor requieren el uso de SSL. Puede utilizar el cliente JAX-RS 2.0 para invocar uno de estos recursos seguros que requieren el uso de SSL. El cliente JAX-RS 2.0, proporcionado por este producto, es una API de un nivel superior a HttpURLConnection que además se integra con los proveedores de JAX-RS.

Importante: Si invoca los recursos JAX-RS 2.0 desde una aplicación que se ejecuta en un entorno WebSphere Application Server, por ejemplo, cuando realiza una llamada en sentido descendente, no es necesaria una configuración adicional para SSL. No es necesario que configure las conexiones SSL para este recurso, porque se utilizan la configuración y el tiempo de ejecución SSL del servidor de aplicaciones.

Siga estos pasos para configurar SSL con el cliente ligero para JAX-RS.

Procedimiento

  1. Configure las propiedades SSL de la consola de administración de WebSphere Application Server tradicional. Para obtener más información, consulte Creación de configuraciones de Capa de sockets seguros.
  2. Habilite la seguridad para la aplicación JAX-RS y configure la aplicación para utilizar un canal SSL para el transporte cuando se invoquen recursos REST.

    Durante el desarrollo o el despliegue de aplicaciones, edite el archivo web.xml para añadir una restricción de seguridad que exija el uso de SSL para sus recursos. Consulte la información sobre la protección de aplicaciones JAX-RS dentro del contenedor web para obtener más detalles sobre la habilitación de SSL para la aplicación.

    El elemento siguiente incluido en el elemento security-constraint especifica que se aplique SSL a la aplicación:
    <user-data-constraint id="UserDataConstraint_1">
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
     </user-data-constraint>
  3. Para habilitar el SSL de cliente cuando desarrolla su aplicación de cliente, añada una propiedad de cliente en su código de aplicación de cliente.

    Establezca la clave de la propiedad de cliente en com.ibm.ws.jaxrs.client.ssl.config y su valor en true. Consulte el siguiente fragmento de código como referencia:

    ClientBuilder cb = ClientBuilder.newBuilder();
    cb.property("com.ibm.ws.jaxrs.client.ssl.config", "NodeDefaultSSLSettings");
    Consejo: El valor de la propiedad es igual al alias SSL del servidor que defina. Para obtener más información, vaya a Servidores de aplicaciones->servidor n, donde n es el número que ha asignado a servidor de aplicaciones.->cadenas de transporte de contenedor web->WCInboundDefaultSecure->canal de entrada de SSL (SSL_2) para seleccionarlo en el campo Configuración SSL.
  4. Despliegue la aplicación de cliente en WebSphere Application Server tradicional utilizando la consola administrativa.
  5. Inicie la aplicación de cliente en la consola administrativa de WebSphere Application Server tradicional. Para iniciar la aplicación, vaya a Aplicaciones->Tipos de aplicación->Aplicaciones de empresa de WebSphere->Iniciar.

Resultados

Defina una conexión segura entre el cliente el servidor de destino que utilice SSL para habilitar la integridad y la confidencialidad de las comunicaciones entre la aplicación JAX-RS y el cliente.


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=twbs_jaxrs_impl_securejaxrs2
File name: twbs_jaxrs_impl_securejaxrs2.0_clientssl.html