SoapFilter
This filter can validate XML and SOAP calls against XML schema and WSDL files. The filter can be turned on/off in a very generic way. Also a log mode is available for easier integration.
ch::nevis::isiweb4::filter::validation::SoapFilter
libInputValidationFilter.so.1
+NEEDS_BUFFERED_BODY
Configuration
BlockOnError
Type: enum
Possible values: on, off, log
Usage Constraints: required, basic, conditional
Supported Pragmas: break
Default: on
List of conditions defining for which requests SOAP/XML Validation should be performed.
StatusCode
Type: integer
Usage Constraints: optional, advanced
Default: 403
Defines the response status code of a blocked response.
SchemaCatalog
Type: string
Syntax: <systemId>:<filename>
Usage Constraints: optional, advanced
Default:
http://schemas.xmlsoap.org/soap/envelope/ : /opt/nevisproxy/xsd/envelope.xsd
http://www.w3.org/2003/05/soap-envelope/ : /opt/nevisproxy/xsd/soap12-envelope.xsd
http://www.w3.org/2001/xml.xsd : /opt/nevisproxy/xsd/xml.xsd
http://schemas.xmlsoap.org/wsdl/ : /opt/nevisproxy/xsd/wsdl.xsd
http://schemas.xmlsoap.org/wsdl/soap/ : /opt/nevisproxy/xsd/soap.xsd
Defines the mapping between a system ID and a file inside the configured schema directory. This mapping is defined as a newline-separated list of strings. The SoapFilter does not make any out-calls to download the schema files and the .wsdl files. All files needed by the filter have to be stored in the Schema Directory folder. If you need to define additional schemas, redefine the default schemas together with the additional entries.
SchemaDirectory
Type: string
Usage Constraints: optional, basic
Default: not set
Defines the directory where schemas and wsdl files are located.
WSDLFile
Type: string
Syntax: file://<path>:<filename>
Usage Constraints: optional, advanced
Default: not set
Enters the path to the WSDL file if a SOAP request is expected. If no WSDL file is defined, only XML validation is done on the request. Currently the SoapFilter does not support XSD schemas in WSDL files. Extract any XSD part in a WSDL file manually into a separate XSD file and specify these XSD files in the schema catalog.
Example: file:///var/opt/test/AdminService.wsdl : AdminService.wsdl