Configuración de la seguridad de servicios web mediante las API de WSS

Las interfaces de programación de aplicaciones de Web Services Security (API de WSS) proporcionan soporte para proteger los mensajes SOAP.

Antes de empezar

Web Service Security soporta los modelos de programación siguientes:

  • API de programación para proteger los mensajes SOAP con la API de WSS (Web Services Security).

    Se ha rediseñado el diseño del modelo de programación de la API. El nuevo diseño es un modelo de programación basado en una interfaz y se basa en los estándares de Web Services Security Versión 1.1, pero el diseño también incluye soporte para Web Services Security Versión 1.0 para proteger el mensaje SOAP. La implementación del modelo de programación de la API WSS es una versión simplificada, que se basa en una propuesta de borrador anterior de JSR-183, que es la JSR para definir el enlace de API Java™ para Web Services Security. Debido al diseño, ya que el código de aplicación está programado en la interfaz, todo código de aplicación que se programe con la implementación de código abierto debe poder ejecutarse en WebSphere Application Server con cambios mínimos o ningún cambio en absoluto.

  • Interfaces de programación del servicio (SPI) para un proveedor de servicios

    De forma similar, la generación de señales de tiempo de ejecución de Web Services Security y la SPI que consume las señales se han rediseñado para que se puedan utilizar las mismas interfaces de la señal de seguridad e implementación del módulo de inicio de sesión de JAAS, tanto para la API como la SPI de WSS. La SPI de WSS para el proveedor de servicios amplía los tipos de señal de seguridad y proporciona claves y claves de derivación para la firma, la verificación de firma, el cifrado y el descifrado.

Sentencia de uso: Debe utilizar la implementación de IBM de los estándares de WS-Security en el contexto de los servicios web.

Acerca de esta tarea

Estos modelos de programación amplían las siguientes funciones:
  • Tipos de señal de seguridad y claves de derivación para firmar
  • Firma y verificación
  • Cifrado y descifrado

En la figura siguiente se ilustra cómo utilizar las API de WSS simplificadas para proteger un mensaje SOAP utilizando la firma digital XML y el cifrado XML.

El modelo de configuración de servicios web también se ha rediseñado de un modelo de descriptor de despliegue a un modelo de conjunto de políticas. El modelo de programación de la configuración se basa en la configuración de los conjuntos de políticas, utilizando una política de seguridad para especificar las limitaciones de seguridad.

Las funciones proporcionadas por las configuraciones de conjunto de políticas son las mismas que las funciones soportadas por la API WSS para el tiempo de ejecución de Web Services Security. Sin embargo, la política de seguridad que se ha definido utilizando los conjuntos de políticas tiene una mayor prioridad sobre la API de WSS. Cuando en la aplicación se utilizan tanto la API de WSS como el conjunto de políticas, el comportamiento predeterminado es que se aplique la política de seguridad del conjunto de políticas y que se ignore la API de WSS. Para utilizar la API de WSS en la aplicación, debe asegurarse de que no existe ningún conjunto de políticas adjunto a la aplicación o a los recursos de la aplicación, o asegurarse de que no hay ninguna política de seguridad en el conjunto de políticas adjunto.

Se puede habilitar Web Service Security utilizando un conjunto de políticas configurado mediante la consola administrativa o utilizando la API de WSS para la configuración.

Al utilizar la API de WSS, complete los siguientes pasos de alto nivel para proteger el mensaje SOAP:

Procedimiento

  1. Utilice la API WSSSignature para configurar la información de firmas para el enlace del generador de solicitudes (lado del cliente). Se pueden especificar diferentes partes de mensaje en la protección del mensaje para una solicitud en el lado del generador. Las partes necesarias predeterminadas son BODY, ADDRESSING_HEADERS y TIMESTAMP.

    La API WSSSignature también especifica los distintos métodos de algoritmo que se van a utilizar con la firma para la protección del mensaje. El método de firma predeterminado es RSA_SHA1. El método de canonicalización predeterminado es EXC_C14N.

  2. Utilice la API WSSSignPart, si desea añadir o cambiar las partes firmadas que se van a utilizar para la protección del mensaje. Las partes firmadas predeterminadas son WSSSignature.BODY, WSSSignature.ADDRESSING_HEADERS y WSSSignature.TIMESTAMP.

    La API WSSSignPart también especifica los distintos métodos de algoritmo que se van a utilizar, si añade o modifica las partes firmadas. El método de conversión predeterminado es SHA1. El método de transformación predeterminado es TRANSFORM_EXC_C14N. Por ejemplo, utilice la API WSSSignPart, si desea generar la firma para el mensaje SOAP utilizando el método de conversión SHA256, en lugar del valor predeterminado de SHA1.

  3. Utilice la API WSSEncryption para configurar la información de cifrado en el lado del generador de solicitudes. La información de cifrado en el lado del generador se utiliza para cifrar un mensaje SOAP saliente para los enlaces del generador de solicitudes (lado del cliente). Los destinos predeterminados del cifrado son BODY_CONTENT y SIGNATURE

    La API WSSEncryption también especifica los distintos métodos de algoritmo que se van a utilizar para proteger la confidencialidad del mensaje. El método de cifrado de datos predeterminado es AES128. El método de cifrado de claves predeterminado es KW_RSA_OAEP.

  4. Utilice la API WSSEncryptPart si desea añadir o cambiar partes cifradas que se van a utilizar para la confidencialidad del mensaje. Por ejemplo, si desea cambiar el método de cifrado de datos del valor predeterminado de AES128 a TRIPLE_DES.

    No son necesarios métodos de algoritmo para las partes cifradas.

  5. Utilice la API WSS para conectar la señal en el lado del generador. Los requisitos de la señal de seguridad dependen del tipo de señal. El módulo de inicio de sesión de JAAS y CallbackHandler de JAAS son responsables de crear la señal de seguridad en el lado del generador. Se pueden enviar diferentes señales autónomas en una solicitud o respuesta. La señal predeterminada es X509Token. La otra señal que se puede utilizar para firmar es DerivedKeyToken, que sólo se utiliza con Web Services Secure Conversation (WS-SecureConversation).
  6. Utilice la API WSSVerification para verificar la firma para el enlace del consumidor de respuestas (lado del cliente) . Se pueden especificar distintas partes de mensaje en la protección del mensaje para una respuesta en el lado del consumidor. Los destinos necesarios para la verificación son BODY, ADDRESSING_HEADERS y TIMESTAMP.

    La API WSSVerification también especifica los distintos métodos de algoritmo que se van a utilizar para verificar la firma y para la protección del mensaje. El método de firma predeterminado es RSA_SHA1. El método de canonicalización predeterminado es EXC_C14N.

  7. Utilice la API WSSVerifyPart para añadir o cambiar las partes firmadas de verificación que se van a utilizar para la protección del mensaje. Las partes de verificación necesarias son WSSVerification.BODY, WSSVerification.ADDRESSING_HEADERS y WSSVerification.TIMESTAMP.

    La API WSSVerifyPart también especifica los distintos métodos de algoritmo que se van a utilizar, si añade o cambia las partes de verificación. El método de conversión predeterminado es SHA1. El método de transformación predeterminado es TRANSFORM_EXC_C14N.

  8. Utilice la API WSSDecryption para configurar la información de descifrado para el enlace del consumidor de respuestas (lado del cliente). La información de descifrado sobre el lado del consumidor se utiliza para descifrar un mensaje SOAP entrante. Los destinos predeterminados de descifrado son BODY_CONTENT y SIGNATURE. El método de cifrado de datos predeterminado es AES128. El método de cifrado de claves predeterminado es KW_RSA_OAEP.

    No es necesario ningún método de algoritmo para el descifrado.

  9. Utilice la API WSSDecryptPart, si desea añadir o cambiar las partes descifradas que se van a utilizar para la confidencialidad del mensaje. Por ejemplo, si desea cambiar el método de cifrado de datos del valor predeterminado de AES128 a TRIPLE_DES.

    No es necesario ningún método de algoritmo para las partes descifradas.

  10. Utilice la API de WSS para configurar la señal en el lado del consumidor. Los requisitos de la señal de seguridad dependen del tipo de señal. El módulo de inicio de sesión JAAS y CallbackHandler de JAAS son responsables de validar (autenticar) la señal de seguridad en el lado del consumidor. Se pueden enviar diferentes señales autónomas en una solicitud o respuesta.

    La API de WSS añade la información de la señal del candidato que se utiliza para el descifrado. La señal predeterminada es X509Token.

Resultados

Qué hacer a continuación

La generación de señales de ejecución de Web Services Security y la SPI (interfaces de programación del servicio) que consume señales se han rediseñado, para que se puedan utilizar las mismas interfaces de señales de seguridad e implementación del módulo de inicio de sesión de JAAS, tanto en la API como en la SPI de WSS API. Consulte la información de la SPI si desea obtener descripciones detalladas.


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_confwssapi
File name: twbs_confwssapi.html