仅转义 grails 中的特定标签
在我的应用程序中,用户将能够放置自己的内容。当然,我想保护我的应用程序免受 XSS 攻击。但是使用 .encodeAsHTML()
可以转义一切。我想让用户设置文本样式,因此我希望某些标签不转义,例如 、、
。知道我该怎么做吗?或者也许有人已经做了类似的事情?我还考虑过 BBCode 风格的格式化——有人在 grails 上做过吗?
In my application users will be able to put their own content. Of course I want to secure my application for XSS attacks. But using .encodeAsHTML()
escapes everything. I'd like to let the users style their text, so I'd like some tags to be unescaped, like <b>, <i>, <u>
. Any idea how I can do that? Or maybe someone already did something similar? I thought also about BBCode style formatting - anyone did it on grails?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
看看 jsoup,它可以让您将标签和属性列入白名单,但以其他方式擦除您的 HTML。
这是一个例子:
Take a look at jsoup, which lets you whitelist tags and attributes, but otherwise scrub your HTML.
Here's an example:
Html Cleaner 插件可以帮助您根据白名单清理 html。但其他标签不会被转义,而是被完全删除。它基于jsoup。
Html cleaner plugin can help you clean html based on whitelists. But other tags won't be escaped but removed completely. Its based on jsoup.