All Downloads are FREE. Search and download functionalities are using the official Maven repository.

cloudshift.awscdk.dsl.services.wafv2.CfnWebACLForwardedIPConfigurationPropertyDsl.kt Maven / Gradle / Ivy

There is a newer version: 0.7.0
Show newest version
@file:Suppress("RedundantVisibilityModifier","RedundantUnitReturnType","RemoveRedundantQualifierName","unused","UnusedImport","ClassName","REDUNDANT_PROJECTION","DEPRECATION")

package cloudshift.awscdk.dsl.services.wafv2

import cloudshift.awscdk.common.CdkDslMarker
import kotlin.String
import software.amazon.awscdk.services.wafv2.CfnWebACL

/**
 * The configuration for inspecting IP addresses in an HTTP header that you specify, instead of
 * using the IP address that's reported by the web request origin.
 *
 * Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
 *
 *
 * If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web
 * request at all.
 *
 *
 * This configuration is used for `GeoMatchStatement` and `RateBasedStatement` . For
 * `IPSetReferenceStatement` , use `IPSetForwardedIPConfig` instead.
 *
 * AWS WAF only evaluates the first IP address found in the specified HTTP header.
 *
 * Example:
 *
 * ```
 * // The code below shows an example of how to instantiate this type.
 * // The values are placeholders you should change.
 * import software.amazon.awscdk.services.wafv2.*;
 * ForwardedIPConfigurationProperty forwardedIPConfigurationProperty =
 * ForwardedIPConfigurationProperty.builder()
 * .fallbackBehavior("fallbackBehavior")
 * .headerName("headerName")
 * .build();
 * ```
 *
 * [Documentation](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-forwardedipconfiguration.html)
 */
@CdkDslMarker
public class CfnWebACLForwardedIPConfigurationPropertyDsl {
  private val cdkBuilder: CfnWebACL.ForwardedIPConfigurationProperty.Builder =
      CfnWebACL.ForwardedIPConfigurationProperty.builder()

  /**
   * @param fallbackBehavior The match status to assign to the web request if the request doesn't
   * have a valid IP address in the specified position. 
   *
   * If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web
   * request at all.
   *
   *
   * You can specify the following fallback behaviors:
   *
   * * `MATCH` - Treat the web request as matching the rule statement. AWS WAF applies the rule
   * action to the request.
   * * `NO_MATCH` - Treat the web request as not matching the rule statement.
   */
  public fun fallbackBehavior(fallbackBehavior: String) {
    cdkBuilder.fallbackBehavior(fallbackBehavior)
  }

  /**
   * @param headerName The name of the HTTP header to use for the IP address. 
   * For example, to use the X-Forwarded-For (XFF) header, set this to `X-Forwarded-For` .
   *
   *
   * If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web
   * request at all.
   */
  public fun headerName(headerName: String) {
    cdkBuilder.headerName(headerName)
  }

  public fun build(): CfnWebACL.ForwardedIPConfigurationProperty = cdkBuilder.build()
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy