Search in sources :

Example 46 with WallConfig

use of com.alibaba.druid.wall.WallConfig in project druid by alibaba.

the class WallDeleteWhereTest2 method test_check_false.

public void test_check_false() throws Exception {
    WallConfig config = new WallConfig();
    config.setDeleteWhereAlwayTrueCheck(false);
    config.setConditionAndAlwayTrueAllow(true);
    config.setCommentAllow(true);
    Assert.assertTrue(WallUtils.isValidateMySql(sql, config));
    Assert.assertTrue(WallUtils.isValidateMySql(sql1, config));
}
Also used : WallConfig(com.alibaba.druid.wall.WallConfig)

Example 47 with WallConfig

use of com.alibaba.druid.wall.WallConfig in project druid by alibaba.

the class WallDeleteWhereTest2 method test_check_true.

public void test_check_true() throws Exception {
    WallConfig config = new WallConfig();
    config.setDeleteWhereAlwayTrueCheck(true);
    config.setConditionAndAlwayTrueAllow(true);
    config.setCommentAllow(true);
    Assert.assertFalse(WallUtils.isValidateMySql(sql, config));
    Assert.assertFalse(WallUtils.isValidateMySql(sql1, config));
}
Also used : WallConfig(com.alibaba.druid.wall.WallConfig)

Example 48 with WallConfig

use of com.alibaba.druid.wall.WallConfig in project druid by alibaba.

the class WallDropTest method testOracle.

public void testOracle() throws Exception {
    WallConfig config = new WallConfig();
    config.setDropTableAllow(false);
    Assert.assertFalse(WallUtils.isValidateOracle("DROP TABLE T1", config));
}
Also used : WallConfig(com.alibaba.druid.wall.WallConfig)

Example 49 with WallConfig

use of com.alibaba.druid.wall.WallConfig in project druid by alibaba.

the class MySqlWallPermitTableTest method test_allow.

public void test_allow() throws Exception {
    WallConfig config = new WallConfig();
    config.setTableCheck(false);
    Assert.assertTrue(WallUtils.isValidateMySql("select benchmark( 500000, sha1( 'test' ) ) FROM X", config));
}
Also used : WallConfig(com.alibaba.druid.wall.WallConfig)

Example 50 with WallConfig

use of com.alibaba.druid.wall.WallConfig in project druid by alibaba.

the class WallUnionTest method testOracle.

public void testOracle() throws Exception {
    WallConfig config = new WallConfig();
    config.setSelectUnionCheck(true);
    Assert.assertTrue(WallUtils.isValidateOracle("select f1, f2 from t where f1=1 union select 1, 2", config));
    Assert.assertFalse(WallUtils.isValidateOracle("select f1, f2 from t where f1=1 union select 1, 2 --", config));
}
Also used : WallConfig(com.alibaba.druid.wall.WallConfig)

Aggregations

WallConfig (com.alibaba.druid.wall.WallConfig)83 Properties (java.util.Properties)8 WallFilter (com.alibaba.druid.wall.WallFilter)5 DruidDataSource (com.alibaba.druid.pool.DruidDataSource)4 WallCheckResult (com.alibaba.druid.wall.WallCheckResult)3 Filter (com.alibaba.druid.filter.Filter)2 SQLExpr (com.alibaba.druid.sql.ast.SQLExpr)2 OracleMockDriver (com.alibaba.druid.test.util.OracleMockDriver)2 WallContext (com.alibaba.druid.wall.WallContext)2 MySqlWallProvider (com.alibaba.druid.wall.spi.MySqlWallProvider)2 SQLCommentHint (com.alibaba.druid.sql.ast.SQLCommentHint)1 SQLStatement (com.alibaba.druid.sql.ast.SQLStatement)1 SQLStartTransactionStatement (com.alibaba.druid.sql.ast.statement.SQLStartTransactionStatement)1 MySqlCommitStatement (com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlCommitStatement)1 MySqlDeleteStatement (com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlDeleteStatement)1 MySqlDescribeStatement (com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlDescribeStatement)1 MySqlHintStatement (com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlHintStatement)1 MySqlLockTableStatement (com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlLockTableStatement)1 MySqlRenameTableStatement (com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlRenameTableStatement)1 MySqlReplaceStatement (com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlReplaceStatement)1