Objetos de datos parametrizados en Jitterbit App Builder
En situaciones típicas, los desarrolladores restringen el acceso a las filas mediante el objeto de datos. WHERE
Cláusula. Esto ocurre en tiempo de diseño. El objeto de datos puede estar restringido en tiempo de ejecución por criterios de enlace de paneles o páginas. Por ejemplo, un panel de una sola fila debe estar enlazado de tal manera que el objeto de datos devuelva una sola fila. En cualquier caso, el usuario tiene permiso para ver cualquier fila del objeto de datos dado, siempre que no esté excluida por los criterios de enlace de este. WHERE
cláusula.
Sin embargo, en algunos casos, los desarrolladores podrían necesitar restringir el acceso a las filas de objetos de datos en tiempo de diseño según los criterios de enlace proporcionados en tiempo de ejecución. En estos casos, el usuario solo debería poder acceder a las filas que pueda identificar.
Por ejemplo, imagine una aplicación de autorregistro que permite a los usuarios crear cuentas. La aplicación envía un correo a la correo proporcionada por el usuario. El correo contiene un enlace a la aplicación de autorregistro. El enlace contiene un token secreto que se pasa como criterio vinculante a la página de confirmación. Esto permite al usuario ver y confirmar su registro pendiente.
En el caso del autorregistro, el desarrollador debe asegurarse de que el objeto de datos de la página de confirmación esté vinculado al token secreto. De lo contrario, un usuario malintencionado podría simplemente eliminar el token secreto de la URL para ver otros registros pendientes. Esto permitiría al usuario confirmar el registro para una dirección de correo a la que no tiene acceso.
Para evitarlo, el desarrollador debe asegurarse de que el usuario proporcione su token secreto al consultar las confirmaciones pendientes. Esto puede lograrse mediante un objeto de datos parametrizado.
Para crear un objeto de datos parametrizado, el desarrollador debe indicar que una o más columnas son vinculantes. En tiempo de ejecución, antes de ejecutar el evento Filter, App Builder confirmará que el cliente ha proporcionado valores para cada columna vinculante. Si no se ha proporcionado un valor para la columna vinculante, App Builder generará una excepción. Esto evita que los usuarios, malintencionados o no, ejecuten una consultar que recupere todas las filas del objeto de datos. En el ejemplo de autorregistro, el usuario solo puede recuperar una confirmación pendiente si ya conoce el token secreto.
Problemas y limitaciones conocidos
Los desarrolladores no pueden usar la vista Resultados para consultar un objeto de datos parametrizado. Esta vista se ejecuta sin ningún criterio de vinculación. No se pueden programar eventos de objetos de datos parametrizados. App Builder no proporciona criterios de vinculación al consultar el objeto de datos del evento programado.