【问题标题】:RAILS: safe parameterization of user input in ArelRAILS:Arel 中用户输入的安全参数化
【发布时间】:2011-06-20 12:13:37
【问题描述】:

所以在任何人把我打败之前,我知道在调用 Arel 方法时如何做到这一点。我很好奇的是,是否有一种方法可以简单地获取用户输入的 sql 注入安全版本,以便我掌握它并且可以用它做我想做的事情。

理想情况下,我会对以下方面感兴趣:

safe_input_data = Person.sql_safe params[:user_data_for_arel_manipulation]

昨晚我花了一些时间寻找可以做到这一点的东西,但一无所获。我阅读了所有的 ActiveRecord 方法,但在文档的方式中有杰克。仅通过方法名称和这些方法的来源,我什么也没看到。我希望有人知道一些事情。

【问题讨论】:

    标签: ruby-on-rails activerecord sql-injection arel


    【解决方案1】:

    这会给你一个 sql 安全字符串:

    safe_input_data = Person.sanitize(params[:user_data_for_arel_manipulation])
    

    请注意,它还会在您的字符串中添加单引号!

    所以"my unsafe input" 变成了"'my unsafe input'"

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-15
      • 1970-01-01
      • 1970-01-01
      • 2013-11-15
      • 2019-05-02
      • 1970-01-01
      • 1970-01-01
      • 2014-08-19
      相关资源
      最近更新 更多