Interface CreateWebAclRequest.Builder

    • Method Detail

      • name

        CreateWebAclRequest.Builder name​(String name)

        The name of the web ACL. You cannot change the name of a web ACL after you create it.

        Parameters:
        name - The name of the web ACL. You cannot change the name of a web ACL after you create it.
        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • scope

        CreateWebAclRequest.Builder scope​(String scope)

        Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

        To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows:

        • CLI - Specify the Region when you use the CloudFront scope: --scope=CLOUDFRONT --region=us-east-1.

        • API and SDKs - For all calls, use the Region endpoint us-east-1.

        Parameters:
        scope - Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

        To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows:

        • CLI - Specify the Region when you use the CloudFront scope: --scope=CLOUDFRONT --region=us-east-1.

        • API and SDKs - For all calls, use the Region endpoint us-east-1.

        Returns:
        Returns a reference to this object so that method calls can be chained together.
        See Also:
        Scope, Scope
      • scope

        CreateWebAclRequest.Builder scope​(Scope scope)

        Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

        To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows:

        • CLI - Specify the Region when you use the CloudFront scope: --scope=CLOUDFRONT --region=us-east-1.

        • API and SDKs - For all calls, use the Region endpoint us-east-1.

        Parameters:
        scope - Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance.

        To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows:

        • CLI - Specify the Region when you use the CloudFront scope: --scope=CLOUDFRONT --region=us-east-1.

        • API and SDKs - For all calls, use the Region endpoint us-east-1.

        Returns:
        Returns a reference to this object so that method calls can be chained together.
        See Also:
        Scope, Scope
      • defaultAction

        CreateWebAclRequest.Builder defaultAction​(DefaultAction defaultAction)

        The action to perform if none of the Rules contained in the WebACL match.

        Parameters:
        defaultAction - The action to perform if none of the Rules contained in the WebACL match.
        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • description

        CreateWebAclRequest.Builder description​(String description)

        A description of the web ACL that helps with identification.

        Parameters:
        description - A description of the web ACL that helps with identification.
        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • rules

        CreateWebAclRequest.Builder rules​(Collection<Rule> rules)

        The Rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

        Parameters:
        rules - The Rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.
        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • rules

        CreateWebAclRequest.Builder rules​(Rule... rules)

        The Rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

        Parameters:
        rules - The Rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.
        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • rules

        CreateWebAclRequest.Builder rules​(Consumer<Rule.Builder>... rules)

        The Rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that WAF uses to identify matching web requests, and parameters that govern how WAF handles them.

        This is a convenience method that creates an instance of the Rule.Builder avoiding the need to create one manually via Rule.builder().

        When the Consumer completes, SdkBuilder.build() is called immediately and its result is passed to #rules(List).

        Parameters:
        rules - a consumer that will call methods on Rule.Builder
        Returns:
        Returns a reference to this object so that method calls can be chained together.
        See Also:
        #rules(java.util.Collection)
      • visibilityConfig

        CreateWebAclRequest.Builder visibilityConfig​(VisibilityConfig visibilityConfig)

        Defines and enables Amazon CloudWatch metrics and web request sample collection.

        Parameters:
        visibilityConfig - Defines and enables Amazon CloudWatch metrics and web request sample collection.
        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • tags

        CreateWebAclRequest.Builder tags​(Collection<Tag> tags)

        An array of key:value pairs to associate with the resource.

        Parameters:
        tags - An array of key:value pairs to associate with the resource.
        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • tags

        CreateWebAclRequest.Builder tags​(Tag... tags)

        An array of key:value pairs to associate with the resource.

        Parameters:
        tags - An array of key:value pairs to associate with the resource.
        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • tags

        CreateWebAclRequest.Builder tags​(Consumer<Tag.Builder>... tags)

        An array of key:value pairs to associate with the resource.

        This is a convenience method that creates an instance of the Tag.Builder avoiding the need to create one manually via Tag.builder().

        When the Consumer completes, SdkBuilder.build() is called immediately and its result is passed to #tags(List).

        Parameters:
        tags - a consumer that will call methods on Tag.Builder
        Returns:
        Returns a reference to this object so that method calls can be chained together.
        See Also:
        #tags(java.util.Collection)
      • customResponseBodies

        CreateWebAclRequest.Builder customResponseBodies​(Map<String,​CustomResponseBody> customResponseBodies)

        A map of custom response keys and content bodies. When you create a rule with a block action, you can send a custom response to the web request. You define these for the web ACL, and then use them in the rules and default actions that you define in the web ACL.

        For information about customizing web requests and responses, see Customizing web requests and responses in WAF in the WAF Developer Guide.

        For information about the limits on count and size for custom request and response settings, see WAF quotas in the WAF Developer Guide.

        Parameters:
        customResponseBodies - A map of custom response keys and content bodies. When you create a rule with a block action, you can send a custom response to the web request. You define these for the web ACL, and then use them in the rules and default actions that you define in the web ACL.

        For information about customizing web requests and responses, see Customizing web requests and responses in WAF in the WAF Developer Guide.

        For information about the limits on count and size for custom request and response settings, see WAF quotas in the WAF Developer Guide.

        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • captchaConfig

        CreateWebAclRequest.Builder captchaConfig​(CaptchaConfig captchaConfig)

        Specifies how WAF should handle CAPTCHA evaluations for rules that don't have their own CaptchaConfig settings. If you don't specify this, WAF uses its default settings for CaptchaConfig.

        Parameters:
        captchaConfig - Specifies how WAF should handle CAPTCHA evaluations for rules that don't have their own CaptchaConfig settings. If you don't specify this, WAF uses its default settings for CaptchaConfig.
        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • challengeConfig

        CreateWebAclRequest.Builder challengeConfig​(ChallengeConfig challengeConfig)

        Specifies how WAF should handle challenge evaluations for rules that don't have their own ChallengeConfig settings. If you don't specify this, WAF uses its default settings for ChallengeConfig.

        Parameters:
        challengeConfig - Specifies how WAF should handle challenge evaluations for rules that don't have their own ChallengeConfig settings. If you don't specify this, WAF uses its default settings for ChallengeConfig.
        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • tokenDomains

        CreateWebAclRequest.Builder tokenDomains​(Collection<String> tokenDomains)

        Specifies the domains that WAF should accept in a web request token. This enables the use of tokens across multiple protected websites. When WAF provides a token, it uses the domain of the Amazon Web Services resource that the web ACL is protecting. If you don't specify a list of token domains, WAF accepts tokens only for the domain of the protected resource. With a token domain list, WAF accepts the resource's host domain plus all domains in the token domain list, including their prefixed subdomains.

        Example JSON: "TokenDomains": { "mywebsite.com", "myotherwebsite.com" }

        Public suffixes aren't allowed. For example, you can't use usa.gov or co.uk as token domains.

        Parameters:
        tokenDomains - Specifies the domains that WAF should accept in a web request token. This enables the use of tokens across multiple protected websites. When WAF provides a token, it uses the domain of the Amazon Web Services resource that the web ACL is protecting. If you don't specify a list of token domains, WAF accepts tokens only for the domain of the protected resource. With a token domain list, WAF accepts the resource's host domain plus all domains in the token domain list, including their prefixed subdomains.

        Example JSON: "TokenDomains": { "mywebsite.com", "myotherwebsite.com" }

        Public suffixes aren't allowed. For example, you can't use usa.gov or co.uk as token domains.

        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • tokenDomains

        CreateWebAclRequest.Builder tokenDomains​(String... tokenDomains)

        Specifies the domains that WAF should accept in a web request token. This enables the use of tokens across multiple protected websites. When WAF provides a token, it uses the domain of the Amazon Web Services resource that the web ACL is protecting. If you don't specify a list of token domains, WAF accepts tokens only for the domain of the protected resource. With a token domain list, WAF accepts the resource's host domain plus all domains in the token domain list, including their prefixed subdomains.

        Example JSON: "TokenDomains": { "mywebsite.com", "myotherwebsite.com" }

        Public suffixes aren't allowed. For example, you can't use usa.gov or co.uk as token domains.

        Parameters:
        tokenDomains - Specifies the domains that WAF should accept in a web request token. This enables the use of tokens across multiple protected websites. When WAF provides a token, it uses the domain of the Amazon Web Services resource that the web ACL is protecting. If you don't specify a list of token domains, WAF accepts tokens only for the domain of the protected resource. With a token domain list, WAF accepts the resource's host domain plus all domains in the token domain list, including their prefixed subdomains.

        Example JSON: "TokenDomains": { "mywebsite.com", "myotherwebsite.com" }

        Public suffixes aren't allowed. For example, you can't use usa.gov or co.uk as token domains.

        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • associationConfig

        CreateWebAclRequest.Builder associationConfig​(AssociationConfig associationConfig)

        Specifies custom configurations for the associations between the web ACL and protected resources.

        Use this to customize the maximum size of the request body that your protected CloudFront distributions forward to WAF for inspection. The default is 16 KB (16,384 bytes).

        You are charged additional fees when your protected resources forward body sizes that are larger than the default. For more information, see WAF Pricing.

        Parameters:
        associationConfig - Specifies custom configurations for the associations between the web ACL and protected resources.

        Use this to customize the maximum size of the request body that your protected CloudFront distributions forward to WAF for inspection. The default is 16 KB (16,384 bytes).

        You are charged additional fees when your protected resources forward body sizes that are larger than the default. For more information, see WAF Pricing.

        Returns:
        Returns a reference to this object so that method calls can be chained together.