/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Additional information that's used by a managed rule group. Many managed rule
* groups don't require this. The rule groups used for intelligent threat
* mitigation require additional configuration: Use the
* Use the Use the
* For example specifications, see the examples section of
* CreateWebACL.
AWSManagedRulesACFPRuleSet
configuration object to configure the
* account creation fraud prevention managed rule group. The configuration includes
* the registration and sign-up pages of your application and the locations in the
* account creation request payload of data, such as the user email and phone
* number fields. AWSManagedRulesATPRuleSet
* configuration object to configure the account takeover prevention managed rule
* group. The configuration includes the sign-in page of your application and the
* locations in the login request payload of data such as the username and
* password. AWSManagedRulesBotControlRuleSet
configuration object to configure
* the protection level that you want the Bot Control rule group to use. See Also:
AWS
* API Reference
Additional configuration for using the Bot Control managed rule group. Use * this to specify the inspection level that you want to use. For information about * using the Bot Control managed rule group, see WAF * Bot Control rule group and WAF * Bot Control in the WAF Developer Guide.
*/ inline const AWSManagedRulesBotControlRuleSet& GetAWSManagedRulesBotControlRuleSet() const{ return m_aWSManagedRulesBotControlRuleSet; } /** *Additional configuration for using the Bot Control managed rule group. Use * this to specify the inspection level that you want to use. For information about * using the Bot Control managed rule group, see WAF * Bot Control rule group and WAF * Bot Control in the WAF Developer Guide.
*/ inline bool AWSManagedRulesBotControlRuleSetHasBeenSet() const { return m_aWSManagedRulesBotControlRuleSetHasBeenSet; } /** *Additional configuration for using the Bot Control managed rule group. Use * this to specify the inspection level that you want to use. For information about * using the Bot Control managed rule group, see WAF * Bot Control rule group and WAF * Bot Control in the WAF Developer Guide.
*/ inline void SetAWSManagedRulesBotControlRuleSet(const AWSManagedRulesBotControlRuleSet& value) { m_aWSManagedRulesBotControlRuleSetHasBeenSet = true; m_aWSManagedRulesBotControlRuleSet = value; } /** *Additional configuration for using the Bot Control managed rule group. Use * this to specify the inspection level that you want to use. For information about * using the Bot Control managed rule group, see WAF * Bot Control rule group and WAF * Bot Control in the WAF Developer Guide.
*/ inline void SetAWSManagedRulesBotControlRuleSet(AWSManagedRulesBotControlRuleSet&& value) { m_aWSManagedRulesBotControlRuleSetHasBeenSet = true; m_aWSManagedRulesBotControlRuleSet = std::move(value); } /** *Additional configuration for using the Bot Control managed rule group. Use * this to specify the inspection level that you want to use. For information about * using the Bot Control managed rule group, see WAF * Bot Control rule group and WAF * Bot Control in the WAF Developer Guide.
*/ inline ManagedRuleGroupConfig& WithAWSManagedRulesBotControlRuleSet(const AWSManagedRulesBotControlRuleSet& value) { SetAWSManagedRulesBotControlRuleSet(value); return *this;} /** *Additional configuration for using the Bot Control managed rule group. Use * this to specify the inspection level that you want to use. For information about * using the Bot Control managed rule group, see WAF * Bot Control rule group and WAF * Bot Control in the WAF Developer Guide.
*/ inline ManagedRuleGroupConfig& WithAWSManagedRulesBotControlRuleSet(AWSManagedRulesBotControlRuleSet&& value) { SetAWSManagedRulesBotControlRuleSet(std::move(value)); return *this;} /** *Additional configuration for using the account takeover prevention (ATP)
* managed rule group, AWSManagedRulesATPRuleSet
. Use this to provide
* login request information to the rule group. For web ACLs that protect
* CloudFront distributions, use this to also provide the information about how
* your distribution responds to login requests.
This configuration
* replaces the individual configuration fields in
* ManagedRuleGroupConfig
and provides additional feature
* configuration.
For information about using the ATP managed rule group, * see WAF * Fraud Control account takeover prevention (ATP) rule group and WAF * Fraud Control account takeover prevention (ATP) in the WAF Developer * Guide.
*/ inline const AWSManagedRulesATPRuleSet& GetAWSManagedRulesATPRuleSet() const{ return m_aWSManagedRulesATPRuleSet; } /** *Additional configuration for using the account takeover prevention (ATP)
* managed rule group, AWSManagedRulesATPRuleSet
. Use this to provide
* login request information to the rule group. For web ACLs that protect
* CloudFront distributions, use this to also provide the information about how
* your distribution responds to login requests.
This configuration
* replaces the individual configuration fields in
* ManagedRuleGroupConfig
and provides additional feature
* configuration.
For information about using the ATP managed rule group, * see WAF * Fraud Control account takeover prevention (ATP) rule group and WAF * Fraud Control account takeover prevention (ATP) in the WAF Developer * Guide.
*/ inline bool AWSManagedRulesATPRuleSetHasBeenSet() const { return m_aWSManagedRulesATPRuleSetHasBeenSet; } /** *Additional configuration for using the account takeover prevention (ATP)
* managed rule group, AWSManagedRulesATPRuleSet
. Use this to provide
* login request information to the rule group. For web ACLs that protect
* CloudFront distributions, use this to also provide the information about how
* your distribution responds to login requests.
This configuration
* replaces the individual configuration fields in
* ManagedRuleGroupConfig
and provides additional feature
* configuration.
For information about using the ATP managed rule group, * see WAF * Fraud Control account takeover prevention (ATP) rule group and WAF * Fraud Control account takeover prevention (ATP) in the WAF Developer * Guide.
*/ inline void SetAWSManagedRulesATPRuleSet(const AWSManagedRulesATPRuleSet& value) { m_aWSManagedRulesATPRuleSetHasBeenSet = true; m_aWSManagedRulesATPRuleSet = value; } /** *Additional configuration for using the account takeover prevention (ATP)
* managed rule group, AWSManagedRulesATPRuleSet
. Use this to provide
* login request information to the rule group. For web ACLs that protect
* CloudFront distributions, use this to also provide the information about how
* your distribution responds to login requests.
This configuration
* replaces the individual configuration fields in
* ManagedRuleGroupConfig
and provides additional feature
* configuration.
For information about using the ATP managed rule group, * see WAF * Fraud Control account takeover prevention (ATP) rule group and WAF * Fraud Control account takeover prevention (ATP) in the WAF Developer * Guide.
*/ inline void SetAWSManagedRulesATPRuleSet(AWSManagedRulesATPRuleSet&& value) { m_aWSManagedRulesATPRuleSetHasBeenSet = true; m_aWSManagedRulesATPRuleSet = std::move(value); } /** *Additional configuration for using the account takeover prevention (ATP)
* managed rule group, AWSManagedRulesATPRuleSet
. Use this to provide
* login request information to the rule group. For web ACLs that protect
* CloudFront distributions, use this to also provide the information about how
* your distribution responds to login requests.
This configuration
* replaces the individual configuration fields in
* ManagedRuleGroupConfig
and provides additional feature
* configuration.
For information about using the ATP managed rule group, * see WAF * Fraud Control account takeover prevention (ATP) rule group and WAF * Fraud Control account takeover prevention (ATP) in the WAF Developer * Guide.
*/ inline ManagedRuleGroupConfig& WithAWSManagedRulesATPRuleSet(const AWSManagedRulesATPRuleSet& value) { SetAWSManagedRulesATPRuleSet(value); return *this;} /** *Additional configuration for using the account takeover prevention (ATP)
* managed rule group, AWSManagedRulesATPRuleSet
. Use this to provide
* login request information to the rule group. For web ACLs that protect
* CloudFront distributions, use this to also provide the information about how
* your distribution responds to login requests.
This configuration
* replaces the individual configuration fields in
* ManagedRuleGroupConfig
and provides additional feature
* configuration.
For information about using the ATP managed rule group, * see WAF * Fraud Control account takeover prevention (ATP) rule group and WAF * Fraud Control account takeover prevention (ATP) in the WAF Developer * Guide.
*/ inline ManagedRuleGroupConfig& WithAWSManagedRulesATPRuleSet(AWSManagedRulesATPRuleSet&& value) { SetAWSManagedRulesATPRuleSet(std::move(value)); return *this;} /** *Additional configuration for using the account creation fraud prevention
* (ACFP) managed rule group, AWSManagedRulesACFPRuleSet
. Use this to
* provide account creation request information to the rule group. For web ACLs
* that protect CloudFront distributions, use this to also provide the information
* about how your distribution responds to account creation requests.
For * information about using the ACFP managed rule group, see WAF * Fraud Control account creation fraud prevention (ACFP) rule group and WAF * Fraud Control account creation fraud prevention (ACFP) in the WAF * Developer Guide.
*/ inline const AWSManagedRulesACFPRuleSet& GetAWSManagedRulesACFPRuleSet() const{ return m_aWSManagedRulesACFPRuleSet; } /** *Additional configuration for using the account creation fraud prevention
* (ACFP) managed rule group, AWSManagedRulesACFPRuleSet
. Use this to
* provide account creation request information to the rule group. For web ACLs
* that protect CloudFront distributions, use this to also provide the information
* about how your distribution responds to account creation requests.
For * information about using the ACFP managed rule group, see WAF * Fraud Control account creation fraud prevention (ACFP) rule group and WAF * Fraud Control account creation fraud prevention (ACFP) in the WAF * Developer Guide.
*/ inline bool AWSManagedRulesACFPRuleSetHasBeenSet() const { return m_aWSManagedRulesACFPRuleSetHasBeenSet; } /** *Additional configuration for using the account creation fraud prevention
* (ACFP) managed rule group, AWSManagedRulesACFPRuleSet
. Use this to
* provide account creation request information to the rule group. For web ACLs
* that protect CloudFront distributions, use this to also provide the information
* about how your distribution responds to account creation requests.
For * information about using the ACFP managed rule group, see WAF * Fraud Control account creation fraud prevention (ACFP) rule group and WAF * Fraud Control account creation fraud prevention (ACFP) in the WAF * Developer Guide.
*/ inline void SetAWSManagedRulesACFPRuleSet(const AWSManagedRulesACFPRuleSet& value) { m_aWSManagedRulesACFPRuleSetHasBeenSet = true; m_aWSManagedRulesACFPRuleSet = value; } /** *Additional configuration for using the account creation fraud prevention
* (ACFP) managed rule group, AWSManagedRulesACFPRuleSet
. Use this to
* provide account creation request information to the rule group. For web ACLs
* that protect CloudFront distributions, use this to also provide the information
* about how your distribution responds to account creation requests.
For * information about using the ACFP managed rule group, see WAF * Fraud Control account creation fraud prevention (ACFP) rule group and WAF * Fraud Control account creation fraud prevention (ACFP) in the WAF * Developer Guide.
*/ inline void SetAWSManagedRulesACFPRuleSet(AWSManagedRulesACFPRuleSet&& value) { m_aWSManagedRulesACFPRuleSetHasBeenSet = true; m_aWSManagedRulesACFPRuleSet = std::move(value); } /** *Additional configuration for using the account creation fraud prevention
* (ACFP) managed rule group, AWSManagedRulesACFPRuleSet
. Use this to
* provide account creation request information to the rule group. For web ACLs
* that protect CloudFront distributions, use this to also provide the information
* about how your distribution responds to account creation requests.
For * information about using the ACFP managed rule group, see WAF * Fraud Control account creation fraud prevention (ACFP) rule group and WAF * Fraud Control account creation fraud prevention (ACFP) in the WAF * Developer Guide.
*/ inline ManagedRuleGroupConfig& WithAWSManagedRulesACFPRuleSet(const AWSManagedRulesACFPRuleSet& value) { SetAWSManagedRulesACFPRuleSet(value); return *this;} /** *Additional configuration for using the account creation fraud prevention
* (ACFP) managed rule group, AWSManagedRulesACFPRuleSet
. Use this to
* provide account creation request information to the rule group. For web ACLs
* that protect CloudFront distributions, use this to also provide the information
* about how your distribution responds to account creation requests.
For * information about using the ACFP managed rule group, see WAF * Fraud Control account creation fraud prevention (ACFP) rule group and WAF * Fraud Control account creation fraud prevention (ACFP) in the WAF * Developer Guide.
*/ inline ManagedRuleGroupConfig& WithAWSManagedRulesACFPRuleSet(AWSManagedRulesACFPRuleSet&& value) { SetAWSManagedRulesACFPRuleSet(std::move(value)); return *this;} private: AWSManagedRulesBotControlRuleSet m_aWSManagedRulesBotControlRuleSet; bool m_aWSManagedRulesBotControlRuleSetHasBeenSet = false; AWSManagedRulesATPRuleSet m_aWSManagedRulesATPRuleSet; bool m_aWSManagedRulesATPRuleSetHasBeenSet = false; AWSManagedRulesACFPRuleSet m_aWSManagedRulesACFPRuleSet; bool m_aWSManagedRulesACFPRuleSetHasBeenSet = false; }; } // namespace Model } // namespace WAFV2 } // namespace Aws