package awswafv2 // A rule statement that inspects for malicious SQL code. // // Attackers insert malicious SQL code into web requests to do things like modify your database or extract data from it. // // Example: // // The code below shows an example of how to instantiate this type. // // The values are placeholders you should change. // import "github.com/aws/aws-cdk-go/awscdk" // // var all interface{} // var allQueryArguments interface{} // var method interface{} // var queryString interface{} // var singleHeader interface{} // var singleQueryArgument interface{} // var uriPath interface{} // // sqliMatchStatementProperty := &SqliMatchStatementProperty{ // FieldToMatch: &FieldToMatchProperty{ // AllQueryArguments: allQueryArguments, // Body: &BodyProperty{ // OversizeHandling: jsii.String("oversizeHandling"), // }, // Cookies: &CookiesProperty{ // MatchPattern: &CookieMatchPatternProperty{ // All: all, // ExcludedCookies: []*string{ // jsii.String("excludedCookies"), // }, // IncludedCookies: []*string{ // jsii.String("includedCookies"), // }, // }, // MatchScope: jsii.String("matchScope"), // OversizeHandling: jsii.String("oversizeHandling"), // }, // Headers: &HeadersProperty{ // MatchPattern: &HeaderMatchPatternProperty{ // All: all, // ExcludedHeaders: []*string{ // jsii.String("excludedHeaders"), // }, // IncludedHeaders: []*string{ // jsii.String("includedHeaders"), // }, // }, // MatchScope: jsii.String("matchScope"), // OversizeHandling: jsii.String("oversizeHandling"), // }, // JsonBody: &JsonBodyProperty{ // MatchPattern: &JsonMatchPatternProperty{ // All: all, // IncludedPaths: []*string{ // jsii.String("includedPaths"), // }, // }, // MatchScope: jsii.String("matchScope"), // // // the properties below are optional // InvalidFallbackBehavior: jsii.String("invalidFallbackBehavior"), // OversizeHandling: jsii.String("oversizeHandling"), // }, // Method: method, // QueryString: queryString, // SingleHeader: singleHeader, // SingleQueryArgument: singleQueryArgument, // UriPath: uriPath, // }, // TextTransformations: []interface{}{ // &TextTransformationProperty{ // Priority: jsii.Number(123), // Type: jsii.String("type"), // }, // }, // // // the properties below are optional // SensitivityLevel: jsii.String("sensitivityLevel"), // } // // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-sqlimatchstatement.html // type CfnRuleGroup_SqliMatchStatementProperty struct { // The part of the web request that you want AWS WAF to inspect. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-sqlimatchstatement.html#cfn-wafv2-rulegroup-sqlimatchstatement-fieldtomatch // FieldToMatch interface{} `field:"required" json:"fieldToMatch" yaml:"fieldToMatch"` // Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. // // If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by `FieldToMatch` , starting from the lowest priority setting, before inspecting the content for a match. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-sqlimatchstatement.html#cfn-wafv2-rulegroup-sqlimatchstatement-texttransformations // TextTransformations interface{} `field:"required" json:"textTransformations" yaml:"textTransformations"` // The sensitivity that you want AWS WAF to use to inspect for SQL injection attacks. // // `HIGH` detects more attacks, but might generate more false positives, especially if your web requests frequently contain unusual strings. For information about identifying and mitigating false positives, see [Testing and tuning](https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-testing.html) in the *AWS WAF Developer Guide* . // // `LOW` is generally a better choice for resources that already have other protections against SQL injection attacks or that have a low tolerance for false positives. // // Default: `LOW`. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-sqlimatchstatement.html#cfn-wafv2-rulegroup-sqlimatchstatement-sensitivitylevel // SensitivityLevel *string `field:"optional" json:"sensitivityLevel" yaml:"sensitivityLevel"` }