Adición de partes cifradas mediante la API WSSEncryptPart

Puede proteger los mensajes SOAP, sin utilizar conjuntos de políticas para la configuración, utilizando las API de WSS (Web Services Security). Para configurar las partes cifradas de los enlaces del generador de solicitudes (lado del cliente), utilice la API WSSEncryptPart para definir y añadir a la lista de elementos de la parte cifrada. WSSEncryptPart es una interfaz que forma parte del paquete com.ibm.websphere.wssecurity.wssapi.encryption.

Antes de empezar

Puede utilizar las API de WSS o configurar conjuntos de políticas utilizando la consola administrativa para habilitar las partes cifradas. Para proteger mensajes SOAP, utilice las API de WSS para completar las tareas de cifrado siguientes, según sea necesario:

  • Configurar el cifrado y seleccionar los métodos de cifrado utilizando la API WSSEncryption.
  • Configurar las partes cifradas utilizando la API WSSEncryptpart, según sea necesario.

Acerca de esta tarea

Los valores de confidencialidad requieren que las limitaciones de confidencialidad se apliquen a los mensajes generados. Estas limitaciones incluyen especificar las partes del mensaje dentro del mensaje generado que se deben cifrar y las partes del mensaje a las que se adjuntan elementos cifrados. La información de cifrado del generador se utiliza para cifrar un mensaje SOAP saliente. El generador de solicitudes se configura para el cliente.

La API WSSEncryptPart especifica la información relacionada con las partes cifradas y establece las partes cifradas que se han añadido para la protección de la confidencialidad del mensaje. Utilice WSSEncryptPart para establecer el método de transformación y para especificar la parte a la que se aplica el método de transformación. Establece el método de transformación sólo si se utiliza SOAP with Attachments. Normalmente, no es necesaria la parte WSSEncryptPart, excepto en algunos casos para tareas como, por ejemplo, establecer el método de transformación.

Las partes cifradas y la información relacionada visualizadas en la tabla siguiente se utilizan para proteger la confidencialidad de mensajes.

Tabla 1. Partes cifradas. Utilice las partes cifradas para proteger los mensajes.
Partes cifradas Descripción
part Añade el objeto WSSEncryptPart como un destino de la parte de cifrado.
palabra clave

Añade las partes cifradas utilizando palabras clave. Las partes de cifrado predeterminadas que puede añadir utilizando palabras clave son BODY_CONTENT y SIGNATURE. WebSphere Application Server soporta el uso de estas palabras clave:

  • BODY_CONTENT
  • SIGNATURE
xpath Añade la parte cifrada utilizando una expresión XPath.
signature Añade el componente WSSSignature como un destino de la parte cifrada.

Sólo es aplicable WSSSignature, si el mensaje SOAP contiene un elemento de firma.

cabecera Añade la cabecera SOAP, especificada por QName, como un destino de la parte cifrada.
securityToken Añade el objeto SecurityToken como un destino de la parte cifrada.

Para las partes cifradas, se producen determinados comportamientos predeterminados. La forma más fácil de utilizar la API WSSEncryptPart es utilizar el comportamiento predeterminado. La API WSSEncryptPart proporciona valores predeterminados para especificar el algoritmo de transformación, establecer objetos como destinos y especificar las partes cifradas como, por ejemplo: el contenido del cuerpo SOAP y la firma.

Los comportamientos predeterminados de cifrado incluyen:

Tabla 2. Decisiones de la parte cifrada. De forma predeterminada, hay varias partes de mensaje cifradas configuradas.
Decisiones de la parte cifrada Comportamiento predeterminado
Qué partes del mensaje SOAP cifrar utilizando palabras clave

Especifica qué palabras clave utilizar para las partes cifradas. WebSphere Application Server establece las partes del mensaje SOAP siguientes de manera predeterminada para el cifrado:

  • WSSEncryption.BODY_CONTENT
  • WSSEncryption.SIGNATURE
Qué método de transformación añadir

WebSphere Application Server no especifica ningún método de transformación predeterminado. Especifique un método de transformación, sólo si utiliza SOAP with Attachments.

Procedimiento

  1. Para cifrar el mensaje SOAP utilizando la API WSSEncryptPart, en primer lugar, asegúrese de que está instalado el servidor de aplicaciones.
  2. El proceso de la API de WSS que utiliza WSSEncryptPart sigue estos pasos de proceso:
    1. Utiliza WSSFactory.getInstance() para obtener la instancia de implementación de la API de WSS.
    2. Crea la instancia WSSGenerationContext desde la instancia WSSFactory.
    3. Crea SecurityToken a partir de WSSFactory para configurar el cifrado.
    4. Crea WSSEncryption a partir de la instancia WSSFactory utilizando SecurityToken.
    5. Crea WSSEncryptPart a partir de WSSFactory.
    6. Añade las partes que se van a cifrar y aplicar con la transformación en WSSEncryptPart. WebSphere Application Server establece estas partes cifradas de manera predeterminada para WSSEncryptPart: BODY_CONTENT y SIGNATURE. Después de añadir otras partes cifradas, los valores predeterminados ya no son válidos. Por ejemplo, si llama a addEncryptPart(securityToken, false), sólo se cifra la señal de seguridad y no la firma, ni el contenido del cuerpo. Así pues, si desea cifrar la señal de seguridad, la firma y el contenido del cuerpo, debe llamar a addEncryptPart(securityToken, false), addEncryptPart(WSSEncryption.SIGNATURE) y addEncryptPart(WSSEncrypyion.BODY_CONTENT).
    7. Establece el método de transformación.
    8. Añade WSSEncryptPart a WSSEncryption.
    9. Añade WSSEncryption a WSSGenerationContext.
    10. Llama a WSSGenerationContext.process() con el SOAPMessageContext.

Resultados

Si se produce una condición de error durante el cifrado de las partes del mensajes, se proporciona una excepción WSSException. Si es correcto, la API llama a WSSGenerationContext.process(), se genera la cabecera de WS-Security y se protege el mensaje SOAP utilizando Web Services Security.

Qué hacer a continuación

Tras habilitar las partes cifradas para el enlace del generador de solicitudes (lado del cliente), debe especificar las mismas partes para descifrar para los enlaces del consumidor de respuestas (lado del cliente). A continuación, configure el descifrado y las partes descifradas, utilice las API de WSS o configure conjuntos de políticas utilizando la consola administrativa.


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_confwssencryptsecretkey
File name: twbs_confwssencryptsecretkey.html