Java 如何清理输入

Java 如何清理输入,java,input,sanitize,owasp,esapi,Java,Input,Sanitize,Owasp,Esapi,我愿意使用“OWASP ESAPI for Java”来清理用户在Tomcat Webapp中提交表单时的输入 我以前使用的org.apache.commons.lang.StringEscapeUtils如下: public static String myEscapeHtml(String s) { String s_escapedString = null; s_escapedString = StringEscapeUtils.escapeHtml(s);

我愿意使用“OWASP ESAPI for Java”来清理用户在Tomcat Webapp中提交表单时的输入

我以前使用的
org.apache.commons.lang.StringEscapeUtils
如下:

public static String myEscapeHtml(String s)
{
    String s_escapedString = null;       
    s_escapedString = StringEscapeUtils.escapeHtml(s);
    return s_escapedString;
}
我不知道这是否足以“合理地”保护webapp

我想知道应该编写哪些代码行来使用OWASP ESAPI清理Tomcat webapp用户输入

您能否给出一个示例,其中一个或多个ESAPI“过滤器”(转义?、编码?…)将应用于字符串以对其进行清理

后端RDBMS是PostgreSQL

Tomcat服务器可以在Linux服务器上运行,也可以在Windows服务器上运行


谢谢您并向您致意。

对于输入验证,您将使用

如果您想在
validation.properties
中定义自己的验证规则,则在的答案中演示了实现此目的的技术

对于输出转义,这实际上相当容易。最好在将数据插入要发送到表示层的对象时,使用
String output=ESAPI.encoder().escapeForHTML(字符串s)方法


中定义了方法的完整列表

我最初的标题是“如何使用Owasp Esapi for Java清理输入”。我认为在这篇文章的标题中,有必要详细说明我想使用什么样的库和编程语言。但也许,根据你的标准,标签足以让线程被正确引用。。。我希望我能得到一个答案:)你对输入编码还是输出编码感兴趣?我不确定。我会说“输出编码”以避免HTML代码中的注入。。。