Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/52.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 清理名称空间和名称空间_Ruby On Rails_Ruby_Xss_Sanitization_Sanitize - Fatal编程技术网

Ruby on rails 清理名称空间和名称空间

Ruby on rails 清理名称空间和名称空间,ruby-on-rails,ruby,xss,sanitization,sanitize,Ruby On Rails,Ruby,Xss,Sanitization,Sanitize,我有一些“名称空间”自定义标记(使用radius gem开发),我希望在rails应用程序中使用这些标记。我想使用sanitize gem来防止xss攻击,但没有说明如何在sanitize中配置名称空间。有什么可能的方法吗?据我所知,sanitize gem只是从控制器中的参数中过滤javascript和HTML。也许从我上次看起它就被延长了 不,你不能为大多数宝石命名名称空间。有一些黑客用猴子补丁把包装纸包起来。如果需要,我会在谷歌上搜索“ruby名称空间冲突”,你会得到类似这样的结果,san

我有一些“名称空间”自定义标记(使用radius gem开发),我希望在rails应用程序中使用这些标记。我想使用sanitize gem来防止xss攻击,但没有说明如何在sanitize中配置名称空间。有什么可能的方法吗?

据我所知,sanitize gem只是从控制器中的参数中过滤javascript和HTML。也许从我上次看起它就被延长了


不,你不能为大多数宝石命名名称空间。有一些黑客用猴子补丁把包装纸包起来。如果需要,我会在谷歌上搜索“ruby名称空间冲突”,你会得到类似这样的结果,sanitize gem不支持名称空间。简单地看一下sanitize的代码,无论是清理元素的transform类,还是它实际解析html的方式,都没有为Nokogiri(sanitize的xml解析器)提供识别和处理名称空间所需的信息,因此如果不修改sanitize来支持这一点,就不可能实现


您将能够在sanitize中看到不带前缀名称空间的标记,因此如果它们都具有与任何其他标记不冲突的自定义名称,您可以指定这些名称,但使用当前编写的sanitize,您无法筛选特定于名称空间的标记。

我想您不明白我的意思。真的吗?sanitize用于过滤rails应用程序中的输入文本(从视图到控制器),但不幸的是,无法使用像