Firma de señales SAML en el nivel de mensajes

Proteja las señales SAML en el nivel de mensaje habilitando la firma de aserciones.

Antes de empezar

Antes de configurar la firma para señales SAML, debe configurar los conjuntos de políticas y enlaces SAML para crear señales SAML como señales de autenticación de soporte, con la protección de la integridad de nivel de mensajes. Para obtener más información, consulte la información sobre cómo proteger los mensajes mediante SAML. Además, los enlaces SAML adjuntados deben ser enlaces específicos de aplicación, no enlaces generales. El algoritmo de transformación que se utiliza para aserciones SAML de firma es distinto del resto de partes firmadas, aunque sólo se utiliza un algoritmo de transformación con los enlaces generales.

Acerca de esta tarea

En esta tarea se aborda específicamente los pasos de cómo firmar digitalmente una señal SAML. No describe ninguno de los requisitos estándares de OASIS de perfil de señal SAML para sender-vouches SAML ni señales de portador SAML relativas a partes de mensaje que deben firmarse. Para firmar aserciones SAML, un mensaje SOAP debe incluir un elemento <wsse:SecurityTokenReference> en el bloque de cabecera <wsse:Security>. Se hace referencia a STR (SecurityTokenReference) mediante la firma de mensaje utilizando un elemento <ds:Reference>. La referencia de señal de seguridad debe incluir un elemento <wsse:KeyIdentifier> con el valor ValueType, http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLID, o http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.0#SAMLAssertionID, especificando el identificador de aserción referenciada. El elemento <ds:Reference> debe incluir el URI del algoritmo de transformación STR, http://docs.oasis-open.org/wss/2004/01/oasis-200401-wsssoap-message-security-1.0#STR-Transform. El uso de la transformación STR garantiza que la aserción propiamente dicha está firmada, no sólo el elemento <wsse:SecurityTokenReference>.

Siga estos pasos de configuración para habilitar señales SAML de firma en el nivel de mensajes.

Avoid trouble Avoid trouble: La utilización de un manejador de devolución de llamada de atributos SAML es la única forma de añadir atributos personalizados a una señal SAML en la creación inicial. Aunque puede añadir atributos al objeto SAMLToken utilizando el método SAMLToken.addAttribute, éste eliminará la firma digital de la señal si existe. Tampoco puede utilizarse con atributos cifrados o señales SAML cifradas. gotcha

Procedimiento

  1. Configure las partes de los mensajes.
    1. En la consola administrativa, edite el conjunto de políticas SAML y, a continuación, pulse WS-Security > Política principal > Solicitar protección de parte de mensaje.
    2. En Protección de integridad, pulse Añadir.
    3. Especifique un nombre de componente para Nombre de la parte que se va a firmar; por ejemplo, saml_part.
    4. En Elementos en la parte, pulse Añadir.
    5. Seleccione Expresión XPath.
    6. Añada dos expresiones XPath.
      /*[namespace-uri()='http://schemas.xmlsoap.org/soap/envelope/' 
      and local-name()='Envelope']/*[namespace-uri()='http://schemas.xmlsoap.org/soap/envelope/' 
      and local-name()='Header']/*[namespace-uri()='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd' 
      and local-name()='Security']/*[namespace-uri()='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd' 
      and local-name()='SecurityTokenReference']
      /*[namespace-uri()='http://www.w3.org/2003/05/soap-envelope' 
      and local-name()='Envelope']/*[namespace-uri()='http://www.w3.org/2003/05/soap-envelope' 
      and local-name()='Header']/*[namespace-uri()='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd' 
      and local-name()='Security']/*[namespace-uri()='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd' 
      and local-name()='SecurityTokenReference']
    7. Pulse Aplicar y Guardar.
    8. Si una aplicación nunca se ha iniciado utilizando esta política, no es necesario llevar a cabo ninguna acción más. De lo contrario, reinicie el servidor de aplicaciones o siga las instrucciones del artículo Renovación de las configuraciones del conjunto de políticas mediante scripts wsadmin, para que el servidor de aplicaciones vuelva a cargar el conjunto de políticas.
  2. Modifique los enlaces de cliente para firmar la señal SAML.
    1. En el panel de conjunto de políticas y enlaces de cliente de servicio, pulse WS-Security > Autenticación y protección.
    2. Modifique los enlaces de la parte firmada del mensaje de salida configurados para incluir la nueva parte SAML que ha creado.

      En Protección de firma y cifrado de mensaje de solicitud, seleccione la referencia de parte cuyo estado se ha establecido en Configurado. La referencia a esta parte será con mayor probabilidad request:app_signparts.

      1. En la lista Disponible bajo Referencia de parte de mensaje, seleccione el nombre de la parte que se va a firmar, tal como se ha creado en el paso 1; por ejemplo, saml_part.
      2. Pulse Añadir y, a continuación, pulse Aplicar.
      3. En la lista Asignada bajo Referencia de parte de mensaje, resalte el nombre de la parte que ha añadido; por ejemplo, saml_part.
      4. Pulse Editar.
      5. Para el valor Algoritmos de transformación, pulse Nuevo.
      6. Seleccione http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#STR-Transform.
      7. Pulse Aceptar, pulse Aceptar y, a continuación, pulse Aceptar otra vez.
    3. Actualice el generador de señales SAML con la propiedad personalizada para indicar una firma digital con una Referencia de señal de seguridad.

      En Señales de autenticación, seleccione y edite la señal SAML que desee firmar.

      1. En Propiedad personalizada, pulse Nuevo.
      2. Especifique com.ibm.ws.wssecurity.createSTR como nombre de propiedad personalizada.
      3. Especifique true como valor de la propiedad personalizada.
      4. Pulse Aplicar y, a continuación, pulse Guardar.
    4. Reinicie la aplicación.
  3. Modificar los enlaces de proveedor para aceptar una señal SAML firmada.
    1. En el panel de conjuntos de políticas y enlaces de proveedor de servicio, pulse WS-Security > Autenticación y protección.
    2. Modifique los enlaces de la parte firmada del mensaje de entrada configurados para incluir la nueva parte SAML que ha creado.

      En Protección de firma y cifrado de mensaje de solicitud, seleccione la referencia de parte cuyo estado se ha establecido en Configurado. La referencia a esta parte será con mayor probabilidad request:app_signparts.

      1. En la lista Disponible bajo Referencia de parte de mensaje, seleccione el nombre de la parte que se va a firmar, tal como se ha creado en el paso 1; por ejemplo, saml_part.
      2. Pulse Añadir y, a continuación, pulse Aplicar.
      3. En la lista Asignada bajo Referencia de parte de mensaje, resalte el nombre de la parte que ha añadido; por ejemplo, saml_part.
      4. Pulse Editar.
      5. Para el valor Algoritmos de transformación, pulse Nuevo.
      6. Seleccione http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#STR-Transform.
      7. Pulse Aceptar, pulse Aceptar y, a continuación, pulse Aceptar otra vez.
      8. Pulse Guardar.
    3. Reinicie la aplicación.

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_signsamltoken
File name: twbs_signsamltoken.html