我正在xwiki中开发一个groovy宏,目前在宏发生故障时生成的堆栈跟踪对调试非常有用。然而,当其他人使用它时,它似乎确实是一个安全漏洞。有没有办法关闭堆栈跟踪,可能仅适用于没有编程权限的用户?
答案 0 :(得分:1)
首先,如果安全漏洞意味着用户可以看到groovy代码,那么任何对文档具有查看权限的用户都可以在技术上查看该代码,因此隐藏堆栈跟踪不会完全隐藏它。
现在对于你的问题的答案,错误不是真正可配置的,所以我能想到的唯一方法是修补脚本宏(https://github.com/xwiki/xwiki-platform/blob/master/xwiki-platform-core/xwiki-platform-rendering/xwiki-platform-rendering-macros/xwiki-platform-rendering-macro-script/src/main/java/org/xwiki/rendering/macro/script/AbstractScriptMacro.java#L286)或更通用的MacroErrorManager({{3} })。