Graphql 如何在java图形中验证或检测附加请求参数?

Graphql 如何在java图形中验证或检测附加请求参数?,graphql,graphql-java,Graphql,Graphql Java,我们正在使用GraphQL Java作为GraphQL服务器。 我们的用例是验证额外的查询参数并抛出错误 突变请求: mutation{actionHandler(action:"status",entity:"integration",ids:[1],value:"Run"){result}} OR 1=1 模式类: public class ActionHandler { private String entity; private String action; p

我们正在使用GraphQL Java作为GraphQL服务器。 我们的用例是验证额外的查询参数并抛出错误

突变请求:

mutation{actionHandler(action:"status",entity:"integration",ids:[1],value:"Run"){result}} OR 1=1
模式类:

public class ActionHandler {
    private String entity;
    private String action;
    private String value;
    private List<Integer> ids;
    private List<String> result;
}
公共类ActionHandler{
私有字符串实体;
私人串动作;
私有字符串值;
私有列表ID;
私有列表结果;
}
具有附加请求参数或1=1的上述查询。这些不是已定义架构的一部分。请注意,提供此选项是为了使用布尔条件验证漏洞攻击

上述查询给出的结果与实际模式请求给出的结果完全相同

预期/实际架构请求: 变异{actionHandler(操作:“状态”,实体:“集成”,ID:[1],值:“运行”){result}

作为参数注入的附加布尔条件(或1=1)不会处理查询结果。当graph ql本机解析器将变异查询转换为相应的模式对象时,这些问题似乎被忽略了

如何使用GraphQL本机库本身(不属于模式请求的一部分)验证其他输入参数