【问题标题】:Pentaho : how to make SQL SELECT query passing by PDI / Kettle datasource?Pentaho:如何通过 PDI / Kettle 数据源进行 SQL SELECT 查询?
【发布时间】:2023-03-19 17:10:01
【问题描述】:

我只是创建了一个按钮来创建一个 SQL SELECT 字符串。 我想使用注册的 PDI Kettle 转换作为数据源来执行它。

问题:如何将我的 SQL 字符串参数传递给注册为数据源的简单 PDI Ketle 转换,在 ajax 中执行并在 json 回调中获取结果。

我的 Pentaho PDI / Kettle 转换在这里并在 Pentaho CDE 中注册: kettledatasource

这是按钮和函数的开头:js buttonjs button in CDE,代码开头:js button code

【问题讨论】:

    标签: pentaho kettle pentaho-cde


    【解决方案1】:

    简短回答:不要。

    长答案:该查询可以在您应用的 Javascript 层中访问,并且可以被恶意用户查看/编辑。

    如果您直接传递整个查询(顺便说一句,您可以传递),您会打开一个大型安全整体,因为恶意用户可以使用浏览器的控制台轻松替换查询并将任何 SQL 语句注入您的应用程序,包括一个 Drop 语句。

    查询应该被参数化,并且只有参数值被传递给 SQL 查询。 CDA对参数进行了一定程度的净化,去除了单引号等恶意字符。

    但是整个查询呢?只是不要。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-27
      相关资源
      最近更新 更多