Patrón Worklight: manejador de recursos

Utilice este patrón para proporcionar servicios a aplicaciones móviles que utilizan las API de Worklight. Los servicios se exponen a las aplicaciones móviles como procedimientos del adaptador Worklight que se invocan desde el JavaScript de la aplicación.

El patrón se personaliza mediante la implementación de manejadores para cada uno de estos procedimientos como subflujos de WebSphere Message Broker. El patrón proporciona la aplicación de la política de seguridad y el almacenamiento en memoria caché global.

Diagrama que muestra el comportamiento del patrón.

Solución

Los servicios siguen un modelo orientado a recursos con acciones CRUD (Crear, Leer, Actualizar, Suprimir) para el recurso.

Cada adaptador proporciona hasta cuatro procedimientos de tipo un solo recurso-un solo procedimiento para cada una de las acciones CRUD. El patrón se personaliza mediante la implementación de un manejador de procedimientos para cada procedimiento. Los manejadores de procedimientos se implementan como subflujos.

El patrón genera el adaptador que se ejecuta en Worklight Server y un flujo de mensajes que maneja la solicitud de entrada desde el adaptador. Este flujo de mensajes del manejador de solicitudes direcciona la solicitud al subflujo del manejador procedimientos pertinente dependiendo del procedimiento del adaptador que ha invocado la aplicación móvil.

Se establece una conexión HTTP entre el adaptador que se ejecuta en Worklight Server y el flujo de mensajes de manejador de solicitudes que está en ejecución en Message Broker. Worklight es el cliente HTTP y Message Broker es el servidor HTTP para esta conexión.

La aplicación móvil invoca el procedimiento del adaptador pasando un objeto JavaScript a una función JavaScript en la API de Worklight. El árbol de mensajes que se propaga al subflujo está en el dominio JSON y contiene los datos del objeto JavaScript proporcionado por la aplicación móvil.

Antes de invocar el subflujo del manejador procedimientos correcto, se comprueba la solicitud con una política de seguridad. Una vez comprobada la seguridad, el proceso puede continuar en el subflujo del manejador de procedimientos. Para las operaciones de lectura, se comprueba una memoria caché interna para ver si la instancia del recurso está disponible sin ningún proceso adicional.

Seguridad

La seguridad es opcional. Si la seguridad está habilitada, la aplicación móvil debe proporcionar una señal de seguridad al procedimiento del adaptador. El patrón proporciona puntos de aplicación de la política de seguridad (PEPs) que llaman a un servidor LDAP como el punto de decisión de políticas de seguridad (PDP).

Los dos aspectos de seguridad que proporciona por este patrón son la autenticación y la autorización

La autenticación se utiliza para garantizar que la solicitud procede de un usuario válido. Esta operación se realiza verificando que la señal proporcionada por la aplicación móvil sea válida. La señal es una combinación del ID de usuario, un carácter de dos puntos y una contraseña. La aplicación móvil concatena estos valores y los codifica en base64. El patrón descodifica esta serie y pasa el ID de usuario y la contraseña al servidor LDAP para su autenticación. Esta validación se realiza antes de que comience cualquier otro proceso en el flujo de mensajes.

Las comprobaciones de autorización se realizan después de que se autentiquen el ID de usuario y la contraseña. El mensaje de solicitud de entrada se analiza para determinar qué acción (CRUD) está solicitándose en el recurso.

Las comprobaciones de autorización se aseguran de que el usuario autenticado tiene permiso para invocar la acción solicitada. El patrón da soporte a dos grupos de autorizaciones:

Memoria caché

El almacenamiento en memoria caché es opcional. Si se habilita el almacenamiento en la memoria caché, se utiliza la tecnología WebSphere Extreme Scale (WXS) incorporada en Message Broker.

Cada vez que se invoca el manejador de procedimientos de lectura, el valor devuelto se añade a la memoria caché. Siempre que se actualiza o se suprime la misma instancia del recurso mediante este adaptador, se elimina de la memoria caché.

Consulte Tareas que deben completarse después de generar el patrón para obtener detalles sobre las opciones de despliegue y cómo se puede compartir la memoria caché entre grupos de ejecución e intermediarios a través de la red para obtener un escalado horizontal.

Despliegue

El patrón genera una aplicación de Message Broker que debe desplegarse en el entorno de ejecución de Message Broker. El adaptador Worklight debe desplegarse en el servidor Worklight para proporcionar la interfaz entre la aplicación móvil y el servicio web que se ejecuta en Message Broker.

Restricciones en el uso del patrón
Adaptadores Worklight
Tareas que deben completarse antes de aplicar el patrón
Parámetros para el patrón
Tareas que deben completarse después de generar el patrón