Configuración de un conjunto de políticas y enlaces para la firma digital XML con enlaces específicos de aplicación de cliente y proveedor.

Puede crear un conjunto de políticas personalizado y enlaces específicos de aplicación para utilizar la firma digital XML para firmar el cuerpo de los mensajes SOAP de solicitud y respuesta.

Antes de empezar

El proveedor de servicios y el cliente que está configurando deben estar en la aplicación JaxWSServicesSamples. Consulte el tema Acceso a los ejemplos para obtener más información sobre cómo obtener e instalar esta aplicación.

Utilice la siguiente especificación de rastreo en el servidor, que permite depurar cualquier problema de configuración que se pueda producir en un futuro:
*=info:com.ibm.wsspi.wssecurity.*=all:com.ibm.ws.webservices.wssecurity.*=all: 
com.ibm.ws.wssecurity.*=all: com.ibm.xml.soapsec.*=all: com.ibm.ws.webservices.trace.*=all: 
com.ibm.ws.websvcs.trace.*=all:com.ibm.ws.wssecurity.platform.audit.*=off:

Acerca de esta tarea

Configure el conjunto de políticas WS-Security para utilizar sólo la restricción WS-Security de firma digital XML y configure enlaces personalizados específicos de la aplicación XML Digital Signature para un cliente y un proveedor.

Los almacenes de claves que se utilizan en este procedimiento se proporcionan con WebSphere Application Server tradicional y se instalan en cada perfil que se crea. Puede utilizar la variable ${USER_INSTALL_ROOT} directamente en la configuración para apuntar cómodamente a las ubicaciones del almacén de claves sin utilizar una vía de acceso completa. ${USER_INSTALL_ROOT} se resuelve en una vía de acceso como c:/WebSphere/AppServer/profiles/AppSrv01.

${USER_INSTALL_ROOT}/etc/ws-security/samples/dsig-sender.ks
${USER_INSTALL_ROOT}/etc/ws-security/samples/dsig-receiver.ks
Debido a la naturaleza de JaxWSServicesSamples, para aplicar el conjunto de políticas y los enlaces a esta aplicación, en la consola administrativa, pulse Aplicaciones > Tipos de aplicación > Aplicaciones de empresa de WebSphere > JaxWSServicesSamples. Cuando utilice sus propias aplicaciones, puede utilizar las siguientes vías como una forma alternativa para acceder al proveedor y al cliente para conectar el conjunto de políticas y los enlaces:
* Servicios > Proveedores de servicios > (AppName)
* Servicios > Clientes de servicios > (AppName)
Avoid trouble Avoid trouble: Preste mucha atención a los nombres de los consumidores y generadores de señales en la consola administrativa. El iniciador y el destinatario pueden no actuar de la forma que espera para las señales. La columna de uso de la tabla especifica si una señal es de consumidor o generador. gotcha

Procedimiento

  1. Cree el conjunto de políticas personalizado.
    1. En la consola administrativa, pulse Servicios > Conjuntos de políticas.
    2. Pulse Nuevo.
    3. Especifique Name=AsignPolicy.
    4. Pulse Aplicar.
    5. En Políticas, pulse Añadir > WS-Security.
  2. Edite el conjunto de políticas personalizado para eliminar el cifrado y la indicación de la hora.
    1. En la consola administrativa, pulse WS-Security > Política principal.
    2. Bajo Protección de nivel de mensaje, pulse Protección de parte de mensaje de solicitud.
    3. Pulse app_encparts.
    4. Pulse Suprimir.
    5. Pulse Hecho.
    6. Pulse Protección de parte de mensaje de respuesta.
    7. Pulse app_encparts.
    8. Pulse Suprimir.
    9. Pulse Hecho.
    10. Deseleccione Incluir indicación de fecha y hora en la cabecera de seguridad.
    11. Pulse Aplicar.
    12. Guarde la configuración.
  3. Configure el cliente para utilizar el conjunto de políticas AsignPolicy.
    1. En la consola administrativa, pulse Aplicaciones > Tipos de aplicación > Aplicaciones empresariales de WebSphere > JaxWSServicesSamples > Conjunots de políticas y enlaces de cliente de servicio.
    2. Seleccione el recurso de cliente de servicios web (JaxWSServicesSamples).
    3. Pulse Conectar conjunto de políticas.
    4. Seleccione AsignPolicy.
  4. Cree un enlace personalizado para el cliente.
    1. Vuelva a seleccionar el recurso de servicios web.
    2. Pulse Asignar enlace.
    3. Pulse Nuevo enlace específico de la aplicación para crear un enlace específico de la aplicación.
    4. Especifique el nombre de configuración de los enlaces.

      nombre: clientBinding

    5. Pulse Añadir > WS-Security.
    6. Si no aparece el panel Enlaces de política de seguridad de mensajes principales, seleccione WS-Security.
  5. Configure los enlaces personalizados del cliente.
    1. Configure un almacén de certificados.
      1. Pulse Claves y certificados.
      2. En Almacén de certificados, pulse Nueva entrada... .
      3. Especifique name=clientCertStore.
      4. Especifique Intermediate X.509 certificate=${USER_INSTALL_ROOT}/etc/ws-security/samples/intca2.cer.
      5. Pulse Aceptar.
    2. Configure un ancla de confianza.
      1. En ancla de confianza, pulse Nuevo...
      2. Especifique name=clientTrustAnchor.
      3. Pulse Almacén de claves externo .
      4. Especifique Full path=${USER_INSTALL_ROOT}/etc/ws-security/samples/dsig-sender.ks.
      5. Especifique Contraseña=cliente.
      6. Pulse Aceptar.
      7. Pulse WS-Security en la navegación de esta página.
    3. Configure el generador de firmas.
      1. Pulse Autenticación y protección > AsymmetricBindingInitiatorSignatureToken0 (firma del generador)y, a continuación, pulse Aplicar.
      2. Pulse Manejador de retorno de llamada.
      3. Especifique Keystore=custom.
      4. Pulse Configuración de almacén de claves personalizado y, a continuación, pulse
        • Full path==${USER_INSTALL_ROOT}/etc/ws-security/samples/dsig-sender.ks
        • Keystore password=cliente
        • Name=cliente
        • Alias=soaprequester
        • Password=cliente
      5. Pulse Aceptar, Aceptar y Aceptar.
    4. Configure el consumidor de firma.
      1. Pulse AsymmetricBindingRecipientSignatureToken0 (consumidor de firmas) y, a continuación, pulseAplicar.
      2. Pulse Manejador de retorno de llamada.
      3. Bajo Certificados, haga clic en el botón radial Almacén de certificados y especifique:
        • Certificate store=clientCertStore
        • Almacén de ancla de confianza=clientTrustAnchor
      4. Pulse Aceptar y Aceptar.
    5. Configure la información de firma de solicitud.
      1. Pulse request:app_signparts y especifique Name=clientReqSignInfo.
      2. En Información de clave de firmante, pulse Nuevo y, a continuación, especifique:
        • Name=clientReqSignKeyInfo
        • Tipo=Security Token reference
        • Consumidor o generador de señales name=AsymmetricBindingInitiatorSignatureToken0
      3. Pulse Aceptar y, a continuación, pulse Aplicar.
      4. Bajo Referencia de parte del mensaje, seleccione request:app_signparts .
      5. Pulse Editar.
      6. En los algoritmos de transformación, pulse Nuevo
      7. Especifique URL=http://www.w3.org/2001/10/xml-exc-c14n#.
      8. Pulse Aceptar, Aceptar y Aceptar.
    6. Configure la información de firma de respuesta.
      1. Pulse response:app_signparts y especifique Name=clientRespSignInfo.
      2. Pulse Aplicar.
      3. En Información de clave de firmante, pulse Nuevo y, a continuación, especifique:
        • Nombre=clientRspSignKeyInfo
        • Consumidor o generador de señales name=AsymmetricBindingRecipientSignatureToken0
      4. Pulse Aceptar.
      5. Bajo Información de clave de firma, pulse clientRspSignKeyinfo y, a continuación, pulse Añadir.
      6. Bajo Referencia de parte de mensaje, seleccione response:app_signparts .
      7. Pulse Editar.
      8. En los algoritmos de transformación, pulse Nuevo
      9. Especifique URL=http://www.w3.org/2001/10/xml-exc-c14n#.
      10. Pulse Aceptar, Aceptar y Aceptar.
  6. Configure el proveedor para utilizar el conjunto de políticas AsignPolicy.
    1. En la consola administrativa, pulse Aplicaciones > Tipos de aplicación > Aplicaciones de empresa de WebSphere > JaxWSServicesSamples > Conjuntos de políticas y enlaces de proveedor de servicio.
    2. Seleccione el recurso de proveedor de servicios web (JaxWSServicesSamples).
    3. Pulse Conectar conjunto de políticas.
    4. Seleccione AsignPolicy.
  7. Cree un enlace personalizado para el proveedor.
    1. Vuelva a seleccionar el recurso de proveedor de servicios web.
    2. Pulse Asignar enlace.
    3. Pulse Nuevo enlace específico de la aplicación para crear un enlace específico de la aplicación.
    4. Especifique Nombre de configuración de enlaces:providerBinding.
    5. Pulse Añadir > WS-Security.
    6. Si no aparece el panel Enlaces de política de seguridad de mensajes principales, seleccione WS-Security.
  8. Configure los enlaces personalizados para el proveedor.
    1. Configure un almacén de certificados.
      1. Pulse Claves y certificados.
      2. En Almacén de certificados, pulse Nueva entrada... .
      3. Especificar:
        • Nombre=providerCertStore
        • Certificados X.509 intermedios=${USER_INSTALL_ROOT}/etc/ws-security/samples/intca2.cer
      4. Pulse Aceptar.
    2. Configure un ancla de confianza.
      1. En ancla de confianza, pulse Nuevo...
      2. Especifique Nombre=providerTrustAnchor.
      3. Pulse Almacén de claves externo y especifique:
        • Vía de acceso completa=${USER_INSTALL_ROOT}/etc/ws-security/samples/dsig-receiver.ks
        • Contraseña=server
      4. Pulse Aceptar y, a continuación, pulse WS-Security en la navegación de esta página.
    3. Configure el generador de firmas.
      1. Pulse Autenticación y protección > AsymmetricBindingRecipientSignatureToken0 (firma del generador)y, a continuación, pulse Aplicar.
      2. Pulse Manejador de retorno de llamada.
      3. Especifique Keystore=custom.
      4. Pulse Configuración de almacén de claves personalizado y, a continuación, pulse
        • Vía de acceso completa=${USER_INSTALL_ROOT}/etc/ws-security/samples/dsig-receiver.ks
        • Contraseña de almacén de claves=server
        • Nombre=server
        • Alias=soapprovider
        • Contraseña=server
      5. Pulse Aceptar, Aceptar y Aceptar.
    4. Configure el consumidor de firma.
      1. Pulse AsymmetricBindingInitiatorSignatureToken0 (consumidor de firmas) y, a continuación, pulseAplicar.
      2. Pulse Manejador de retorno de llamada.
      3. Bajo Certificados, haga clic en el botón radial del almacén de certificados y especifique:
        • Almacén de certificados=providerCertStore
        • Almacén de ancla de confianza=providerTrustAnchor
      4. Pulse Aceptar.
      5. Pulse Autenticación y protección en la navegación de esta página.
    5. Configure la información de firma de solicitud.
      1. Pulse request:app_signparts y especifique Name=reqSignInf.
      2. Pulse Aplicar.
      3. En Información de clave de firmante, pulse Nuevo y, a continuación, especifique:
        • Nombre=reqSignKeyInfo
        • Consumidor o generador de señales name=AsymmetricBindingInitiatorSignatureToken0
      4. Pulse Aceptar.
      5. En Información de clave de firma, pulse reqSignKeyinfoy, a continuación, pulse Añadir.
      6. Bajo Referencia de parte del mensaje, seleccione request:app_signparts .
      7. Pulse Editar.
      8. En Algoritmos de transformación, pulse Nuevo y, a continuación, especifique URL=http://www.w3.org/2001/10/xml-exc-c14n#.
      9. Pulse Aceptar, Aceptar y Aceptar.
    6. Configure la información de firma de respuesta.
      1. Pulse response:app_signparts y especifique Name=rspSignInfo.
      2. Pulse Aplicar.
      3. En Información de clave de firmante, pulse Nuevo y, a continuación, especifique:
        • Nombre=rspSignKeyInfo
        • Tipo=Security Token reference
        • Consumidor o generador de señales name=AsymmetricBindingRecipientSignatureToken0
      4. Pulse Aceptar y, a continuación, pulse Aplicar.
      5. Bajo Referencia de parte de mensaje, seleccione response:app_signparts .
      6. Pulse Editar.
      7. En Algoritmos de transformación, pulse Nuevo.
      8. Especifique URL=http://www.w3.org/2001/10/xml-exc-c14n#.
      9. Pulse Aceptar, Aceptar y Aceptar.
  9. Pulse Guardar para guardar los cambios realizados en la configuración.
  10. Reinicie el cliente y el proveedor.
    1. Detenga el cliente y el proveedor.
    2. Reinicie el cliente y el proveedor.
  11. Pruebe el servicio.
    1. Apunte el navegador web a JaxWSServicesSamples:
      http://localhost:9080/wssamplesei/demo
      Avoid trouble Avoid trouble: Asegúrese de proporcionar el nombre de host y el puerto correctos si el perfil no está en la misma máquina, o el puerto no es 9080. gotcha
    2. Seleccione Eco síncrono del tipo de mensaje.
    3. Asegúrese de que Utilizar SOAP 1.2 no está seleccionado.
    4. Escriba un mensaje y pulse Enviar mensaje.
    La aplicación de ejemplo debería responder con JAXWS==>Message.

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_xmlds_policyset
File name: twbs_xmlds_policyset.html