RuoYi
2022-01-05 578d65dfb4c07bd75aa5a6d2f46fc63fa5701fc3
定时任务目标字符串过滤特殊字符
已修改2个文件
14 ■■■■ 文件已修改
ruoyi-common/src/main/java/com/ruoyi/common/constant/Constants.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-quartz/src/main/java/com/ruoyi/quartz/controller/SysJobController.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/src/main/java/com/ruoyi/common/constant/Constants.java
@@ -142,16 +142,16 @@
    /**
     * RMI 远程方法调用
     */
    public static final String LOOKUP_RMI = "rmi://";
    public static final String LOOKUP_RMI = "rmi:";
    /**
     * LDAP 远程方法调用
     */
    public static final String LOOKUP_LDAP = "ldap://";
    public static final String LOOKUP_LDAP = "ldap:";
    /**
     * 定时任务违规的字符
     */
    public static final String[] JOB_ERROR_STR = { "java.net.URL", "javax.naming.InitialContext", "org.yaml.snakeyaml",
            "org.springframework.jndi" };
            "org.springframework" };
}
ruoyi-quartz/src/main/java/com/ruoyi/quartz/controller/SysJobController.java
@@ -87,11 +87,11 @@
        }
        else if (StringUtils.containsIgnoreCase(job.getInvokeTarget(), Constants.LOOKUP_RMI))
        {
            return error("新增任务'" + job.getJobName() + "'失败,目标字符串不允许'rmi://'调用");
            return error("新增任务'" + job.getJobName() + "'失败,目标字符串不允许'rmi'调用");
        }
        else if (StringUtils.containsIgnoreCase(job.getInvokeTarget(), Constants.LOOKUP_LDAP))
        {
            return error("新增任务'" + job.getJobName() + "'失败,目标字符串不允许'ldap://'调用");
            return error("新增任务'" + job.getJobName() + "'失败,目标字符串不允许'ldap'调用");
        }
        else if (StringUtils.containsAnyIgnoreCase(job.getInvokeTarget(), new String[] { Constants.HTTP, Constants.HTTPS }))
        {
@@ -119,11 +119,11 @@
        }
        else if (StringUtils.containsIgnoreCase(job.getInvokeTarget(), Constants.LOOKUP_RMI))
        {
            return error("修改任务'" + job.getJobName() + "'失败,目标字符串不允许'rmi://'调用");
            return error("修改任务'" + job.getJobName() + "'失败,目标字符串不允许'rmi'调用");
        }
        else if (StringUtils.containsIgnoreCase(job.getInvokeTarget(), Constants.LOOKUP_LDAP))
        {
            return error("修改任务'" + job.getJobName() + "'失败,目标字符串不允许'ldap://'调用");
            return error("修改任务'" + job.getJobName() + "'失败,目标字符串不允许'ldap'调用");
        }
        else if (StringUtils.containsAnyIgnoreCase(job.getInvokeTarget(), new String[] { Constants.HTTP, Constants.HTTPS }))
        {