Acerca del ejemplo de Propagación de identidad de seguridad

El ejemplo Propagación de identidad de seguridad muestra cómo utilizar algunas de las características de Seguridad de identidad que se proporcionan en WebSphere Message Broker.

Puesto que una implementación de seguridad real depende de un proveedor de seguridad externo centralizado para definir las identidades y las autorizaciones, este ejemplo no implementa la aplicación de seguridad. El ejemplo creado previamente muestra cómo extraer las credenciales de seguridad de mensajes en nodos MQInput y HTTPInput, cómo manipular las credenciales de seguridad utilizando ESQL y cómo informar sobre ellas y, opcionalmente, correlacionarlas. Asimismo, el ejemplo muestra cómo propagar la identidad utilizando los nodos MQOutput y HTTPRequest.

La sección "Ampliar el ejemplo" proporciona información detallada sobre cómo incluir un proveedor de seguridad externo en el ejemplo.

El ejemplo de Propagación de identidad de seguridad muestra las siguientes tareas:

Para obtener detalles sobre los conceptos relacionados con la seguridad de flujos de mensajes, consulte Seguridad de flujo de mensajes en la documentación de WebSphere Message Broker.

Los flujos de mensajes

El siguiente diagrama muestra el flujo de mensajes del ejemplo principal Propagación de seguridad, que es SecurityIdentitySampleFlow.msgflow en el proyecto de Message Broker SecurityIdentitySampleFlowProject. El flujo de mensajes consta de un nodo HTTPInput y dos nodos MQInput que invocan un subflujo común.

Una captura de pantalla del flujo de mensajes principal de propagación de seguridad.

El nodo HTTPInput, llamado HTTP_ID, extrae la Identidad que se pasa en la cabecera de Autenticación básica HTTP, que codifica una señal de nombre de usuario y contraseña de las peticiones entrantes. El nodo HTTPInput está configurado en el archivo BAR que se proporciona, SecurityIdentityPropagation.bar, para que tenga un valor de perfil de seguridad de Propagación predeterminada.

El nodo MQ_ID MQInput extrae la Identidad, sólo con un nombre de usuario, que se pasa a la cabecera de mensaje MQMD de WebSphere MQ del mensaje entrante. El nodo MQ_ID está configurado en el archivo BAR que se proporciona, SecurityIdentityPropagation.bar, para que tenga un valor de perfil de seguridad de Propagación predeterminada.

El nodo MSG_ID MQInput extrae un conjunto de credenciales de identidad que constan de un nombre de usuario y una contraseña. Las propiedades de seguridad del nodo MSG_ID se configuran de forma que las credenciales de identidad pasen al cuerpo del mensaje WebSphere MQ. El nodo MSG_ID está configurado en el archivo BAR que se proporciona, SecurityIdentityPropagation.bar, para que tenga un valor de perfil de seguridad de Propagación predeterminada.

El diagrama siguiente muestra el subflujo Ejemplo de propagación de identidad, SecurityIdentitySubFlow.msgflow, invocado por todos los nodos de entrada.

Una captura de pantalla del subflujo de Propagación de identidad de seguridad.

El subflujo contiene un nodo Compute, denominado MapIdentity, que puede establecer la Identidad correlacionada en la carpeta de propiedades del mensaje, si el contenido del mensaje de entrada solicita que se establezca la identidad correlacionada. El nodo HTTPRequest, denominado HTTP_ReqAsID, utiliza la identidad de origen o la identidad correlacionada de la carpeta de propiedades para emitir una petición al flujo de mensajes SecurityIdentityReportFlow. Este nodo sustituye el árbol de mensaje por la respuesta de ese flujo. HTTPRequestNode propaga el origen de la identidad correlacionada porque está configurado en el archivo BAR que se proporciona, SecurityIdentityPropagation.bar, para que tenga un perfil de seguridad de Propagación predeterminada. El nodo final Compute, denominado ClearHdrs, se proporciona para borrar la cabecera de petición HTTP en el caso que el flujo principal envíe un mensaje de respuesta a través de WebSphere MQ.

El diagrama siguiente muestra el flujo de mensajes Identidad del informe del ejemplo de propagación de seguridad, denominado SecurityIdentityReportFlow.msgflow, que invoca el subflujo. Este flujo de mensajes propaga la identidad pertinente.

Una captura de pantalla del flujo de mensajes de Informe de identidad de propagación de seguridad.

El nodo Report Identity Compute del flujo de mensajes Informe de identidad de propagación de seguridad informa de la identidad recibida en los campos de elementos del cuerpo del mensaje, si está presenta la carpeta body.

Los mensajes

Se proporcionan tres mensajes de entrada para ejecutar el ejemplo de Propagación de identidad de seguridad:

Volver a la página inicial del ejemplo