/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the waf-2015-08-24.normal.json service model. */ using System; using System.Collections.Generic; using System.Net; using Amazon.WAF.Model; using Amazon.WAF.Model.Internal.MarshallTransformations; using Amazon.WAF.Internal; using Amazon.Runtime; using Amazon.Runtime.Internal; using Amazon.Runtime.Internal.Auth; using Amazon.Runtime.Internal.Transform; namespace Amazon.WAF { /// /// Implementation for accessing WAF /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// This is the AWS WAF Classic API Reference for using AWS WAF Classic with Amazon /// CloudFront. The AWS WAF Classic actions and data types listed in the reference are /// available for protecting Amazon CloudFront distributions. You can use these actions /// and data types via the endpoint waf.amazonaws.com. This guide is for developers /// who need detailed information about the AWS WAF Classic API actions, data types, and /// errors. For detailed information about AWS WAF Classic features and an overview of /// how to use the AWS WAF Classic API, see the AWS /// WAF Classic in the developer guide. /// /// public partial class AmazonWAFClient : AmazonServiceClient, IAmazonWAF { private static IServiceMetadata serviceMetadata = new AmazonWAFMetadata(); #region Constructors /// /// Constructs AmazonWAFClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// /// /// public AmazonWAFClient() : base(FallbackCredentialsFactory.GetCredentials(), new AmazonWAFConfig()) { } /// /// Constructs AmazonWAFClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// /// /// /// The region to connect. public AmazonWAFClient(RegionEndpoint region) : base(FallbackCredentialsFactory.GetCredentials(), new AmazonWAFConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonWAFClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// /// /// /// The AmazonWAFClient Configuration Object public AmazonWAFClient(AmazonWAFConfig config) : base(FallbackCredentialsFactory.GetCredentials(config), config){} /// /// Constructs AmazonWAFClient with AWS Credentials /// /// AWS Credentials public AmazonWAFClient(AWSCredentials credentials) : this(credentials, new AmazonWAFConfig()) { } /// /// Constructs AmazonWAFClient with AWS Credentials /// /// AWS Credentials /// The region to connect. public AmazonWAFClient(AWSCredentials credentials, RegionEndpoint region) : this(credentials, new AmazonWAFConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonWAFClient with AWS Credentials and an /// AmazonWAFClient Configuration object. /// /// AWS Credentials /// The AmazonWAFClient Configuration Object public AmazonWAFClient(AWSCredentials credentials, AmazonWAFConfig clientConfig) : base(credentials, clientConfig) { } /// /// Constructs AmazonWAFClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key public AmazonWAFClient(string awsAccessKeyId, string awsSecretAccessKey) : this(awsAccessKeyId, awsSecretAccessKey, new AmazonWAFConfig()) { } /// /// Constructs AmazonWAFClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// The region to connect. public AmazonWAFClient(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region) : this(awsAccessKeyId, awsSecretAccessKey, new AmazonWAFConfig() {RegionEndpoint=region}) { } /// /// Constructs AmazonWAFClient with AWS Access Key ID, AWS Secret Key and an /// AmazonWAFClient Configuration object. /// /// AWS Access Key ID /// AWS Secret Access Key /// The AmazonWAFClient Configuration Object public AmazonWAFClient(string awsAccessKeyId, string awsSecretAccessKey, AmazonWAFConfig clientConfig) : base(awsAccessKeyId, awsSecretAccessKey, clientConfig) { } /// /// Constructs AmazonWAFClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token public AmazonWAFClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken) : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonWAFConfig()) { } /// /// Constructs AmazonWAFClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token /// The region to connect. public AmazonWAFClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, RegionEndpoint region) : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonWAFConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonWAFClient with AWS Access Key ID, AWS Secret Key and an /// AmazonWAFClient Configuration object. /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token /// The AmazonWAFClient Configuration Object public AmazonWAFClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, AmazonWAFConfig clientConfig) : base(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, clientConfig) { } #endregion #region Overrides /// /// Creates the signer for the service. /// protected override AbstractAWSSigner CreateSigner() { return new AWS4Signer(); } /// /// Customize the pipeline /// /// protected override void CustomizeRuntimePipeline(RuntimePipeline pipeline) { pipeline.RemoveHandler(); pipeline.AddHandlerAfter(new AmazonWAFEndpointResolver()); } /// /// Capture metadata for the service. /// protected override IServiceMetadata ServiceMetadata { get { return serviceMetadata; } } #endregion #region Dispose /// /// Disposes the service client. /// protected override void Dispose(bool disposing) { base.Dispose(disposing); } #endregion #region CreateByteMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Creates a ByteMatchSet. You then use UpdateByteMatchSet to identify /// the part of a web request that you want AWS WAF to inspect, such as the values of /// the User-Agent header or the query string. For example, you can create /// a ByteMatchSet that matches any requests with User-Agent /// headers that contain the string BadBot. You can then configure AWS WAF /// to reject those requests. /// /// /// /// To create and configure a ByteMatchSet, perform the following steps: /// ///
  1. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a CreateByteMatchSet request. /// ///
  2. /// /// Submit a CreateByteMatchSet request. /// ///
  3. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateByteMatchSet request. /// ///
  4. /// /// Submit an UpdateByteMatchSet request to specify the part of the request that /// you want AWS WAF to inspect (for example, the header or the URI) and the value that /// you want AWS WAF to watch for. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// A friendly name or description of the ByteMatchSet. You can't change Name after you create a ByteMatchSet. /// The value returned by the most recent call to GetChangeToken. /// /// The response from the CreateByteMatchSet service method, as returned by WAF. /// /// The name specified is invalid. /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for CreateByteMatchSet Operation public virtual CreateByteMatchSetResponse CreateByteMatchSet(string name, string changeToken) { var request = new CreateByteMatchSetRequest(); request.Name = name; request.ChangeToken = changeToken; return CreateByteMatchSet(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Creates a ByteMatchSet. You then use UpdateByteMatchSet to identify /// the part of a web request that you want AWS WAF to inspect, such as the values of /// the User-Agent header or the query string. For example, you can create /// a ByteMatchSet that matches any requests with User-Agent /// headers that contain the string BadBot. You can then configure AWS WAF /// to reject those requests. /// /// /// /// To create and configure a ByteMatchSet, perform the following steps: /// ///
  1. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a CreateByteMatchSet request. /// ///
  2. /// /// Submit a CreateByteMatchSet request. /// ///
  3. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateByteMatchSet request. /// ///
  4. /// /// Submit an UpdateByteMatchSet request to specify the part of the request that /// you want AWS WAF to inspect (for example, the header or the URI) and the value that /// you want AWS WAF to watch for. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the CreateByteMatchSet service method. /// /// The response from the CreateByteMatchSet service method, as returned by WAF. /// /// The name specified is invalid. /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for CreateByteMatchSet Operation public virtual CreateByteMatchSetResponse CreateByteMatchSet(CreateByteMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateByteMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateByteMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the CreateByteMatchSet operation. /// /// /// Container for the necessary parameters to execute the CreateByteMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateByteMatchSet /// operation. /// REST API Reference for CreateByteMatchSet Operation public virtual IAsyncResult BeginCreateByteMatchSet(CreateByteMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = CreateByteMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateByteMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the CreateByteMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginCreateByteMatchSet. /// /// Returns a CreateByteMatchSetResult from WAF. /// REST API Reference for CreateByteMatchSet Operation public virtual CreateByteMatchSetResponse EndCreateByteMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region CreateGeoMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Creates an GeoMatchSet, which you use to specify which web requests you want /// to allow or block based on the country that the requests originate from. For example, /// if you're receiving a lot of requests from one or more countries and you want to block /// the requests, you can create an GeoMatchSet that contains those countries /// and then configure AWS WAF to block the requests. /// /// /// /// To create and configure a GeoMatchSet, perform the following steps: /// ///
  1. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a CreateGeoMatchSet request. /// ///
  2. /// /// Submit a CreateGeoMatchSet request. /// ///
  3. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateGeoMatchSet request. /// ///
  4. /// /// Submit an UpdateGeoMatchSetSet request to specify the countries that /// you want AWS WAF to watch for. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the CreateGeoMatchSet service method. /// /// The response from the CreateGeoMatchSet service method, as returned by WAF. /// /// The name specified is invalid. /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for CreateGeoMatchSet Operation public virtual CreateGeoMatchSetResponse CreateGeoMatchSet(CreateGeoMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateGeoMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateGeoMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the CreateGeoMatchSet operation. /// /// /// Container for the necessary parameters to execute the CreateGeoMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateGeoMatchSet /// operation. /// REST API Reference for CreateGeoMatchSet Operation public virtual IAsyncResult BeginCreateGeoMatchSet(CreateGeoMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = CreateGeoMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateGeoMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the CreateGeoMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginCreateGeoMatchSet. /// /// Returns a CreateGeoMatchSetResult from WAF. /// REST API Reference for CreateGeoMatchSet Operation public virtual CreateGeoMatchSetResponse EndCreateGeoMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region CreateIPSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Creates an IPSet, which you use to specify which web requests that you want /// to allow or block based on the IP addresses that the requests originate from. For /// example, if you're receiving a lot of requests from one or more individual IP addresses /// or one or more ranges of IP addresses and you want to block the requests, you can /// create an IPSet that contains those IP addresses and then configure AWS /// WAF to block the requests. /// /// /// /// To create and configure an IPSet, perform the following steps: /// ///
  1. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a CreateIPSet request. /// ///
  2. /// /// Submit a CreateIPSet request. /// ///
  3. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateIPSet request. /// ///
  4. /// /// Submit an UpdateIPSet request to specify the IP addresses that you want /// AWS WAF to watch for. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// A friendly name or description of the IPSet. You can't change Name after you create the IPSet. /// The value returned by the most recent call to GetChangeToken. /// /// The response from the CreateIPSet service method, as returned by WAF. /// /// The name specified is invalid. /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for CreateIPSet Operation public virtual CreateIPSetResponse CreateIPSet(string name, string changeToken) { var request = new CreateIPSetRequest(); request.Name = name; request.ChangeToken = changeToken; return CreateIPSet(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Creates an IPSet, which you use to specify which web requests that you want /// to allow or block based on the IP addresses that the requests originate from. For /// example, if you're receiving a lot of requests from one or more individual IP addresses /// or one or more ranges of IP addresses and you want to block the requests, you can /// create an IPSet that contains those IP addresses and then configure AWS /// WAF to block the requests. /// /// /// /// To create and configure an IPSet, perform the following steps: /// ///
  1. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a CreateIPSet request. /// ///
  2. /// /// Submit a CreateIPSet request. /// ///
  3. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateIPSet request. /// ///
  4. /// /// Submit an UpdateIPSet request to specify the IP addresses that you want /// AWS WAF to watch for. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the CreateIPSet service method. /// /// The response from the CreateIPSet service method, as returned by WAF. /// /// The name specified is invalid. /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for CreateIPSet Operation public virtual CreateIPSetResponse CreateIPSet(CreateIPSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateIPSetRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateIPSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the CreateIPSet operation. /// /// /// Container for the necessary parameters to execute the CreateIPSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateIPSet /// operation. /// REST API Reference for CreateIPSet Operation public virtual IAsyncResult BeginCreateIPSet(CreateIPSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = CreateIPSetRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateIPSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the CreateIPSet operation. /// /// /// The IAsyncResult returned by the call to BeginCreateIPSet. /// /// Returns a CreateIPSetResult from WAF. /// REST API Reference for CreateIPSet Operation public virtual CreateIPSetResponse EndCreateIPSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region CreateRateBasedRule /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Creates a RateBasedRule. The RateBasedRule contains a RateLimit, /// which specifies the maximum number of requests that AWS WAF allows from a specified /// IP address in a five-minute period. The RateBasedRule also contains the /// IPSet objects, ByteMatchSet objects, and other predicates /// that identify the requests that you want to count or block if these requests exceed /// the RateLimit. /// /// /// /// If you add more than one predicate to a RateBasedRule, a request not /// only must exceed the RateLimit, but it also must match all the conditions /// to be counted or blocked. For example, suppose you add the following to a RateBasedRule: /// ///
  • /// /// An IPSet that matches the IP address 192.0.2.44/32 /// ///
  • /// /// A ByteMatchSet that matches BadBot in the User-Agent /// header /// ///
/// /// Further, you specify a RateLimit of 1,000. /// /// /// /// You then add the RateBasedRule to a WebACL and specify that /// you want to block requests that meet the conditions in the rule. For a request to /// be blocked, it must come from the IP address 192.0.2.44 and the User-Agent /// header in the request must contain the value BadBot. Further, requests /// that match these two conditions must be received at a rate of more than 1,000 requests /// every five minutes. If both conditions are met and the rate is exceeded, AWS WAF blocks /// the requests. If the rate drops below 1,000 for a five-minute period, AWS WAF no longer /// blocks the requests. /// /// /// /// As a second example, suppose you want to limit requests to a particular page on your /// site. To do this, you could add the following to a RateBasedRule: /// ///
  • /// /// A ByteMatchSet with FieldToMatch of URI /// ///
  • /// /// A PositionalConstraint of STARTS_WITH /// ///
  • /// /// A TargetString of login /// ///
/// /// Further, you specify a RateLimit of 1,000. /// /// /// /// By adding this RateBasedRule to a WebACL, you could limit /// requests to your login page without affecting the rest of your site. /// /// /// /// To create and configure a RateBasedRule, perform the following steps: /// ///
  1. /// /// Create and update the predicates that you want to include in the rule. For more information, /// see CreateByteMatchSet, CreateIPSet, and CreateSqlInjectionMatchSet. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a CreateRule request. /// ///
  3. /// /// Submit a CreateRateBasedRule request. /// ///
  4. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateRule request. /// ///
  5. /// /// Submit an UpdateRateBasedRule request to specify the predicates that /// you want to include in the rule. /// ///
  6. /// /// Create and update a WebACL that contains the RateBasedRule. /// For more information, see CreateWebACL. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the CreateRateBasedRule service method. /// /// The response from the CreateRateBasedRule service method, as returned by WAF. /// /// /// /// /// The name specified is invalid. /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// /// /// /// /// /// /// REST API Reference for CreateRateBasedRule Operation public virtual CreateRateBasedRuleResponse CreateRateBasedRule(CreateRateBasedRuleRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateRateBasedRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateRateBasedRuleResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the CreateRateBasedRule operation. /// /// /// Container for the necessary parameters to execute the CreateRateBasedRule operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateRateBasedRule /// operation. /// REST API Reference for CreateRateBasedRule Operation public virtual IAsyncResult BeginCreateRateBasedRule(CreateRateBasedRuleRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = CreateRateBasedRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateRateBasedRuleResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the CreateRateBasedRule operation. /// /// /// The IAsyncResult returned by the call to BeginCreateRateBasedRule. /// /// Returns a CreateRateBasedRuleResult from WAF. /// REST API Reference for CreateRateBasedRule Operation public virtual CreateRateBasedRuleResponse EndCreateRateBasedRule(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region CreateRegexMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Creates a RegexMatchSet. You then use UpdateRegexMatchSet to identify /// the part of a web request that you want AWS WAF to inspect, such as the values of /// the User-Agent header or the query string. For example, you can create /// a RegexMatchSet that contains a RegexMatchTuple that looks /// for any requests with User-Agent headers that match a RegexPatternSet /// with pattern B[a@]dB[o0]t. You can then configure AWS WAF to reject those /// requests. /// /// /// /// To create and configure a RegexMatchSet, perform the following steps: /// ///
  1. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a CreateRegexMatchSet request. /// ///
  2. /// /// Submit a CreateRegexMatchSet request. /// ///
  3. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateRegexMatchSet request. /// ///
  4. /// /// Submit an UpdateRegexMatchSet request to specify the part of the request that /// you want AWS WAF to inspect (for example, the header or the URI) and the value, using /// a RegexPatternSet, that you want AWS WAF to watch for. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the CreateRegexMatchSet service method. /// /// The response from the CreateRegexMatchSet service method, as returned by WAF. /// /// The name specified is invalid. /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for CreateRegexMatchSet Operation public virtual CreateRegexMatchSetResponse CreateRegexMatchSet(CreateRegexMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateRegexMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateRegexMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the CreateRegexMatchSet operation. /// /// /// Container for the necessary parameters to execute the CreateRegexMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateRegexMatchSet /// operation. /// REST API Reference for CreateRegexMatchSet Operation public virtual IAsyncResult BeginCreateRegexMatchSet(CreateRegexMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = CreateRegexMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateRegexMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the CreateRegexMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginCreateRegexMatchSet. /// /// Returns a CreateRegexMatchSetResult from WAF. /// REST API Reference for CreateRegexMatchSet Operation public virtual CreateRegexMatchSetResponse EndCreateRegexMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region CreateRegexPatternSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Creates a RegexPatternSet. You then use UpdateRegexPatternSet /// to specify the regular expression (regex) pattern that you want AWS WAF to search /// for, such as B[a@]dB[o0]t. You can then configure AWS WAF to reject those /// requests. /// /// /// /// To create and configure a RegexPatternSet, perform the following steps: /// ///
  1. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a CreateRegexPatternSet request. /// ///
  2. /// /// Submit a CreateRegexPatternSet request. /// ///
  3. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateRegexPatternSet request. /// ///
  4. /// /// Submit an UpdateRegexPatternSet request to specify the string that you want /// AWS WAF to watch for. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the CreateRegexPatternSet service method. /// /// The response from the CreateRegexPatternSet service method, as returned by WAF. /// /// The name specified is invalid. /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for CreateRegexPatternSet Operation public virtual CreateRegexPatternSetResponse CreateRegexPatternSet(CreateRegexPatternSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateRegexPatternSetRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateRegexPatternSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the CreateRegexPatternSet operation. /// /// /// Container for the necessary parameters to execute the CreateRegexPatternSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateRegexPatternSet /// operation. /// REST API Reference for CreateRegexPatternSet Operation public virtual IAsyncResult BeginCreateRegexPatternSet(CreateRegexPatternSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = CreateRegexPatternSetRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateRegexPatternSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the CreateRegexPatternSet operation. /// /// /// The IAsyncResult returned by the call to BeginCreateRegexPatternSet. /// /// Returns a CreateRegexPatternSetResult from WAF. /// REST API Reference for CreateRegexPatternSet Operation public virtual CreateRegexPatternSetResponse EndCreateRegexPatternSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region CreateRule /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Creates a Rule, which contains the IPSet objects, ByteMatchSet /// objects, and other predicates that identify the requests that you want to block. If /// you add more than one predicate to a Rule, a request must match all of /// the specifications to be allowed or blocked. For example, suppose that you add the /// following to a Rule: /// ///
  • /// /// An IPSet that matches the IP address 192.0.2.44/32 /// ///
  • /// /// A ByteMatchSet that matches BadBot in the User-Agent /// header /// ///
/// /// You then add the Rule to a WebACL and specify that you want /// to blocks requests that satisfy the Rule. For a request to be blocked, /// it must come from the IP address 192.0.2.44 and the User-Agent /// header in the request must contain the value BadBot. /// /// /// /// To create and configure a Rule, perform the following steps: /// ///
  1. /// /// Create and update the predicates that you want to include in the Rule. /// For more information, see CreateByteMatchSet, CreateIPSet, and CreateSqlInjectionMatchSet. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a CreateRule request. /// ///
  3. /// /// Submit a CreateRule request. /// ///
  4. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateRule request. /// ///
  5. /// /// Submit an UpdateRule request to specify the predicates that you want /// to include in the Rule. /// ///
  6. /// /// Create and update a WebACL that contains the Rule. For more /// information, see CreateWebACL. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// A friendly name or description of the Rule. You can't change the name of a Rule after you create it. /// The value returned by the most recent call to GetChangeToken. /// A friendly name or description for the metrics for this Rule. The name can contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length 128 and minimum length one. It can't contain whitespace or metric names reserved for AWS WAF, including "All" and "Default_Action." You can't change the name of the metric after you create the Rule. /// /// The response from the CreateRule service method, as returned by WAF. /// /// /// /// /// The name specified is invalid. /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// /// /// /// /// /// /// REST API Reference for CreateRule Operation public virtual CreateRuleResponse CreateRule(string name, string changeToken, string metricName) { var request = new CreateRuleRequest(); request.Name = name; request.ChangeToken = changeToken; request.MetricName = metricName; return CreateRule(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Creates a Rule, which contains the IPSet objects, ByteMatchSet /// objects, and other predicates that identify the requests that you want to block. If /// you add more than one predicate to a Rule, a request must match all of /// the specifications to be allowed or blocked. For example, suppose that you add the /// following to a Rule: /// ///
  • /// /// An IPSet that matches the IP address 192.0.2.44/32 /// ///
  • /// /// A ByteMatchSet that matches BadBot in the User-Agent /// header /// ///
/// /// You then add the Rule to a WebACL and specify that you want /// to blocks requests that satisfy the Rule. For a request to be blocked, /// it must come from the IP address 192.0.2.44 and the User-Agent /// header in the request must contain the value BadBot. /// /// /// /// To create and configure a Rule, perform the following steps: /// ///
  1. /// /// Create and update the predicates that you want to include in the Rule. /// For more information, see CreateByteMatchSet, CreateIPSet, and CreateSqlInjectionMatchSet. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a CreateRule request. /// ///
  3. /// /// Submit a CreateRule request. /// ///
  4. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateRule request. /// ///
  5. /// /// Submit an UpdateRule request to specify the predicates that you want /// to include in the Rule. /// ///
  6. /// /// Create and update a WebACL that contains the Rule. For more /// information, see CreateWebACL. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the CreateRule service method. /// /// The response from the CreateRule service method, as returned by WAF. /// /// /// /// /// The name specified is invalid. /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// /// /// /// /// /// /// REST API Reference for CreateRule Operation public virtual CreateRuleResponse CreateRule(CreateRuleRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateRuleResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the CreateRule operation. /// /// /// Container for the necessary parameters to execute the CreateRule operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateRule /// operation. /// REST API Reference for CreateRule Operation public virtual IAsyncResult BeginCreateRule(CreateRuleRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = CreateRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateRuleResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the CreateRule operation. /// /// /// The IAsyncResult returned by the call to BeginCreateRule. /// /// Returns a CreateRuleResult from WAF. /// REST API Reference for CreateRule Operation public virtual CreateRuleResponse EndCreateRule(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region CreateRuleGroup /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Creates a RuleGroup. A rule group is a collection of predefined rules /// that you add to a web ACL. You use UpdateRuleGroup to add rules to the rule /// group. /// /// /// /// Rule groups are subject to the following limits: /// ///
  • /// /// Three rule groups per account. You can request an increase to this limit by contacting /// customer support. /// ///
  • /// /// One rule group per web ACL. /// ///
  • /// /// Ten rules per rule group. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the CreateRuleGroup service method. /// /// The response from the CreateRuleGroup service method, as returned by WAF. /// /// /// /// /// The name specified is invalid. /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// /// /// /// /// /// /// REST API Reference for CreateRuleGroup Operation public virtual CreateRuleGroupResponse CreateRuleGroup(CreateRuleGroupRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateRuleGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateRuleGroupResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the CreateRuleGroup operation. /// /// /// Container for the necessary parameters to execute the CreateRuleGroup operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateRuleGroup /// operation. /// REST API Reference for CreateRuleGroup Operation public virtual IAsyncResult BeginCreateRuleGroup(CreateRuleGroupRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = CreateRuleGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateRuleGroupResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the CreateRuleGroup operation. /// /// /// The IAsyncResult returned by the call to BeginCreateRuleGroup. /// /// Returns a CreateRuleGroupResult from WAF. /// REST API Reference for CreateRuleGroup Operation public virtual CreateRuleGroupResponse EndCreateRuleGroup(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region CreateSizeConstraintSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Creates a SizeConstraintSet. You then use UpdateSizeConstraintSet /// to identify the part of a web request that you want AWS WAF to check for length, such /// as the length of the User-Agent header or the length of the query string. /// For example, you can create a SizeConstraintSet that matches any requests /// that have a query string that is longer than 100 bytes. You can then configure AWS /// WAF to reject those requests. /// /// /// /// To create and configure a SizeConstraintSet, perform the following steps: /// ///
  1. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a CreateSizeConstraintSet request. /// ///
  2. /// /// Submit a CreateSizeConstraintSet request. /// ///
  3. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateSizeConstraintSet request. /// ///
  4. /// /// Submit an UpdateSizeConstraintSet request to specify the part of the request /// that you want AWS WAF to inspect (for example, the header or the URI) and the value /// that you want AWS WAF to watch for. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the CreateSizeConstraintSet service method. /// /// The response from the CreateSizeConstraintSet service method, as returned by WAF. /// /// The name specified is invalid. /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for CreateSizeConstraintSet Operation public virtual CreateSizeConstraintSetResponse CreateSizeConstraintSet(CreateSizeConstraintSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateSizeConstraintSetRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateSizeConstraintSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the CreateSizeConstraintSet operation. /// /// /// Container for the necessary parameters to execute the CreateSizeConstraintSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateSizeConstraintSet /// operation. /// REST API Reference for CreateSizeConstraintSet Operation public virtual IAsyncResult BeginCreateSizeConstraintSet(CreateSizeConstraintSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = CreateSizeConstraintSetRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateSizeConstraintSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the CreateSizeConstraintSet operation. /// /// /// The IAsyncResult returned by the call to BeginCreateSizeConstraintSet. /// /// Returns a CreateSizeConstraintSetResult from WAF. /// REST API Reference for CreateSizeConstraintSet Operation public virtual CreateSizeConstraintSetResponse EndCreateSizeConstraintSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region CreateSqlInjectionMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Creates a SqlInjectionMatchSet, which you use to allow, block, or count requests /// that contain snippets of SQL code in a specified part of web requests. AWS WAF searches /// for character sequences that are likely to be malicious strings. /// /// /// /// To create and configure a SqlInjectionMatchSet, perform the following /// steps: /// ///
  1. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a CreateSqlInjectionMatchSet request. /// ///
  2. /// /// Submit a CreateSqlInjectionMatchSet request. /// ///
  3. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateSqlInjectionMatchSet request. /// ///
  4. /// /// Submit an UpdateSqlInjectionMatchSet request to specify the parts of web requests /// in which you want to allow, block, or count malicious SQL code. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// A friendly name or description for the SqlInjectionMatchSet that you're creating. You can't change Name after you create the SqlInjectionMatchSet. /// The value returned by the most recent call to GetChangeToken. /// /// The response from the CreateSqlInjectionMatchSet service method, as returned by WAF. /// /// The name specified is invalid. /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for CreateSqlInjectionMatchSet Operation public virtual CreateSqlInjectionMatchSetResponse CreateSqlInjectionMatchSet(string name, string changeToken) { var request = new CreateSqlInjectionMatchSetRequest(); request.Name = name; request.ChangeToken = changeToken; return CreateSqlInjectionMatchSet(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Creates a SqlInjectionMatchSet, which you use to allow, block, or count requests /// that contain snippets of SQL code in a specified part of web requests. AWS WAF searches /// for character sequences that are likely to be malicious strings. /// /// /// /// To create and configure a SqlInjectionMatchSet, perform the following /// steps: /// ///
  1. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a CreateSqlInjectionMatchSet request. /// ///
  2. /// /// Submit a CreateSqlInjectionMatchSet request. /// ///
  3. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateSqlInjectionMatchSet request. /// ///
  4. /// /// Submit an UpdateSqlInjectionMatchSet request to specify the parts of web requests /// in which you want to allow, block, or count malicious SQL code. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the CreateSqlInjectionMatchSet service method. /// /// The response from the CreateSqlInjectionMatchSet service method, as returned by WAF. /// /// The name specified is invalid. /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for CreateSqlInjectionMatchSet Operation public virtual CreateSqlInjectionMatchSetResponse CreateSqlInjectionMatchSet(CreateSqlInjectionMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateSqlInjectionMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateSqlInjectionMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the CreateSqlInjectionMatchSet operation. /// /// /// Container for the necessary parameters to execute the CreateSqlInjectionMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateSqlInjectionMatchSet /// operation. /// REST API Reference for CreateSqlInjectionMatchSet Operation public virtual IAsyncResult BeginCreateSqlInjectionMatchSet(CreateSqlInjectionMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = CreateSqlInjectionMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateSqlInjectionMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the CreateSqlInjectionMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginCreateSqlInjectionMatchSet. /// /// Returns a CreateSqlInjectionMatchSetResult from WAF. /// REST API Reference for CreateSqlInjectionMatchSet Operation public virtual CreateSqlInjectionMatchSetResponse EndCreateSqlInjectionMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region CreateWebACL /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Creates a WebACL, which contains the Rules that identify /// the CloudFront web requests that you want to allow, block, or count. AWS WAF evaluates /// Rules in order based on the value of Priority for each Rule. /// /// /// /// You also specify a default action, either ALLOW or BLOCK. /// If a web request doesn't match any of the Rules in a WebACL, /// AWS WAF responds to the request with the default action. /// /// /// /// To create and configure a WebACL, perform the following steps: /// ///
  1. /// /// Create and update the ByteMatchSet objects and other predicates that /// you want to include in Rules. For more information, see CreateByteMatchSet, /// UpdateByteMatchSet, CreateIPSet, UpdateIPSet, CreateSqlInjectionMatchSet, /// and UpdateSqlInjectionMatchSet. /// ///
  2. /// /// Create and update the Rules that you want to include in the WebACL. /// For more information, see CreateRule and UpdateRule. /// ///
  3. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a CreateWebACL request. /// ///
  4. /// /// Submit a CreateWebACL request. /// ///
  5. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateWebACL request. /// ///
  6. /// /// Submit an UpdateWebACL request to specify the Rules that you want /// to include in the WebACL, to specify the default action, and to associate /// the WebACL with a CloudFront distribution. /// ///
/// /// For more information about how to use the AWS WAF API, see the AWS /// WAF Developer Guide. /// ///
/// Container for the necessary parameters to execute the CreateWebACL service method. /// /// The response from the CreateWebACL service method, as returned by WAF. /// /// /// /// /// The name specified is invalid. /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// /// /// /// /// /// /// REST API Reference for CreateWebACL Operation public virtual CreateWebACLResponse CreateWebACL(CreateWebACLRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateWebACLRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateWebACLResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the CreateWebACL operation. /// /// /// Container for the necessary parameters to execute the CreateWebACL operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateWebACL /// operation. /// REST API Reference for CreateWebACL Operation public virtual IAsyncResult BeginCreateWebACL(CreateWebACLRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = CreateWebACLRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateWebACLResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the CreateWebACL operation. /// /// /// The IAsyncResult returned by the call to BeginCreateWebACL. /// /// Returns a CreateWebACLResult from WAF. /// REST API Reference for CreateWebACL Operation public virtual CreateWebACLResponse EndCreateWebACL(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region CreateWebACLMigrationStack /// /// Creates an AWS CloudFormation WAFV2 template for the specified web ACL in the specified /// Amazon S3 bucket. Then, in CloudFormation, you create a stack from the template, to /// create the web ACL and its resources in AWS WAFV2. Use this to migrate your AWS WAF /// Classic web ACL to the latest version of AWS WAF. /// /// /// /// This is part of a larger migration procedure for web ACLs from AWS WAF Classic to /// the latest version of AWS WAF. For the full procedure, including caveats and manual /// steps to complete the migration and switch over to the new web ACL, see Migrating /// your AWS WAF Classic resources to AWS WAF in the AWS /// WAF Developer Guide. /// /// /// Container for the necessary parameters to execute the CreateWebACLMigrationStack service method. /// /// The response from the CreateWebACLMigrationStack service method, as returned by WAF. /// /// The operation failed due to a problem with the migration. The failure cause is provided /// in the exception, in the MigrationErrorType: /// ///
  • /// /// ENTITY_NOT_SUPPORTED - The web ACL has an unsupported entity but the /// IgnoreUnsupportedType is not set to true. /// ///
  • /// /// ENTITY_NOT_FOUND - The web ACL doesn't exist. /// ///
  • /// /// S3_BUCKET_NO_PERMISSION - You don't have permission to perform the PutObject /// action to the specified Amazon S3 bucket. /// ///
  • /// /// S3_BUCKET_NOT_ACCESSIBLE - The bucket policy doesn't allow AWS WAF to /// perform the PutObject action in the bucket. /// ///
  • /// /// S3_BUCKET_NOT_FOUND - The S3 bucket doesn't exist. /// ///
  • /// /// S3_BUCKET_INVALID_REGION - The S3 bucket is not in the same Region as /// the web ACL. /// ///
  • /// /// S3_INTERNAL_ERROR - AWS WAF failed to create the template in the S3 /// bucket for another reason. /// ///
///
/// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because there was nothing to do. For example: /// ///
  • /// /// You tried to remove a Rule from a WebACL, but the Rule /// isn't in the specified WebACL. /// ///
  • /// /// You tried to remove an IP address from an IPSet, but the IP address isn't /// in the specified IPSet. /// ///
  • /// /// You tried to remove a ByteMatchTuple from a ByteMatchSet, /// but the ByteMatchTuple isn't in the specified WebACL. /// ///
  • /// /// You tried to add a Rule to a WebACL, but the Rule /// already exists in the specified WebACL. /// ///
  • /// /// You tried to add a ByteMatchTuple to a ByteMatchSet, but /// the ByteMatchTuple already exists in the specified WebACL. /// ///
///
/// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for CreateWebACLMigrationStack Operation public virtual CreateWebACLMigrationStackResponse CreateWebACLMigrationStack(CreateWebACLMigrationStackRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateWebACLMigrationStackRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateWebACLMigrationStackResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the CreateWebACLMigrationStack operation. /// /// /// Container for the necessary parameters to execute the CreateWebACLMigrationStack operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateWebACLMigrationStack /// operation. /// REST API Reference for CreateWebACLMigrationStack Operation public virtual IAsyncResult BeginCreateWebACLMigrationStack(CreateWebACLMigrationStackRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = CreateWebACLMigrationStackRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateWebACLMigrationStackResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the CreateWebACLMigrationStack operation. /// /// /// The IAsyncResult returned by the call to BeginCreateWebACLMigrationStack. /// /// Returns a CreateWebACLMigrationStackResult from WAF. /// REST API Reference for CreateWebACLMigrationStack Operation public virtual CreateWebACLMigrationStackResponse EndCreateWebACLMigrationStack(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region CreateXssMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Creates an XssMatchSet, which you use to allow, block, or count requests that /// contain cross-site scripting attacks in the specified part of web requests. AWS WAF /// searches for character sequences that are likely to be malicious strings. /// /// /// /// To create and configure an XssMatchSet, perform the following steps: /// ///
  1. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a CreateXssMatchSet request. /// ///
  2. /// /// Submit a CreateXssMatchSet request. /// ///
  3. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateXssMatchSet request. /// ///
  4. /// /// Submit an UpdateXssMatchSet request to specify the parts of web requests in /// which you want to allow, block, or count cross-site scripting attacks. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the CreateXssMatchSet service method. /// /// The response from the CreateXssMatchSet service method, as returned by WAF. /// /// The name specified is invalid. /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for CreateXssMatchSet Operation public virtual CreateXssMatchSetResponse CreateXssMatchSet(CreateXssMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateXssMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateXssMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the CreateXssMatchSet operation. /// /// /// Container for the necessary parameters to execute the CreateXssMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateXssMatchSet /// operation. /// REST API Reference for CreateXssMatchSet Operation public virtual IAsyncResult BeginCreateXssMatchSet(CreateXssMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = CreateXssMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateXssMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the CreateXssMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginCreateXssMatchSet. /// /// Returns a CreateXssMatchSetResult from WAF. /// REST API Reference for CreateXssMatchSet Operation public virtual CreateXssMatchSetResponse EndCreateXssMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region DeleteByteMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes a ByteMatchSet. You can't delete a ByteMatchSet /// if it's still used in any Rules or if it still includes any ByteMatchTuple /// objects (any filters). /// /// /// /// If you just want to remove a ByteMatchSet from a Rule, use /// UpdateRule. /// /// /// /// To permanently delete a ByteMatchSet, perform the following steps: /// ///
  1. /// /// Update the ByteMatchSet to remove filters, if any. For more information, /// see UpdateByteMatchSet. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a DeleteByteMatchSet request. /// ///
  3. /// /// Submit a DeleteByteMatchSet request. /// ///
///
/// The ByteMatchSetId of the ByteMatchSet that you want to delete. ByteMatchSetId is returned by CreateByteMatchSet and by ListByteMatchSets. /// The value returned by the most recent call to GetChangeToken. /// /// The response from the DeleteByteMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because you tried to delete an object that isn't empty. For example: /// ///
  • /// /// You tried to delete a WebACL that still contains one or more Rule /// objects. /// ///
  • /// /// You tried to delete a Rule that still contains one or more ByteMatchSet /// objects or other predicates. /// ///
  • /// /// You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple /// objects. /// ///
  • /// /// You tried to delete an IPSet that references one or more IP addresses. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for DeleteByteMatchSet Operation public virtual DeleteByteMatchSetResponse DeleteByteMatchSet(string byteMatchSetId, string changeToken) { var request = new DeleteByteMatchSetRequest(); request.ByteMatchSetId = byteMatchSetId; request.ChangeToken = changeToken; return DeleteByteMatchSet(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes a ByteMatchSet. You can't delete a ByteMatchSet /// if it's still used in any Rules or if it still includes any ByteMatchTuple /// objects (any filters). /// /// /// /// If you just want to remove a ByteMatchSet from a Rule, use /// UpdateRule. /// /// /// /// To permanently delete a ByteMatchSet, perform the following steps: /// ///
  1. /// /// Update the ByteMatchSet to remove filters, if any. For more information, /// see UpdateByteMatchSet. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a DeleteByteMatchSet request. /// ///
  3. /// /// Submit a DeleteByteMatchSet request. /// ///
///
/// Container for the necessary parameters to execute the DeleteByteMatchSet service method. /// /// The response from the DeleteByteMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because you tried to delete an object that isn't empty. For example: /// ///
  • /// /// You tried to delete a WebACL that still contains one or more Rule /// objects. /// ///
  • /// /// You tried to delete a Rule that still contains one or more ByteMatchSet /// objects or other predicates. /// ///
  • /// /// You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple /// objects. /// ///
  • /// /// You tried to delete an IPSet that references one or more IP addresses. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for DeleteByteMatchSet Operation public virtual DeleteByteMatchSetResponse DeleteByteMatchSet(DeleteByteMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteByteMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteByteMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the DeleteByteMatchSet operation. /// /// /// Container for the necessary parameters to execute the DeleteByteMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteByteMatchSet /// operation. /// REST API Reference for DeleteByteMatchSet Operation public virtual IAsyncResult BeginDeleteByteMatchSet(DeleteByteMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteByteMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteByteMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the DeleteByteMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginDeleteByteMatchSet. /// /// Returns a DeleteByteMatchSetResult from WAF. /// REST API Reference for DeleteByteMatchSet Operation public virtual DeleteByteMatchSetResponse EndDeleteByteMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region DeleteGeoMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes a GeoMatchSet. You can't delete a GeoMatchSet /// if it's still used in any Rules or if it still includes any countries. /// /// /// /// If you just want to remove a GeoMatchSet from a Rule, use /// UpdateRule. /// /// /// /// To permanently delete a GeoMatchSet from AWS WAF, perform the following /// steps: /// ///
  1. /// /// Update the GeoMatchSet to remove any countries. For more information, /// see UpdateGeoMatchSet. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a DeleteGeoMatchSet request. /// ///
  3. /// /// Submit a DeleteGeoMatchSet request. /// ///
///
/// Container for the necessary parameters to execute the DeleteGeoMatchSet service method. /// /// The response from the DeleteGeoMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because you tried to delete an object that isn't empty. For example: /// ///
  • /// /// You tried to delete a WebACL that still contains one or more Rule /// objects. /// ///
  • /// /// You tried to delete a Rule that still contains one or more ByteMatchSet /// objects or other predicates. /// ///
  • /// /// You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple /// objects. /// ///
  • /// /// You tried to delete an IPSet that references one or more IP addresses. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for DeleteGeoMatchSet Operation public virtual DeleteGeoMatchSetResponse DeleteGeoMatchSet(DeleteGeoMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteGeoMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteGeoMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the DeleteGeoMatchSet operation. /// /// /// Container for the necessary parameters to execute the DeleteGeoMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteGeoMatchSet /// operation. /// REST API Reference for DeleteGeoMatchSet Operation public virtual IAsyncResult BeginDeleteGeoMatchSet(DeleteGeoMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteGeoMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteGeoMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the DeleteGeoMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginDeleteGeoMatchSet. /// /// Returns a DeleteGeoMatchSetResult from WAF. /// REST API Reference for DeleteGeoMatchSet Operation public virtual DeleteGeoMatchSetResponse EndDeleteGeoMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region DeleteIPSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes an IPSet. You can't delete an IPSet if it's /// still used in any Rules or if it still includes any IP addresses. /// /// /// /// If you just want to remove an IPSet from a Rule, use UpdateRule. /// /// /// /// To permanently delete an IPSet from AWS WAF, perform the following steps: /// ///
  1. /// /// Update the IPSet to remove IP address ranges, if any. For more information, /// see UpdateIPSet. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a DeleteIPSet request. /// ///
  3. /// /// Submit a DeleteIPSet request. /// ///
///
/// The IPSetId of the IPSet that you want to delete. IPSetId is returned by CreateIPSet and by ListIPSets. /// The value returned by the most recent call to GetChangeToken. /// /// The response from the DeleteIPSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because you tried to delete an object that isn't empty. For example: /// ///
  • /// /// You tried to delete a WebACL that still contains one or more Rule /// objects. /// ///
  • /// /// You tried to delete a Rule that still contains one or more ByteMatchSet /// objects or other predicates. /// ///
  • /// /// You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple /// objects. /// ///
  • /// /// You tried to delete an IPSet that references one or more IP addresses. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for DeleteIPSet Operation public virtual DeleteIPSetResponse DeleteIPSet(string ipSetId, string changeToken) { var request = new DeleteIPSetRequest(); request.IPSetId = ipSetId; request.ChangeToken = changeToken; return DeleteIPSet(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes an IPSet. You can't delete an IPSet if it's /// still used in any Rules or if it still includes any IP addresses. /// /// /// /// If you just want to remove an IPSet from a Rule, use UpdateRule. /// /// /// /// To permanently delete an IPSet from AWS WAF, perform the following steps: /// ///
  1. /// /// Update the IPSet to remove IP address ranges, if any. For more information, /// see UpdateIPSet. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a DeleteIPSet request. /// ///
  3. /// /// Submit a DeleteIPSet request. /// ///
///
/// Container for the necessary parameters to execute the DeleteIPSet service method. /// /// The response from the DeleteIPSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because you tried to delete an object that isn't empty. For example: /// ///
  • /// /// You tried to delete a WebACL that still contains one or more Rule /// objects. /// ///
  • /// /// You tried to delete a Rule that still contains one or more ByteMatchSet /// objects or other predicates. /// ///
  • /// /// You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple /// objects. /// ///
  • /// /// You tried to delete an IPSet that references one or more IP addresses. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for DeleteIPSet Operation public virtual DeleteIPSetResponse DeleteIPSet(DeleteIPSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteIPSetRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteIPSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the DeleteIPSet operation. /// /// /// Container for the necessary parameters to execute the DeleteIPSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteIPSet /// operation. /// REST API Reference for DeleteIPSet Operation public virtual IAsyncResult BeginDeleteIPSet(DeleteIPSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteIPSetRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteIPSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the DeleteIPSet operation. /// /// /// The IAsyncResult returned by the call to BeginDeleteIPSet. /// /// Returns a DeleteIPSetResult from WAF. /// REST API Reference for DeleteIPSet Operation public virtual DeleteIPSetResponse EndDeleteIPSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region DeleteLoggingConfiguration /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes the LoggingConfiguration from the specified web ACL. /// /// /// Container for the necessary parameters to execute the DeleteLoggingConfiguration service method. /// /// The response from the DeleteLoggingConfiguration service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for DeleteLoggingConfiguration Operation public virtual DeleteLoggingConfigurationResponse DeleteLoggingConfiguration(DeleteLoggingConfigurationRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteLoggingConfigurationRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteLoggingConfigurationResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the DeleteLoggingConfiguration operation. /// /// /// Container for the necessary parameters to execute the DeleteLoggingConfiguration operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteLoggingConfiguration /// operation. /// REST API Reference for DeleteLoggingConfiguration Operation public virtual IAsyncResult BeginDeleteLoggingConfiguration(DeleteLoggingConfigurationRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteLoggingConfigurationRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteLoggingConfigurationResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the DeleteLoggingConfiguration operation. /// /// /// The IAsyncResult returned by the call to BeginDeleteLoggingConfiguration. /// /// Returns a DeleteLoggingConfigurationResult from WAF. /// REST API Reference for DeleteLoggingConfiguration Operation public virtual DeleteLoggingConfigurationResponse EndDeleteLoggingConfiguration(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region DeletePermissionPolicy /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes an IAM policy from the specified RuleGroup. /// /// /// /// The user making the request must be the owner of the RuleGroup. /// /// /// Container for the necessary parameters to execute the DeletePermissionPolicy service method. /// /// The response from the DeletePermissionPolicy service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for DeletePermissionPolicy Operation public virtual DeletePermissionPolicyResponse DeletePermissionPolicy(DeletePermissionPolicyRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeletePermissionPolicyRequestMarshaller.Instance; options.ResponseUnmarshaller = DeletePermissionPolicyResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the DeletePermissionPolicy operation. /// /// /// Container for the necessary parameters to execute the DeletePermissionPolicy operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeletePermissionPolicy /// operation. /// REST API Reference for DeletePermissionPolicy Operation public virtual IAsyncResult BeginDeletePermissionPolicy(DeletePermissionPolicyRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = DeletePermissionPolicyRequestMarshaller.Instance; options.ResponseUnmarshaller = DeletePermissionPolicyResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the DeletePermissionPolicy operation. /// /// /// The IAsyncResult returned by the call to BeginDeletePermissionPolicy. /// /// Returns a DeletePermissionPolicyResult from WAF. /// REST API Reference for DeletePermissionPolicy Operation public virtual DeletePermissionPolicyResponse EndDeletePermissionPolicy(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region DeleteRateBasedRule /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes a RateBasedRule. You can't delete a rule if it's still /// used in any WebACL objects or if it still includes any predicates, such /// as ByteMatchSet objects. /// /// /// /// If you just want to remove a rule from a WebACL, use UpdateWebACL. /// /// /// /// To permanently delete a RateBasedRule from AWS WAF, perform the following /// steps: /// ///
  1. /// /// Update the RateBasedRule to remove predicates, if any. For more information, /// see UpdateRateBasedRule. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a DeleteRateBasedRule request. /// ///
  3. /// /// Submit a DeleteRateBasedRule request. /// ///
///
/// Container for the necessary parameters to execute the DeleteRateBasedRule service method. /// /// The response from the DeleteRateBasedRule service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because you tried to delete an object that isn't empty. For example: /// ///
  • /// /// You tried to delete a WebACL that still contains one or more Rule /// objects. /// ///
  • /// /// You tried to delete a Rule that still contains one or more ByteMatchSet /// objects or other predicates. /// ///
  • /// /// You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple /// objects. /// ///
  • /// /// You tried to delete an IPSet that references one or more IP addresses. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// /// /// /// /// /// /// REST API Reference for DeleteRateBasedRule Operation public virtual DeleteRateBasedRuleResponse DeleteRateBasedRule(DeleteRateBasedRuleRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteRateBasedRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteRateBasedRuleResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the DeleteRateBasedRule operation. /// /// /// Container for the necessary parameters to execute the DeleteRateBasedRule operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteRateBasedRule /// operation. /// REST API Reference for DeleteRateBasedRule Operation public virtual IAsyncResult BeginDeleteRateBasedRule(DeleteRateBasedRuleRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteRateBasedRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteRateBasedRuleResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the DeleteRateBasedRule operation. /// /// /// The IAsyncResult returned by the call to BeginDeleteRateBasedRule. /// /// Returns a DeleteRateBasedRuleResult from WAF. /// REST API Reference for DeleteRateBasedRule Operation public virtual DeleteRateBasedRuleResponse EndDeleteRateBasedRule(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region DeleteRegexMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes a RegexMatchSet. You can't delete a RegexMatchSet /// if it's still used in any Rules or if it still includes any RegexMatchTuples /// objects (any filters). /// /// /// /// If you just want to remove a RegexMatchSet from a Rule, /// use UpdateRule. /// /// /// /// To permanently delete a RegexMatchSet, perform the following steps: /// ///
  1. /// /// Update the RegexMatchSet to remove filters, if any. For more information, /// see UpdateRegexMatchSet. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a DeleteRegexMatchSet request. /// ///
  3. /// /// Submit a DeleteRegexMatchSet request. /// ///
///
/// Container for the necessary parameters to execute the DeleteRegexMatchSet service method. /// /// The response from the DeleteRegexMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because you tried to delete an object that isn't empty. For example: /// ///
  • /// /// You tried to delete a WebACL that still contains one or more Rule /// objects. /// ///
  • /// /// You tried to delete a Rule that still contains one or more ByteMatchSet /// objects or other predicates. /// ///
  • /// /// You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple /// objects. /// ///
  • /// /// You tried to delete an IPSet that references one or more IP addresses. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for DeleteRegexMatchSet Operation public virtual DeleteRegexMatchSetResponse DeleteRegexMatchSet(DeleteRegexMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteRegexMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteRegexMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the DeleteRegexMatchSet operation. /// /// /// Container for the necessary parameters to execute the DeleteRegexMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteRegexMatchSet /// operation. /// REST API Reference for DeleteRegexMatchSet Operation public virtual IAsyncResult BeginDeleteRegexMatchSet(DeleteRegexMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteRegexMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteRegexMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the DeleteRegexMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginDeleteRegexMatchSet. /// /// Returns a DeleteRegexMatchSetResult from WAF. /// REST API Reference for DeleteRegexMatchSet Operation public virtual DeleteRegexMatchSetResponse EndDeleteRegexMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region DeleteRegexPatternSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes a RegexPatternSet. You can't delete a RegexPatternSet /// if it's still used in any RegexMatchSet or if the RegexPatternSet /// is not empty. /// /// /// Container for the necessary parameters to execute the DeleteRegexPatternSet service method. /// /// The response from the DeleteRegexPatternSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because you tried to delete an object that isn't empty. For example: /// ///
  • /// /// You tried to delete a WebACL that still contains one or more Rule /// objects. /// ///
  • /// /// You tried to delete a Rule that still contains one or more ByteMatchSet /// objects or other predicates. /// ///
  • /// /// You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple /// objects. /// ///
  • /// /// You tried to delete an IPSet that references one or more IP addresses. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for DeleteRegexPatternSet Operation public virtual DeleteRegexPatternSetResponse DeleteRegexPatternSet(DeleteRegexPatternSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteRegexPatternSetRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteRegexPatternSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the DeleteRegexPatternSet operation. /// /// /// Container for the necessary parameters to execute the DeleteRegexPatternSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteRegexPatternSet /// operation. /// REST API Reference for DeleteRegexPatternSet Operation public virtual IAsyncResult BeginDeleteRegexPatternSet(DeleteRegexPatternSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteRegexPatternSetRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteRegexPatternSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the DeleteRegexPatternSet operation. /// /// /// The IAsyncResult returned by the call to BeginDeleteRegexPatternSet. /// /// Returns a DeleteRegexPatternSetResult from WAF. /// REST API Reference for DeleteRegexPatternSet Operation public virtual DeleteRegexPatternSetResponse EndDeleteRegexPatternSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region DeleteRule /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes a Rule. You can't delete a Rule if it's still /// used in any WebACL objects or if it still includes any predicates, such /// as ByteMatchSet objects. /// /// /// /// If you just want to remove a Rule from a WebACL, use UpdateWebACL. /// /// /// /// To permanently delete a Rule from AWS WAF, perform the following steps: /// ///
  1. /// /// Update the Rule to remove predicates, if any. For more information, see /// UpdateRule. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a DeleteRule request. /// ///
  3. /// /// Submit a DeleteRule request. /// ///
///
/// The RuleId of the Rule that you want to delete. RuleId is returned by CreateRule and by ListRules. /// The value returned by the most recent call to GetChangeToken. /// /// The response from the DeleteRule service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because you tried to delete an object that isn't empty. For example: /// ///
  • /// /// You tried to delete a WebACL that still contains one or more Rule /// objects. /// ///
  • /// /// You tried to delete a Rule that still contains one or more ByteMatchSet /// objects or other predicates. /// ///
  • /// /// You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple /// objects. /// ///
  • /// /// You tried to delete an IPSet that references one or more IP addresses. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// /// /// /// /// /// /// REST API Reference for DeleteRule Operation public virtual DeleteRuleResponse DeleteRule(string ruleId, string changeToken) { var request = new DeleteRuleRequest(); request.RuleId = ruleId; request.ChangeToken = changeToken; return DeleteRule(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes a Rule. You can't delete a Rule if it's still /// used in any WebACL objects or if it still includes any predicates, such /// as ByteMatchSet objects. /// /// /// /// If you just want to remove a Rule from a WebACL, use UpdateWebACL. /// /// /// /// To permanently delete a Rule from AWS WAF, perform the following steps: /// ///
  1. /// /// Update the Rule to remove predicates, if any. For more information, see /// UpdateRule. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a DeleteRule request. /// ///
  3. /// /// Submit a DeleteRule request. /// ///
///
/// Container for the necessary parameters to execute the DeleteRule service method. /// /// The response from the DeleteRule service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because you tried to delete an object that isn't empty. For example: /// ///
  • /// /// You tried to delete a WebACL that still contains one or more Rule /// objects. /// ///
  • /// /// You tried to delete a Rule that still contains one or more ByteMatchSet /// objects or other predicates. /// ///
  • /// /// You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple /// objects. /// ///
  • /// /// You tried to delete an IPSet that references one or more IP addresses. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// /// /// /// /// /// /// REST API Reference for DeleteRule Operation public virtual DeleteRuleResponse DeleteRule(DeleteRuleRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteRuleResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the DeleteRule operation. /// /// /// Container for the necessary parameters to execute the DeleteRule operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteRule /// operation. /// REST API Reference for DeleteRule Operation public virtual IAsyncResult BeginDeleteRule(DeleteRuleRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteRuleResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the DeleteRule operation. /// /// /// The IAsyncResult returned by the call to BeginDeleteRule. /// /// Returns a DeleteRuleResult from WAF. /// REST API Reference for DeleteRule Operation public virtual DeleteRuleResponse EndDeleteRule(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region DeleteRuleGroup /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes a RuleGroup. You can't delete a RuleGroup /// if it's still used in any WebACL objects or if it still includes any /// rules. /// /// /// /// If you just want to remove a RuleGroup from a WebACL, use /// UpdateWebACL. /// /// /// /// To permanently delete a RuleGroup from AWS WAF, perform the following /// steps: /// ///
  1. /// /// Update the RuleGroup to remove rules, if any. For more information, see /// UpdateRuleGroup. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a DeleteRuleGroup request. /// ///
  3. /// /// Submit a DeleteRuleGroup request. /// ///
///
/// Container for the necessary parameters to execute the DeleteRuleGroup service method. /// /// The response from the DeleteRuleGroup service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because there was nothing to do. For example: /// ///
  • /// /// You tried to remove a Rule from a WebACL, but the Rule /// isn't in the specified WebACL. /// ///
  • /// /// You tried to remove an IP address from an IPSet, but the IP address isn't /// in the specified IPSet. /// ///
  • /// /// You tried to remove a ByteMatchTuple from a ByteMatchSet, /// but the ByteMatchTuple isn't in the specified WebACL. /// ///
  • /// /// You tried to add a Rule to a WebACL, but the Rule /// already exists in the specified WebACL. /// ///
  • /// /// You tried to add a ByteMatchTuple to a ByteMatchSet, but /// the ByteMatchTuple already exists in the specified WebACL. /// ///
///
/// /// The operation failed because you tried to delete an object that isn't empty. For example: /// ///
  • /// /// You tried to delete a WebACL that still contains one or more Rule /// objects. /// ///
  • /// /// You tried to delete a Rule that still contains one or more ByteMatchSet /// objects or other predicates. /// ///
  • /// /// You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple /// objects. /// ///
  • /// /// You tried to delete an IPSet that references one or more IP addresses. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// /// /// /// /// /// /// REST API Reference for DeleteRuleGroup Operation public virtual DeleteRuleGroupResponse DeleteRuleGroup(DeleteRuleGroupRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteRuleGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteRuleGroupResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the DeleteRuleGroup operation. /// /// /// Container for the necessary parameters to execute the DeleteRuleGroup operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteRuleGroup /// operation. /// REST API Reference for DeleteRuleGroup Operation public virtual IAsyncResult BeginDeleteRuleGroup(DeleteRuleGroupRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteRuleGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteRuleGroupResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the DeleteRuleGroup operation. /// /// /// The IAsyncResult returned by the call to BeginDeleteRuleGroup. /// /// Returns a DeleteRuleGroupResult from WAF. /// REST API Reference for DeleteRuleGroup Operation public virtual DeleteRuleGroupResponse EndDeleteRuleGroup(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region DeleteSizeConstraintSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes a SizeConstraintSet. You can't delete a SizeConstraintSet /// if it's still used in any Rules or if it still includes any SizeConstraint /// objects (any filters). /// /// /// /// If you just want to remove a SizeConstraintSet from a Rule, /// use UpdateRule. /// /// /// /// To permanently delete a SizeConstraintSet, perform the following steps: /// ///
  1. /// /// Update the SizeConstraintSet to remove filters, if any. For more information, /// see UpdateSizeConstraintSet. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a DeleteSizeConstraintSet request. /// ///
  3. /// /// Submit a DeleteSizeConstraintSet request. /// ///
///
/// Container for the necessary parameters to execute the DeleteSizeConstraintSet service method. /// /// The response from the DeleteSizeConstraintSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because you tried to delete an object that isn't empty. For example: /// ///
  • /// /// You tried to delete a WebACL that still contains one or more Rule /// objects. /// ///
  • /// /// You tried to delete a Rule that still contains one or more ByteMatchSet /// objects or other predicates. /// ///
  • /// /// You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple /// objects. /// ///
  • /// /// You tried to delete an IPSet that references one or more IP addresses. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for DeleteSizeConstraintSet Operation public virtual DeleteSizeConstraintSetResponse DeleteSizeConstraintSet(DeleteSizeConstraintSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteSizeConstraintSetRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteSizeConstraintSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the DeleteSizeConstraintSet operation. /// /// /// Container for the necessary parameters to execute the DeleteSizeConstraintSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteSizeConstraintSet /// operation. /// REST API Reference for DeleteSizeConstraintSet Operation public virtual IAsyncResult BeginDeleteSizeConstraintSet(DeleteSizeConstraintSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteSizeConstraintSetRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteSizeConstraintSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the DeleteSizeConstraintSet operation. /// /// /// The IAsyncResult returned by the call to BeginDeleteSizeConstraintSet. /// /// Returns a DeleteSizeConstraintSetResult from WAF. /// REST API Reference for DeleteSizeConstraintSet Operation public virtual DeleteSizeConstraintSetResponse EndDeleteSizeConstraintSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region DeleteSqlInjectionMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes a SqlInjectionMatchSet. You can't delete a SqlInjectionMatchSet /// if it's still used in any Rules or if it still contains any SqlInjectionMatchTuple /// objects. /// /// /// /// If you just want to remove a SqlInjectionMatchSet from a Rule, /// use UpdateRule. /// /// /// /// To permanently delete a SqlInjectionMatchSet from AWS WAF, perform the /// following steps: /// ///
  1. /// /// Update the SqlInjectionMatchSet to remove filters, if any. For more information, /// see UpdateSqlInjectionMatchSet. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a DeleteSqlInjectionMatchSet request. /// ///
  3. /// /// Submit a DeleteSqlInjectionMatchSet request. /// ///
///
/// The SqlInjectionMatchSetId of the SqlInjectionMatchSet that you want to delete. SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets. /// The value returned by the most recent call to GetChangeToken. /// /// The response from the DeleteSqlInjectionMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because you tried to delete an object that isn't empty. For example: /// ///
  • /// /// You tried to delete a WebACL that still contains one or more Rule /// objects. /// ///
  • /// /// You tried to delete a Rule that still contains one or more ByteMatchSet /// objects or other predicates. /// ///
  • /// /// You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple /// objects. /// ///
  • /// /// You tried to delete an IPSet that references one or more IP addresses. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for DeleteSqlInjectionMatchSet Operation public virtual DeleteSqlInjectionMatchSetResponse DeleteSqlInjectionMatchSet(string sqlInjectionMatchSetId, string changeToken) { var request = new DeleteSqlInjectionMatchSetRequest(); request.SqlInjectionMatchSetId = sqlInjectionMatchSetId; request.ChangeToken = changeToken; return DeleteSqlInjectionMatchSet(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes a SqlInjectionMatchSet. You can't delete a SqlInjectionMatchSet /// if it's still used in any Rules or if it still contains any SqlInjectionMatchTuple /// objects. /// /// /// /// If you just want to remove a SqlInjectionMatchSet from a Rule, /// use UpdateRule. /// /// /// /// To permanently delete a SqlInjectionMatchSet from AWS WAF, perform the /// following steps: /// ///
  1. /// /// Update the SqlInjectionMatchSet to remove filters, if any. For more information, /// see UpdateSqlInjectionMatchSet. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a DeleteSqlInjectionMatchSet request. /// ///
  3. /// /// Submit a DeleteSqlInjectionMatchSet request. /// ///
///
/// Container for the necessary parameters to execute the DeleteSqlInjectionMatchSet service method. /// /// The response from the DeleteSqlInjectionMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because you tried to delete an object that isn't empty. For example: /// ///
  • /// /// You tried to delete a WebACL that still contains one or more Rule /// objects. /// ///
  • /// /// You tried to delete a Rule that still contains one or more ByteMatchSet /// objects or other predicates. /// ///
  • /// /// You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple /// objects. /// ///
  • /// /// You tried to delete an IPSet that references one or more IP addresses. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for DeleteSqlInjectionMatchSet Operation public virtual DeleteSqlInjectionMatchSetResponse DeleteSqlInjectionMatchSet(DeleteSqlInjectionMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteSqlInjectionMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteSqlInjectionMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the DeleteSqlInjectionMatchSet operation. /// /// /// Container for the necessary parameters to execute the DeleteSqlInjectionMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteSqlInjectionMatchSet /// operation. /// REST API Reference for DeleteSqlInjectionMatchSet Operation public virtual IAsyncResult BeginDeleteSqlInjectionMatchSet(DeleteSqlInjectionMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteSqlInjectionMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteSqlInjectionMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the DeleteSqlInjectionMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginDeleteSqlInjectionMatchSet. /// /// Returns a DeleteSqlInjectionMatchSetResult from WAF. /// REST API Reference for DeleteSqlInjectionMatchSet Operation public virtual DeleteSqlInjectionMatchSetResponse EndDeleteSqlInjectionMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region DeleteWebACL /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes a WebACL. You can't delete a WebACL if it /// still contains any Rules. /// /// /// /// To delete a WebACL, perform the following steps: /// ///
  1. /// /// Update the WebACL to remove Rules, if any. For more information, /// see UpdateWebACL. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a DeleteWebACL request. /// ///
  3. /// /// Submit a DeleteWebACL request. /// ///
///
/// The WebACLId of the WebACL that you want to delete. WebACLId is returned by CreateWebACL and by ListWebACLs. /// The value returned by the most recent call to GetChangeToken. /// /// The response from the DeleteWebACL service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because you tried to delete an object that isn't empty. For example: /// ///
  • /// /// You tried to delete a WebACL that still contains one or more Rule /// objects. /// ///
  • /// /// You tried to delete a Rule that still contains one or more ByteMatchSet /// objects or other predicates. /// ///
  • /// /// You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple /// objects. /// ///
  • /// /// You tried to delete an IPSet that references one or more IP addresses. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// /// /// /// /// /// /// REST API Reference for DeleteWebACL Operation public virtual DeleteWebACLResponse DeleteWebACL(string webACLId, string changeToken) { var request = new DeleteWebACLRequest(); request.WebACLId = webACLId; request.ChangeToken = changeToken; return DeleteWebACL(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes a WebACL. You can't delete a WebACL if it /// still contains any Rules. /// /// /// /// To delete a WebACL, perform the following steps: /// ///
  1. /// /// Update the WebACL to remove Rules, if any. For more information, /// see UpdateWebACL. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a DeleteWebACL request. /// ///
  3. /// /// Submit a DeleteWebACL request. /// ///
///
/// Container for the necessary parameters to execute the DeleteWebACL service method. /// /// The response from the DeleteWebACL service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because you tried to delete an object that isn't empty. For example: /// ///
  • /// /// You tried to delete a WebACL that still contains one or more Rule /// objects. /// ///
  • /// /// You tried to delete a Rule that still contains one or more ByteMatchSet /// objects or other predicates. /// ///
  • /// /// You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple /// objects. /// ///
  • /// /// You tried to delete an IPSet that references one or more IP addresses. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// /// /// /// /// /// /// REST API Reference for DeleteWebACL Operation public virtual DeleteWebACLResponse DeleteWebACL(DeleteWebACLRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteWebACLRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteWebACLResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the DeleteWebACL operation. /// /// /// Container for the necessary parameters to execute the DeleteWebACL operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteWebACL /// operation. /// REST API Reference for DeleteWebACL Operation public virtual IAsyncResult BeginDeleteWebACL(DeleteWebACLRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteWebACLRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteWebACLResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the DeleteWebACL operation. /// /// /// The IAsyncResult returned by the call to BeginDeleteWebACL. /// /// Returns a DeleteWebACLResult from WAF. /// REST API Reference for DeleteWebACL Operation public virtual DeleteWebACLResponse EndDeleteWebACL(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region DeleteXssMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Permanently deletes an XssMatchSet. You can't delete an XssMatchSet /// if it's still used in any Rules or if it still contains any XssMatchTuple /// objects. /// /// /// /// If you just want to remove an XssMatchSet from a Rule, use /// UpdateRule. /// /// /// /// To permanently delete an XssMatchSet from AWS WAF, perform the following /// steps: /// ///
  1. /// /// Update the XssMatchSet to remove filters, if any. For more information, /// see UpdateXssMatchSet. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of a DeleteXssMatchSet request. /// ///
  3. /// /// Submit a DeleteXssMatchSet request. /// ///
///
/// Container for the necessary parameters to execute the DeleteXssMatchSet service method. /// /// The response from the DeleteXssMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because you tried to delete an object that isn't empty. For example: /// ///
  • /// /// You tried to delete a WebACL that still contains one or more Rule /// objects. /// ///
  • /// /// You tried to delete a Rule that still contains one or more ByteMatchSet /// objects or other predicates. /// ///
  • /// /// You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple /// objects. /// ///
  • /// /// You tried to delete an IPSet that references one or more IP addresses. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for DeleteXssMatchSet Operation public virtual DeleteXssMatchSetResponse DeleteXssMatchSet(DeleteXssMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteXssMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteXssMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the DeleteXssMatchSet operation. /// /// /// Container for the necessary parameters to execute the DeleteXssMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteXssMatchSet /// operation. /// REST API Reference for DeleteXssMatchSet Operation public virtual IAsyncResult BeginDeleteXssMatchSet(DeleteXssMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteXssMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteXssMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the DeleteXssMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginDeleteXssMatchSet. /// /// Returns a DeleteXssMatchSetResult from WAF. /// REST API Reference for DeleteXssMatchSet Operation public virtual DeleteXssMatchSetResponse EndDeleteXssMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetByteMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the ByteMatchSet specified by ByteMatchSetId. /// /// /// The ByteMatchSetId of the ByteMatchSet that you want to get. ByteMatchSetId is returned by CreateByteMatchSet and by ListByteMatchSets. /// /// The response from the GetByteMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetByteMatchSet Operation public virtual GetByteMatchSetResponse GetByteMatchSet(string byteMatchSetId) { var request = new GetByteMatchSetRequest(); request.ByteMatchSetId = byteMatchSetId; return GetByteMatchSet(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the ByteMatchSet specified by ByteMatchSetId. /// /// /// Container for the necessary parameters to execute the GetByteMatchSet service method. /// /// The response from the GetByteMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetByteMatchSet Operation public virtual GetByteMatchSetResponse GetByteMatchSet(GetByteMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetByteMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = GetByteMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetByteMatchSet operation. /// /// /// Container for the necessary parameters to execute the GetByteMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetByteMatchSet /// operation. /// REST API Reference for GetByteMatchSet Operation public virtual IAsyncResult BeginGetByteMatchSet(GetByteMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetByteMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = GetByteMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetByteMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginGetByteMatchSet. /// /// Returns a GetByteMatchSetResult from WAF. /// REST API Reference for GetByteMatchSet Operation public virtual GetByteMatchSetResponse EndGetByteMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetChangeToken /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// When you want to create, update, or delete AWS WAF objects, get a change token and /// include the change token in the create, update, or delete request. Change tokens ensure /// that your application doesn't submit conflicting requests to AWS WAF. /// /// /// /// Each create, update, or delete request must use a unique change token. If your application /// submits a GetChangeToken request and then submits a second GetChangeToken /// request before submitting a create, update, or delete request, the second GetChangeToken /// request returns the same value as the first GetChangeToken request. /// /// /// /// When you use a change token in a create, update, or delete request, the status of /// the change token changes to PENDING, which indicates that AWS WAF is /// propagating the change to all AWS WAF servers. Use GetChangeTokenStatus /// to determine the status of your change token. /// /// /// /// The response from the GetChangeToken service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// REST API Reference for GetChangeToken Operation public virtual GetChangeTokenResponse GetChangeToken() { return GetChangeToken(new GetChangeTokenRequest()); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// When you want to create, update, or delete AWS WAF objects, get a change token and /// include the change token in the create, update, or delete request. Change tokens ensure /// that your application doesn't submit conflicting requests to AWS WAF. /// /// /// /// Each create, update, or delete request must use a unique change token. If your application /// submits a GetChangeToken request and then submits a second GetChangeToken /// request before submitting a create, update, or delete request, the second GetChangeToken /// request returns the same value as the first GetChangeToken request. /// /// /// /// When you use a change token in a create, update, or delete request, the status of /// the change token changes to PENDING, which indicates that AWS WAF is /// propagating the change to all AWS WAF servers. Use GetChangeTokenStatus /// to determine the status of your change token. /// /// /// Container for the necessary parameters to execute the GetChangeToken service method. /// /// The response from the GetChangeToken service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// REST API Reference for GetChangeToken Operation public virtual GetChangeTokenResponse GetChangeToken(GetChangeTokenRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetChangeTokenRequestMarshaller.Instance; options.ResponseUnmarshaller = GetChangeTokenResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetChangeToken operation. /// /// /// Container for the necessary parameters to execute the GetChangeToken operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetChangeToken /// operation. /// REST API Reference for GetChangeToken Operation public virtual IAsyncResult BeginGetChangeToken(GetChangeTokenRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetChangeTokenRequestMarshaller.Instance; options.ResponseUnmarshaller = GetChangeTokenResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetChangeToken operation. /// /// /// The IAsyncResult returned by the call to BeginGetChangeToken. /// /// Returns a GetChangeTokenResult from WAF. /// REST API Reference for GetChangeToken Operation public virtual GetChangeTokenResponse EndGetChangeToken(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetChangeTokenStatus /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the status of a ChangeToken that you got by calling GetChangeToken. /// ChangeTokenStatus is one of the following values: /// ///
  • /// /// PROVISIONED: You requested the change token by calling GetChangeToken, /// but you haven't used it yet in a call to create, update, or delete an AWS WAF object. /// ///
  • /// /// PENDING: AWS WAF is propagating the create, update, or delete request /// to all AWS WAF servers. /// ///
  • /// /// INSYNC: Propagation is complete. /// ///
///
/// The change token for which you want to get the status. This change token was previously returned in the GetChangeToken response. /// /// The response from the GetChangeTokenStatus service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetChangeTokenStatus Operation public virtual GetChangeTokenStatusResponse GetChangeTokenStatus(string changeToken) { var request = new GetChangeTokenStatusRequest(); request.ChangeToken = changeToken; return GetChangeTokenStatus(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the status of a ChangeToken that you got by calling GetChangeToken. /// ChangeTokenStatus is one of the following values: /// ///
  • /// /// PROVISIONED: You requested the change token by calling GetChangeToken, /// but you haven't used it yet in a call to create, update, or delete an AWS WAF object. /// ///
  • /// /// PENDING: AWS WAF is propagating the create, update, or delete request /// to all AWS WAF servers. /// ///
  • /// /// INSYNC: Propagation is complete. /// ///
///
/// Container for the necessary parameters to execute the GetChangeTokenStatus service method. /// /// The response from the GetChangeTokenStatus service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetChangeTokenStatus Operation public virtual GetChangeTokenStatusResponse GetChangeTokenStatus(GetChangeTokenStatusRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetChangeTokenStatusRequestMarshaller.Instance; options.ResponseUnmarshaller = GetChangeTokenStatusResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetChangeTokenStatus operation. /// /// /// Container for the necessary parameters to execute the GetChangeTokenStatus operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetChangeTokenStatus /// operation. /// REST API Reference for GetChangeTokenStatus Operation public virtual IAsyncResult BeginGetChangeTokenStatus(GetChangeTokenStatusRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetChangeTokenStatusRequestMarshaller.Instance; options.ResponseUnmarshaller = GetChangeTokenStatusResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetChangeTokenStatus operation. /// /// /// The IAsyncResult returned by the call to BeginGetChangeTokenStatus. /// /// Returns a GetChangeTokenStatusResult from WAF. /// REST API Reference for GetChangeTokenStatus Operation public virtual GetChangeTokenStatusResponse EndGetChangeTokenStatus(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetGeoMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the GeoMatchSet that is specified by GeoMatchSetId. /// /// /// Container for the necessary parameters to execute the GetGeoMatchSet service method. /// /// The response from the GetGeoMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetGeoMatchSet Operation public virtual GetGeoMatchSetResponse GetGeoMatchSet(GetGeoMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetGeoMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = GetGeoMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetGeoMatchSet operation. /// /// /// Container for the necessary parameters to execute the GetGeoMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetGeoMatchSet /// operation. /// REST API Reference for GetGeoMatchSet Operation public virtual IAsyncResult BeginGetGeoMatchSet(GetGeoMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetGeoMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = GetGeoMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetGeoMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginGetGeoMatchSet. /// /// Returns a GetGeoMatchSetResult from WAF. /// REST API Reference for GetGeoMatchSet Operation public virtual GetGeoMatchSetResponse EndGetGeoMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetIPSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the IPSet that is specified by IPSetId. /// /// /// The IPSetId of the IPSet that you want to get. IPSetId is returned by CreateIPSet and by ListIPSets. /// /// The response from the GetIPSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetIPSet Operation public virtual GetIPSetResponse GetIPSet(string ipSetId) { var request = new GetIPSetRequest(); request.IPSetId = ipSetId; return GetIPSet(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the IPSet that is specified by IPSetId. /// /// /// Container for the necessary parameters to execute the GetIPSet service method. /// /// The response from the GetIPSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetIPSet Operation public virtual GetIPSetResponse GetIPSet(GetIPSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetIPSetRequestMarshaller.Instance; options.ResponseUnmarshaller = GetIPSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetIPSet operation. /// /// /// Container for the necessary parameters to execute the GetIPSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetIPSet /// operation. /// REST API Reference for GetIPSet Operation public virtual IAsyncResult BeginGetIPSet(GetIPSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetIPSetRequestMarshaller.Instance; options.ResponseUnmarshaller = GetIPSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetIPSet operation. /// /// /// The IAsyncResult returned by the call to BeginGetIPSet. /// /// Returns a GetIPSetResult from WAF. /// REST API Reference for GetIPSet Operation public virtual GetIPSetResponse EndGetIPSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetLoggingConfiguration /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the LoggingConfiguration for the specified web ACL. /// /// /// Container for the necessary parameters to execute the GetLoggingConfiguration service method. /// /// The response from the GetLoggingConfiguration service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetLoggingConfiguration Operation public virtual GetLoggingConfigurationResponse GetLoggingConfiguration(GetLoggingConfigurationRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetLoggingConfigurationRequestMarshaller.Instance; options.ResponseUnmarshaller = GetLoggingConfigurationResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetLoggingConfiguration operation. /// /// /// Container for the necessary parameters to execute the GetLoggingConfiguration operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetLoggingConfiguration /// operation. /// REST API Reference for GetLoggingConfiguration Operation public virtual IAsyncResult BeginGetLoggingConfiguration(GetLoggingConfigurationRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetLoggingConfigurationRequestMarshaller.Instance; options.ResponseUnmarshaller = GetLoggingConfigurationResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetLoggingConfiguration operation. /// /// /// The IAsyncResult returned by the call to BeginGetLoggingConfiguration. /// /// Returns a GetLoggingConfigurationResult from WAF. /// REST API Reference for GetLoggingConfiguration Operation public virtual GetLoggingConfigurationResponse EndGetLoggingConfiguration(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetPermissionPolicy /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the IAM policy attached to the RuleGroup. /// /// /// Container for the necessary parameters to execute the GetPermissionPolicy service method. /// /// The response from the GetPermissionPolicy service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetPermissionPolicy Operation public virtual GetPermissionPolicyResponse GetPermissionPolicy(GetPermissionPolicyRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetPermissionPolicyRequestMarshaller.Instance; options.ResponseUnmarshaller = GetPermissionPolicyResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetPermissionPolicy operation. /// /// /// Container for the necessary parameters to execute the GetPermissionPolicy operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetPermissionPolicy /// operation. /// REST API Reference for GetPermissionPolicy Operation public virtual IAsyncResult BeginGetPermissionPolicy(GetPermissionPolicyRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetPermissionPolicyRequestMarshaller.Instance; options.ResponseUnmarshaller = GetPermissionPolicyResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetPermissionPolicy operation. /// /// /// The IAsyncResult returned by the call to BeginGetPermissionPolicy. /// /// Returns a GetPermissionPolicyResult from WAF. /// REST API Reference for GetPermissionPolicy Operation public virtual GetPermissionPolicyResponse EndGetPermissionPolicy(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetRateBasedRule /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the RateBasedRule that is specified by the RuleId that /// you included in the GetRateBasedRule request. /// /// /// Container for the necessary parameters to execute the GetRateBasedRule service method. /// /// The response from the GetRateBasedRule service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetRateBasedRule Operation public virtual GetRateBasedRuleResponse GetRateBasedRule(GetRateBasedRuleRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetRateBasedRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = GetRateBasedRuleResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetRateBasedRule operation. /// /// /// Container for the necessary parameters to execute the GetRateBasedRule operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetRateBasedRule /// operation. /// REST API Reference for GetRateBasedRule Operation public virtual IAsyncResult BeginGetRateBasedRule(GetRateBasedRuleRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetRateBasedRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = GetRateBasedRuleResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetRateBasedRule operation. /// /// /// The IAsyncResult returned by the call to BeginGetRateBasedRule. /// /// Returns a GetRateBasedRuleResult from WAF. /// REST API Reference for GetRateBasedRule Operation public virtual GetRateBasedRuleResponse EndGetRateBasedRule(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetRateBasedRuleManagedKeys /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns an array of IP addresses currently being blocked by the RateBasedRule /// that is specified by the RuleId. The maximum number of managed keys that /// will be blocked is 10,000. If more than 10,000 addresses exceed the rate limit, the /// 10,000 addresses with the highest rates will be blocked. /// /// /// Container for the necessary parameters to execute the GetRateBasedRuleManagedKeys service method. /// /// The response from the GetRateBasedRuleManagedKeys service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetRateBasedRuleManagedKeys Operation public virtual GetRateBasedRuleManagedKeysResponse GetRateBasedRuleManagedKeys(GetRateBasedRuleManagedKeysRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetRateBasedRuleManagedKeysRequestMarshaller.Instance; options.ResponseUnmarshaller = GetRateBasedRuleManagedKeysResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetRateBasedRuleManagedKeys operation. /// /// /// Container for the necessary parameters to execute the GetRateBasedRuleManagedKeys operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetRateBasedRuleManagedKeys /// operation. /// REST API Reference for GetRateBasedRuleManagedKeys Operation public virtual IAsyncResult BeginGetRateBasedRuleManagedKeys(GetRateBasedRuleManagedKeysRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetRateBasedRuleManagedKeysRequestMarshaller.Instance; options.ResponseUnmarshaller = GetRateBasedRuleManagedKeysResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetRateBasedRuleManagedKeys operation. /// /// /// The IAsyncResult returned by the call to BeginGetRateBasedRuleManagedKeys. /// /// Returns a GetRateBasedRuleManagedKeysResult from WAF. /// REST API Reference for GetRateBasedRuleManagedKeys Operation public virtual GetRateBasedRuleManagedKeysResponse EndGetRateBasedRuleManagedKeys(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetRegexMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the RegexMatchSet specified by RegexMatchSetId. /// /// /// Container for the necessary parameters to execute the GetRegexMatchSet service method. /// /// The response from the GetRegexMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetRegexMatchSet Operation public virtual GetRegexMatchSetResponse GetRegexMatchSet(GetRegexMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetRegexMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = GetRegexMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetRegexMatchSet operation. /// /// /// Container for the necessary parameters to execute the GetRegexMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetRegexMatchSet /// operation. /// REST API Reference for GetRegexMatchSet Operation public virtual IAsyncResult BeginGetRegexMatchSet(GetRegexMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetRegexMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = GetRegexMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetRegexMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginGetRegexMatchSet. /// /// Returns a GetRegexMatchSetResult from WAF. /// REST API Reference for GetRegexMatchSet Operation public virtual GetRegexMatchSetResponse EndGetRegexMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetRegexPatternSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the RegexPatternSet specified by RegexPatternSetId. /// /// /// Container for the necessary parameters to execute the GetRegexPatternSet service method. /// /// The response from the GetRegexPatternSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetRegexPatternSet Operation public virtual GetRegexPatternSetResponse GetRegexPatternSet(GetRegexPatternSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetRegexPatternSetRequestMarshaller.Instance; options.ResponseUnmarshaller = GetRegexPatternSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetRegexPatternSet operation. /// /// /// Container for the necessary parameters to execute the GetRegexPatternSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetRegexPatternSet /// operation. /// REST API Reference for GetRegexPatternSet Operation public virtual IAsyncResult BeginGetRegexPatternSet(GetRegexPatternSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetRegexPatternSetRequestMarshaller.Instance; options.ResponseUnmarshaller = GetRegexPatternSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetRegexPatternSet operation. /// /// /// The IAsyncResult returned by the call to BeginGetRegexPatternSet. /// /// Returns a GetRegexPatternSetResult from WAF. /// REST API Reference for GetRegexPatternSet Operation public virtual GetRegexPatternSetResponse EndGetRegexPatternSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetRule /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the Rule that is specified by the RuleId that you included /// in the GetRule request. /// /// /// The RuleId of the Rule that you want to get. RuleId is returned by CreateRule and by ListRules. /// /// The response from the GetRule service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetRule Operation public virtual GetRuleResponse GetRule(string ruleId) { var request = new GetRuleRequest(); request.RuleId = ruleId; return GetRule(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the Rule that is specified by the RuleId that you included /// in the GetRule request. /// /// /// Container for the necessary parameters to execute the GetRule service method. /// /// The response from the GetRule service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetRule Operation public virtual GetRuleResponse GetRule(GetRuleRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = GetRuleResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetRule operation. /// /// /// Container for the necessary parameters to execute the GetRule operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetRule /// operation. /// REST API Reference for GetRule Operation public virtual IAsyncResult BeginGetRule(GetRuleRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = GetRuleResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetRule operation. /// /// /// The IAsyncResult returned by the call to BeginGetRule. /// /// Returns a GetRuleResult from WAF. /// REST API Reference for GetRule Operation public virtual GetRuleResponse EndGetRule(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetRuleGroup /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the RuleGroup that is specified by the RuleGroupId that /// you included in the GetRuleGroup request. /// /// /// /// To view the rules in a rule group, use ListActivatedRulesInRuleGroup. /// /// /// Container for the necessary parameters to execute the GetRuleGroup service method. /// /// The response from the GetRuleGroup service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetRuleGroup Operation public virtual GetRuleGroupResponse GetRuleGroup(GetRuleGroupRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetRuleGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = GetRuleGroupResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetRuleGroup operation. /// /// /// Container for the necessary parameters to execute the GetRuleGroup operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetRuleGroup /// operation. /// REST API Reference for GetRuleGroup Operation public virtual IAsyncResult BeginGetRuleGroup(GetRuleGroupRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetRuleGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = GetRuleGroupResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetRuleGroup operation. /// /// /// The IAsyncResult returned by the call to BeginGetRuleGroup. /// /// Returns a GetRuleGroupResult from WAF. /// REST API Reference for GetRuleGroup Operation public virtual GetRuleGroupResponse EndGetRuleGroup(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetSampledRequests /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Gets detailed information about a specified number of requests--a sample--that AWS /// WAF randomly selects from among the first 5,000 requests that your AWS resource received /// during a time range that you choose. You can specify a sample size of up to 500 requests, /// and you can specify any time range in the previous three hours. /// /// /// /// GetSampledRequests returns a time range, which is usually the time range /// that you specified. However, if your resource (such as a CloudFront distribution) /// received 5,000 requests before the specified time range elapsed, GetSampledRequests /// returns an updated time range. This new time range indicates the actual period during /// which AWS WAF selected the requests in the sample. /// /// /// Container for the necessary parameters to execute the GetSampledRequests service method. /// /// The response from the GetSampledRequests service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetSampledRequests Operation public virtual GetSampledRequestsResponse GetSampledRequests(GetSampledRequestsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetSampledRequestsRequestMarshaller.Instance; options.ResponseUnmarshaller = GetSampledRequestsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetSampledRequests operation. /// /// /// Container for the necessary parameters to execute the GetSampledRequests operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetSampledRequests /// operation. /// REST API Reference for GetSampledRequests Operation public virtual IAsyncResult BeginGetSampledRequests(GetSampledRequestsRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetSampledRequestsRequestMarshaller.Instance; options.ResponseUnmarshaller = GetSampledRequestsResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetSampledRequests operation. /// /// /// The IAsyncResult returned by the call to BeginGetSampledRequests. /// /// Returns a GetSampledRequestsResult from WAF. /// REST API Reference for GetSampledRequests Operation public virtual GetSampledRequestsResponse EndGetSampledRequests(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetSizeConstraintSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the SizeConstraintSet specified by SizeConstraintSetId. /// /// /// Container for the necessary parameters to execute the GetSizeConstraintSet service method. /// /// The response from the GetSizeConstraintSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetSizeConstraintSet Operation public virtual GetSizeConstraintSetResponse GetSizeConstraintSet(GetSizeConstraintSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetSizeConstraintSetRequestMarshaller.Instance; options.ResponseUnmarshaller = GetSizeConstraintSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetSizeConstraintSet operation. /// /// /// Container for the necessary parameters to execute the GetSizeConstraintSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetSizeConstraintSet /// operation. /// REST API Reference for GetSizeConstraintSet Operation public virtual IAsyncResult BeginGetSizeConstraintSet(GetSizeConstraintSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetSizeConstraintSetRequestMarshaller.Instance; options.ResponseUnmarshaller = GetSizeConstraintSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetSizeConstraintSet operation. /// /// /// The IAsyncResult returned by the call to BeginGetSizeConstraintSet. /// /// Returns a GetSizeConstraintSetResult from WAF. /// REST API Reference for GetSizeConstraintSet Operation public virtual GetSizeConstraintSetResponse EndGetSizeConstraintSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetSqlInjectionMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the SqlInjectionMatchSet that is specified by SqlInjectionMatchSetId. /// /// /// The SqlInjectionMatchSetId of the SqlInjectionMatchSet that you want to get. SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets. /// /// The response from the GetSqlInjectionMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetSqlInjectionMatchSet Operation public virtual GetSqlInjectionMatchSetResponse GetSqlInjectionMatchSet(string sqlInjectionMatchSetId) { var request = new GetSqlInjectionMatchSetRequest(); request.SqlInjectionMatchSetId = sqlInjectionMatchSetId; return GetSqlInjectionMatchSet(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the SqlInjectionMatchSet that is specified by SqlInjectionMatchSetId. /// /// /// Container for the necessary parameters to execute the GetSqlInjectionMatchSet service method. /// /// The response from the GetSqlInjectionMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetSqlInjectionMatchSet Operation public virtual GetSqlInjectionMatchSetResponse GetSqlInjectionMatchSet(GetSqlInjectionMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetSqlInjectionMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = GetSqlInjectionMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetSqlInjectionMatchSet operation. /// /// /// Container for the necessary parameters to execute the GetSqlInjectionMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetSqlInjectionMatchSet /// operation. /// REST API Reference for GetSqlInjectionMatchSet Operation public virtual IAsyncResult BeginGetSqlInjectionMatchSet(GetSqlInjectionMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetSqlInjectionMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = GetSqlInjectionMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetSqlInjectionMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginGetSqlInjectionMatchSet. /// /// Returns a GetSqlInjectionMatchSetResult from WAF. /// REST API Reference for GetSqlInjectionMatchSet Operation public virtual GetSqlInjectionMatchSetResponse EndGetSqlInjectionMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetWebACL /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the WebACL that is specified by WebACLId. /// /// /// The WebACLId of the WebACL that you want to get. WebACLId is returned by CreateWebACL and by ListWebACLs. /// /// The response from the GetWebACL service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetWebACL Operation public virtual GetWebACLResponse GetWebACL(string webACLId) { var request = new GetWebACLRequest(); request.WebACLId = webACLId; return GetWebACL(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the WebACL that is specified by WebACLId. /// /// /// Container for the necessary parameters to execute the GetWebACL service method. /// /// The response from the GetWebACL service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetWebACL Operation public virtual GetWebACLResponse GetWebACL(GetWebACLRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetWebACLRequestMarshaller.Instance; options.ResponseUnmarshaller = GetWebACLResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetWebACL operation. /// /// /// Container for the necessary parameters to execute the GetWebACL operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetWebACL /// operation. /// REST API Reference for GetWebACL Operation public virtual IAsyncResult BeginGetWebACL(GetWebACLRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetWebACLRequestMarshaller.Instance; options.ResponseUnmarshaller = GetWebACLResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetWebACL operation. /// /// /// The IAsyncResult returned by the call to BeginGetWebACL. /// /// Returns a GetWebACLResult from WAF. /// REST API Reference for GetWebACL Operation public virtual GetWebACLResponse EndGetWebACL(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetXssMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns the XssMatchSet that is specified by XssMatchSetId. /// /// /// Container for the necessary parameters to execute the GetXssMatchSet service method. /// /// The response from the GetXssMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for GetXssMatchSet Operation public virtual GetXssMatchSetResponse GetXssMatchSet(GetXssMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetXssMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = GetXssMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetXssMatchSet operation. /// /// /// Container for the necessary parameters to execute the GetXssMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetXssMatchSet /// operation. /// REST API Reference for GetXssMatchSet Operation public virtual IAsyncResult BeginGetXssMatchSet(GetXssMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetXssMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = GetXssMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetXssMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginGetXssMatchSet. /// /// Returns a GetXssMatchSetResult from WAF. /// REST API Reference for GetXssMatchSet Operation public virtual GetXssMatchSetResponse EndGetXssMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListActivatedRulesInRuleGroup /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns an array of ActivatedRule objects. /// /// /// Container for the necessary parameters to execute the ListActivatedRulesInRuleGroup service method. /// /// The response from the ListActivatedRulesInRuleGroup service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for ListActivatedRulesInRuleGroup Operation public virtual ListActivatedRulesInRuleGroupResponse ListActivatedRulesInRuleGroup(ListActivatedRulesInRuleGroupRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListActivatedRulesInRuleGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = ListActivatedRulesInRuleGroupResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the ListActivatedRulesInRuleGroup operation. /// /// /// Container for the necessary parameters to execute the ListActivatedRulesInRuleGroup operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListActivatedRulesInRuleGroup /// operation. /// REST API Reference for ListActivatedRulesInRuleGroup Operation public virtual IAsyncResult BeginListActivatedRulesInRuleGroup(ListActivatedRulesInRuleGroupRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListActivatedRulesInRuleGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = ListActivatedRulesInRuleGroupResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListActivatedRulesInRuleGroup operation. /// /// /// The IAsyncResult returned by the call to BeginListActivatedRulesInRuleGroup. /// /// Returns a ListActivatedRulesInRuleGroupResult from WAF. /// REST API Reference for ListActivatedRulesInRuleGroup Operation public virtual ListActivatedRulesInRuleGroupResponse EndListActivatedRulesInRuleGroup(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListByteMatchSets /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns an array of ByteMatchSetSummary objects. /// /// /// Container for the necessary parameters to execute the ListByteMatchSets service method. /// /// The response from the ListByteMatchSets service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// REST API Reference for ListByteMatchSets Operation public virtual ListByteMatchSetsResponse ListByteMatchSets(ListByteMatchSetsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListByteMatchSetsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListByteMatchSetsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the ListByteMatchSets operation. /// /// /// Container for the necessary parameters to execute the ListByteMatchSets operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListByteMatchSets /// operation. /// REST API Reference for ListByteMatchSets Operation public virtual IAsyncResult BeginListByteMatchSets(ListByteMatchSetsRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListByteMatchSetsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListByteMatchSetsResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListByteMatchSets operation. /// /// /// The IAsyncResult returned by the call to BeginListByteMatchSets. /// /// Returns a ListByteMatchSetsResult from WAF. /// REST API Reference for ListByteMatchSets Operation public virtual ListByteMatchSetsResponse EndListByteMatchSets(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListGeoMatchSets /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns an array of GeoMatchSetSummary objects in the response. /// /// /// Container for the necessary parameters to execute the ListGeoMatchSets service method. /// /// The response from the ListGeoMatchSets service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// REST API Reference for ListGeoMatchSets Operation public virtual ListGeoMatchSetsResponse ListGeoMatchSets(ListGeoMatchSetsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListGeoMatchSetsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListGeoMatchSetsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the ListGeoMatchSets operation. /// /// /// Container for the necessary parameters to execute the ListGeoMatchSets operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListGeoMatchSets /// operation. /// REST API Reference for ListGeoMatchSets Operation public virtual IAsyncResult BeginListGeoMatchSets(ListGeoMatchSetsRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListGeoMatchSetsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListGeoMatchSetsResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListGeoMatchSets operation. /// /// /// The IAsyncResult returned by the call to BeginListGeoMatchSets. /// /// Returns a ListGeoMatchSetsResult from WAF. /// REST API Reference for ListGeoMatchSets Operation public virtual ListGeoMatchSetsResponse EndListGeoMatchSets(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListIPSets /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns an array of IPSetSummary objects in the response. /// /// /// Container for the necessary parameters to execute the ListIPSets service method. /// /// The response from the ListIPSets service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// REST API Reference for ListIPSets Operation public virtual ListIPSetsResponse ListIPSets(ListIPSetsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListIPSetsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListIPSetsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the ListIPSets operation. /// /// /// Container for the necessary parameters to execute the ListIPSets operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListIPSets /// operation. /// REST API Reference for ListIPSets Operation public virtual IAsyncResult BeginListIPSets(ListIPSetsRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListIPSetsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListIPSetsResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListIPSets operation. /// /// /// The IAsyncResult returned by the call to BeginListIPSets. /// /// Returns a ListIPSetsResult from WAF. /// REST API Reference for ListIPSets Operation public virtual ListIPSetsResponse EndListIPSets(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListLoggingConfigurations /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns an array of LoggingConfiguration objects. /// /// /// Container for the necessary parameters to execute the ListLoggingConfigurations service method. /// /// The response from the ListLoggingConfigurations service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for ListLoggingConfigurations Operation public virtual ListLoggingConfigurationsResponse ListLoggingConfigurations(ListLoggingConfigurationsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListLoggingConfigurationsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListLoggingConfigurationsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the ListLoggingConfigurations operation. /// /// /// Container for the necessary parameters to execute the ListLoggingConfigurations operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListLoggingConfigurations /// operation. /// REST API Reference for ListLoggingConfigurations Operation public virtual IAsyncResult BeginListLoggingConfigurations(ListLoggingConfigurationsRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListLoggingConfigurationsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListLoggingConfigurationsResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListLoggingConfigurations operation. /// /// /// The IAsyncResult returned by the call to BeginListLoggingConfigurations. /// /// Returns a ListLoggingConfigurationsResult from WAF. /// REST API Reference for ListLoggingConfigurations Operation public virtual ListLoggingConfigurationsResponse EndListLoggingConfigurations(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListRateBasedRules /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns an array of RuleSummary objects. /// /// /// Container for the necessary parameters to execute the ListRateBasedRules service method. /// /// The response from the ListRateBasedRules service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// REST API Reference for ListRateBasedRules Operation public virtual ListRateBasedRulesResponse ListRateBasedRules(ListRateBasedRulesRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListRateBasedRulesRequestMarshaller.Instance; options.ResponseUnmarshaller = ListRateBasedRulesResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the ListRateBasedRules operation. /// /// /// Container for the necessary parameters to execute the ListRateBasedRules operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListRateBasedRules /// operation. /// REST API Reference for ListRateBasedRules Operation public virtual IAsyncResult BeginListRateBasedRules(ListRateBasedRulesRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListRateBasedRulesRequestMarshaller.Instance; options.ResponseUnmarshaller = ListRateBasedRulesResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListRateBasedRules operation. /// /// /// The IAsyncResult returned by the call to BeginListRateBasedRules. /// /// Returns a ListRateBasedRulesResult from WAF. /// REST API Reference for ListRateBasedRules Operation public virtual ListRateBasedRulesResponse EndListRateBasedRules(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListRegexMatchSets /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns an array of RegexMatchSetSummary objects. /// /// /// Container for the necessary parameters to execute the ListRegexMatchSets service method. /// /// The response from the ListRegexMatchSets service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// REST API Reference for ListRegexMatchSets Operation public virtual ListRegexMatchSetsResponse ListRegexMatchSets(ListRegexMatchSetsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListRegexMatchSetsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListRegexMatchSetsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the ListRegexMatchSets operation. /// /// /// Container for the necessary parameters to execute the ListRegexMatchSets operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListRegexMatchSets /// operation. /// REST API Reference for ListRegexMatchSets Operation public virtual IAsyncResult BeginListRegexMatchSets(ListRegexMatchSetsRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListRegexMatchSetsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListRegexMatchSetsResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListRegexMatchSets operation. /// /// /// The IAsyncResult returned by the call to BeginListRegexMatchSets. /// /// Returns a ListRegexMatchSetsResult from WAF. /// REST API Reference for ListRegexMatchSets Operation public virtual ListRegexMatchSetsResponse EndListRegexMatchSets(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListRegexPatternSets /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns an array of RegexPatternSetSummary objects. /// /// /// Container for the necessary parameters to execute the ListRegexPatternSets service method. /// /// The response from the ListRegexPatternSets service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// REST API Reference for ListRegexPatternSets Operation public virtual ListRegexPatternSetsResponse ListRegexPatternSets(ListRegexPatternSetsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListRegexPatternSetsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListRegexPatternSetsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the ListRegexPatternSets operation. /// /// /// Container for the necessary parameters to execute the ListRegexPatternSets operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListRegexPatternSets /// operation. /// REST API Reference for ListRegexPatternSets Operation public virtual IAsyncResult BeginListRegexPatternSets(ListRegexPatternSetsRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListRegexPatternSetsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListRegexPatternSetsResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListRegexPatternSets operation. /// /// /// The IAsyncResult returned by the call to BeginListRegexPatternSets. /// /// Returns a ListRegexPatternSetsResult from WAF. /// REST API Reference for ListRegexPatternSets Operation public virtual ListRegexPatternSetsResponse EndListRegexPatternSets(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListRuleGroups /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns an array of RuleGroup objects. /// /// /// Container for the necessary parameters to execute the ListRuleGroups service method. /// /// The response from the ListRuleGroups service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// REST API Reference for ListRuleGroups Operation public virtual ListRuleGroupsResponse ListRuleGroups(ListRuleGroupsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListRuleGroupsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListRuleGroupsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the ListRuleGroups operation. /// /// /// Container for the necessary parameters to execute the ListRuleGroups operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListRuleGroups /// operation. /// REST API Reference for ListRuleGroups Operation public virtual IAsyncResult BeginListRuleGroups(ListRuleGroupsRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListRuleGroupsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListRuleGroupsResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListRuleGroups operation. /// /// /// The IAsyncResult returned by the call to BeginListRuleGroups. /// /// Returns a ListRuleGroupsResult from WAF. /// REST API Reference for ListRuleGroups Operation public virtual ListRuleGroupsResponse EndListRuleGroups(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListRules /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns an array of RuleSummary objects. /// /// /// Container for the necessary parameters to execute the ListRules service method. /// /// The response from the ListRules service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// REST API Reference for ListRules Operation public virtual ListRulesResponse ListRules(ListRulesRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListRulesRequestMarshaller.Instance; options.ResponseUnmarshaller = ListRulesResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the ListRules operation. /// /// /// Container for the necessary parameters to execute the ListRules operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListRules /// operation. /// REST API Reference for ListRules Operation public virtual IAsyncResult BeginListRules(ListRulesRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListRulesRequestMarshaller.Instance; options.ResponseUnmarshaller = ListRulesResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListRules operation. /// /// /// The IAsyncResult returned by the call to BeginListRules. /// /// Returns a ListRulesResult from WAF. /// REST API Reference for ListRules Operation public virtual ListRulesResponse EndListRules(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListSizeConstraintSets /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns an array of SizeConstraintSetSummary objects. /// /// /// Container for the necessary parameters to execute the ListSizeConstraintSets service method. /// /// The response from the ListSizeConstraintSets service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// REST API Reference for ListSizeConstraintSets Operation public virtual ListSizeConstraintSetsResponse ListSizeConstraintSets(ListSizeConstraintSetsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListSizeConstraintSetsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListSizeConstraintSetsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the ListSizeConstraintSets operation. /// /// /// Container for the necessary parameters to execute the ListSizeConstraintSets operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListSizeConstraintSets /// operation. /// REST API Reference for ListSizeConstraintSets Operation public virtual IAsyncResult BeginListSizeConstraintSets(ListSizeConstraintSetsRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListSizeConstraintSetsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListSizeConstraintSetsResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListSizeConstraintSets operation. /// /// /// The IAsyncResult returned by the call to BeginListSizeConstraintSets. /// /// Returns a ListSizeConstraintSetsResult from WAF. /// REST API Reference for ListSizeConstraintSets Operation public virtual ListSizeConstraintSetsResponse EndListSizeConstraintSets(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListSqlInjectionMatchSets /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns an array of SqlInjectionMatchSet objects. /// /// /// Container for the necessary parameters to execute the ListSqlInjectionMatchSets service method. /// /// The response from the ListSqlInjectionMatchSets service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// REST API Reference for ListSqlInjectionMatchSets Operation public virtual ListSqlInjectionMatchSetsResponse ListSqlInjectionMatchSets(ListSqlInjectionMatchSetsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListSqlInjectionMatchSetsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListSqlInjectionMatchSetsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the ListSqlInjectionMatchSets operation. /// /// /// Container for the necessary parameters to execute the ListSqlInjectionMatchSets operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListSqlInjectionMatchSets /// operation. /// REST API Reference for ListSqlInjectionMatchSets Operation public virtual IAsyncResult BeginListSqlInjectionMatchSets(ListSqlInjectionMatchSetsRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListSqlInjectionMatchSetsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListSqlInjectionMatchSetsResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListSqlInjectionMatchSets operation. /// /// /// The IAsyncResult returned by the call to BeginListSqlInjectionMatchSets. /// /// Returns a ListSqlInjectionMatchSetsResult from WAF. /// REST API Reference for ListSqlInjectionMatchSets Operation public virtual ListSqlInjectionMatchSetsResponse EndListSqlInjectionMatchSets(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListSubscribedRuleGroups /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns an array of RuleGroup objects that you are subscribed to. /// /// /// Container for the necessary parameters to execute the ListSubscribedRuleGroups service method. /// /// The response from the ListSubscribedRuleGroups service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because the referenced object doesn't exist. /// /// REST API Reference for ListSubscribedRuleGroups Operation public virtual ListSubscribedRuleGroupsResponse ListSubscribedRuleGroups(ListSubscribedRuleGroupsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListSubscribedRuleGroupsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListSubscribedRuleGroupsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the ListSubscribedRuleGroups operation. /// /// /// Container for the necessary parameters to execute the ListSubscribedRuleGroups operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListSubscribedRuleGroups /// operation. /// REST API Reference for ListSubscribedRuleGroups Operation public virtual IAsyncResult BeginListSubscribedRuleGroups(ListSubscribedRuleGroupsRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListSubscribedRuleGroupsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListSubscribedRuleGroupsResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListSubscribedRuleGroups operation. /// /// /// The IAsyncResult returned by the call to BeginListSubscribedRuleGroups. /// /// Returns a ListSubscribedRuleGroupsResult from WAF. /// REST API Reference for ListSubscribedRuleGroups Operation public virtual ListSubscribedRuleGroupsResponse EndListSubscribedRuleGroups(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListTagsForResource /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Retrieves the tags associated with the specified AWS resource. Tags are key:value /// pairs that you can use to categorize and manage your resources, for purposes like /// billing. For example, you might set the tag key to "customer" and the value to the /// customer name or ID. You can specify one or more tags to add to each AWS resource, /// up to 50 tags for a resource. /// /// /// /// Tagging is only available through the API, SDKs, and CLI. You can't manage or view /// tags through the AWS WAF Classic console. You can tag the AWS resources that you manage /// through AWS WAF Classic: web ACLs, rule groups, and rules. /// /// /// Container for the necessary parameters to execute the ListTagsForResource service method. /// /// The response from the ListTagsForResource service method, as returned by WAF. /// /// /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// /// /// /// /// /// REST API Reference for ListTagsForResource Operation public virtual ListTagsForResourceResponse ListTagsForResource(ListTagsForResourceRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListTagsForResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = ListTagsForResourceResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the ListTagsForResource operation. /// /// /// Container for the necessary parameters to execute the ListTagsForResource operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListTagsForResource /// operation. /// REST API Reference for ListTagsForResource Operation public virtual IAsyncResult BeginListTagsForResource(ListTagsForResourceRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListTagsForResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = ListTagsForResourceResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListTagsForResource operation. /// /// /// The IAsyncResult returned by the call to BeginListTagsForResource. /// /// Returns a ListTagsForResourceResult from WAF. /// REST API Reference for ListTagsForResource Operation public virtual ListTagsForResourceResponse EndListTagsForResource(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListWebACLs /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns an array of WebACLSummary objects in the response. /// /// /// Container for the necessary parameters to execute the ListWebACLs service method. /// /// The response from the ListWebACLs service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// REST API Reference for ListWebACLs Operation public virtual ListWebACLsResponse ListWebACLs(ListWebACLsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListWebACLsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListWebACLsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the ListWebACLs operation. /// /// /// Container for the necessary parameters to execute the ListWebACLs operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListWebACLs /// operation. /// REST API Reference for ListWebACLs Operation public virtual IAsyncResult BeginListWebACLs(ListWebACLsRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListWebACLsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListWebACLsResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListWebACLs operation. /// /// /// The IAsyncResult returned by the call to BeginListWebACLs. /// /// Returns a ListWebACLsResult from WAF. /// REST API Reference for ListWebACLs Operation public virtual ListWebACLsResponse EndListWebACLs(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListXssMatchSets /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Returns an array of XssMatchSet objects. /// /// /// Container for the necessary parameters to execute the ListXssMatchSets service method. /// /// The response from the ListXssMatchSets service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// REST API Reference for ListXssMatchSets Operation public virtual ListXssMatchSetsResponse ListXssMatchSets(ListXssMatchSetsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListXssMatchSetsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListXssMatchSetsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the ListXssMatchSets operation. /// /// /// Container for the necessary parameters to execute the ListXssMatchSets operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListXssMatchSets /// operation. /// REST API Reference for ListXssMatchSets Operation public virtual IAsyncResult BeginListXssMatchSets(ListXssMatchSetsRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListXssMatchSetsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListXssMatchSetsResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListXssMatchSets operation. /// /// /// The IAsyncResult returned by the call to BeginListXssMatchSets. /// /// Returns a ListXssMatchSetsResult from WAF. /// REST API Reference for ListXssMatchSets Operation public virtual ListXssMatchSetsResponse EndListXssMatchSets(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region PutLoggingConfiguration /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Associates a LoggingConfiguration with a specified web ACL. /// /// /// /// You can access information about all traffic that AWS WAF inspects using the following /// steps: /// ///
  1. /// /// Create an Amazon Kinesis Data Firehose. /// /// /// /// Create the data firehose with a PUT source and in the region that you are operating. /// However, if you are capturing logs for Amazon CloudFront, always create the firehose /// in US East (N. Virginia). /// /// /// /// Do not create the data firehose using a Kinesis stream as your source. /// ///
  2. /// /// Associate that firehose to your web ACL using a PutLoggingConfiguration /// request. /// ///
/// /// When you successfully enable logging using a PutLoggingConfiguration /// request, AWS WAF will create a service linked role with the necessary permissions /// to write logs to the Amazon Kinesis Data Firehose. For more information, see Logging /// Web ACL Traffic Information in the AWS WAF Developer Guide. /// ///
/// Container for the necessary parameters to execute the PutLoggingConfiguration service method. /// /// The response from the PutLoggingConfiguration service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because the referenced object doesn't exist. /// /// /// AWS WAF is not able to access the service linked role. This can be caused by a previous /// PutLoggingConfiguration request, which can lock the service linked role /// for about 20 seconds. Please try your request again. The service linked role can also /// be locked by a previous DeleteServiceLinkedRole request, which can lock /// the role for 15 minutes or more. If you recently made a DeleteServiceLinkedRole, /// wait at least 15 minutes and try the request again. If you receive this same exception /// again, you will have to wait additional time until the role is unlocked. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for PutLoggingConfiguration Operation public virtual PutLoggingConfigurationResponse PutLoggingConfiguration(PutLoggingConfigurationRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = PutLoggingConfigurationRequestMarshaller.Instance; options.ResponseUnmarshaller = PutLoggingConfigurationResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the PutLoggingConfiguration operation. /// /// /// Container for the necessary parameters to execute the PutLoggingConfiguration operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndPutLoggingConfiguration /// operation. /// REST API Reference for PutLoggingConfiguration Operation public virtual IAsyncResult BeginPutLoggingConfiguration(PutLoggingConfigurationRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = PutLoggingConfigurationRequestMarshaller.Instance; options.ResponseUnmarshaller = PutLoggingConfigurationResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the PutLoggingConfiguration operation. /// /// /// The IAsyncResult returned by the call to BeginPutLoggingConfiguration. /// /// Returns a PutLoggingConfigurationResult from WAF. /// REST API Reference for PutLoggingConfiguration Operation public virtual PutLoggingConfigurationResponse EndPutLoggingConfiguration(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region PutPermissionPolicy /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Attaches an IAM policy to the specified resource. The only supported use for this /// action is to share a RuleGroup across accounts. /// /// /// /// The PutPermissionPolicy is subject to the following restrictions: /// ///
  • /// /// You can attach only one policy with each PutPermissionPolicy request. /// ///
  • /// /// The policy must include an Effect, Action and Principal. /// /// ///
  • /// /// Effect must specify Allow. /// ///
  • /// /// The Action in the policy must be waf:UpdateWebACL, waf-regional:UpdateWebACL, /// waf:GetRuleGroup and waf-regional:GetRuleGroup . Any extra /// or wildcard actions in the policy will be rejected. /// ///
  • /// /// The policy cannot include a Resource parameter. /// ///
  • /// /// The ARN in the request must be a valid WAF RuleGroup ARN and the RuleGroup must exist /// in the same region. /// ///
  • /// /// The user making the request must be the owner of the RuleGroup. /// ///
  • /// /// Your policy must be composed using IAM Policy version 2012-10-17. /// ///
/// /// For more information, see IAM /// Policies. /// /// /// /// An example of a valid policy parameter is shown in the Examples section below. /// ///
/// Container for the necessary parameters to execute the PutPermissionPolicy service method. /// /// The response from the PutPermissionPolicy service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because the specified policy is not in the proper format. /// /// /// /// The policy is subject to the following restrictions: /// ///
  • /// /// You can attach only one policy with each PutPermissionPolicy request. /// ///
  • /// /// The policy must include an Effect, Action and Principal. /// /// ///
  • /// /// Effect must specify Allow. /// ///
  • /// /// The Action in the policy must be waf:UpdateWebACL, waf-regional:UpdateWebACL, /// waf:GetRuleGroup and waf-regional:GetRuleGroup . Any extra /// or wildcard actions in the policy will be rejected. /// ///
  • /// /// The policy cannot include a Resource parameter. /// ///
  • /// /// The ARN in the request must be a valid WAF RuleGroup ARN and the RuleGroup must exist /// in the same region. /// ///
  • /// /// The user making the request must be the owner of the RuleGroup. /// ///
  • /// /// Your policy must be composed using IAM Policy version 2012-10-17. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for PutPermissionPolicy Operation public virtual PutPermissionPolicyResponse PutPermissionPolicy(PutPermissionPolicyRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = PutPermissionPolicyRequestMarshaller.Instance; options.ResponseUnmarshaller = PutPermissionPolicyResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the PutPermissionPolicy operation. /// /// /// Container for the necessary parameters to execute the PutPermissionPolicy operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndPutPermissionPolicy /// operation. /// REST API Reference for PutPermissionPolicy Operation public virtual IAsyncResult BeginPutPermissionPolicy(PutPermissionPolicyRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = PutPermissionPolicyRequestMarshaller.Instance; options.ResponseUnmarshaller = PutPermissionPolicyResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the PutPermissionPolicy operation. /// /// /// The IAsyncResult returned by the call to BeginPutPermissionPolicy. /// /// Returns a PutPermissionPolicyResult from WAF. /// REST API Reference for PutPermissionPolicy Operation public virtual PutPermissionPolicyResponse EndPutPermissionPolicy(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region TagResource /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Associates tags with the specified AWS resource. Tags are key:value pairs that you /// can use to categorize and manage your resources, for purposes like billing. For example, /// you might set the tag key to "customer" and the value to the customer name or ID. /// You can specify one or more tags to add to each AWS resource, up to 50 tags for a /// resource. /// /// /// /// Tagging is only available through the API, SDKs, and CLI. You can't manage or view /// tags through the AWS WAF Classic console. You can use this action to tag the AWS resources /// that you manage through AWS WAF Classic: web ACLs, rule groups, and rules. /// /// /// Container for the necessary parameters to execute the TagResource service method. /// /// The response from the TagResource service method, as returned by WAF. /// /// /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because the referenced object doesn't exist. /// /// /// /// /// /// /// /// REST API Reference for TagResource Operation public virtual TagResourceResponse TagResource(TagResourceRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = TagResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = TagResourceResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the TagResource operation. /// /// /// Container for the necessary parameters to execute the TagResource operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndTagResource /// operation. /// REST API Reference for TagResource Operation public virtual IAsyncResult BeginTagResource(TagResourceRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = TagResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = TagResourceResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the TagResource operation. /// /// /// The IAsyncResult returned by the call to BeginTagResource. /// /// Returns a TagResourceResult from WAF. /// REST API Reference for TagResource Operation public virtual TagResourceResponse EndTagResource(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region UntagResource /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Container for the necessary parameters to execute the UntagResource service method. /// /// The response from the UntagResource service method, as returned by WAF. /// /// /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// /// /// /// /// /// REST API Reference for UntagResource Operation public virtual UntagResourceResponse UntagResource(UntagResourceRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UntagResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = UntagResourceResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the UntagResource operation. /// /// /// Container for the necessary parameters to execute the UntagResource operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUntagResource /// operation. /// REST API Reference for UntagResource Operation public virtual IAsyncResult BeginUntagResource(UntagResourceRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = UntagResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = UntagResourceResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the UntagResource operation. /// /// /// The IAsyncResult returned by the call to BeginUntagResource. /// /// Returns a UntagResourceResult from WAF. /// REST API Reference for UntagResource Operation public virtual UntagResourceResponse EndUntagResource(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region UpdateByteMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Inserts or deletes ByteMatchTuple objects (filters) in a ByteMatchSet. /// For each ByteMatchTuple object, you specify the following values: /// ///
  • /// /// Whether to insert or delete the object from the array. If you want to change a ByteMatchSetUpdate /// object, you delete the existing object and add a new one. /// ///
  • /// /// The part of a web request that you want AWS WAF to inspect, such as a query string /// or the value of the User-Agent header. /// ///
  • /// /// The bytes (typically a string that corresponds with ASCII characters) that you want /// AWS WAF to look for. For more information, including how you specify the values for /// the AWS WAF API and the AWS CLI or SDKs, see TargetString in the ByteMatchTuple /// data type. /// ///
  • /// /// Where to look, such as at the beginning or the end of a query string. /// ///
  • /// /// Whether to perform any conversions on the request, such as converting it to lowercase, /// before inspecting it for the specified string. /// ///
/// /// For example, you can add a ByteMatchSetUpdate object that matches web /// requests in which User-Agent headers contain the string BadBot. /// You can then configure AWS WAF to block those requests. /// /// /// /// To create and configure a ByteMatchSet, perform the following steps: /// ///
  1. /// /// Create a ByteMatchSet. For more information, see CreateByteMatchSet. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateByteMatchSet request. /// ///
  3. /// /// Submit an UpdateByteMatchSet request to specify the part of the request /// that you want AWS WAF to inspect (for example, the header or the URI) and the value /// that you want AWS WAF to watch for. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// The ByteMatchSetId of the ByteMatchSet that you want to update. ByteMatchSetId is returned by CreateByteMatchSet and by ListByteMatchSets. /// An array of ByteMatchSetUpdate objects that you want to insert into or delete from a ByteMatchSet. For more information, see the applicable data types: /// The value returned by the most recent call to GetChangeToken. /// /// The response from the UpdateByteMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because there was nothing to do. For example: /// ///
  • /// /// You tried to remove a Rule from a WebACL, but the Rule /// isn't in the specified WebACL. /// ///
  • /// /// You tried to remove an IP address from an IPSet, but the IP address isn't /// in the specified IPSet. /// ///
  • /// /// You tried to remove a ByteMatchTuple from a ByteMatchSet, /// but the ByteMatchTuple isn't in the specified WebACL. /// ///
  • /// /// You tried to add a Rule to a WebACL, but the Rule /// already exists in the specified WebACL. /// ///
  • /// /// You tried to add a ByteMatchTuple to a ByteMatchSet, but /// the ByteMatchTuple already exists in the specified WebACL. /// ///
///
/// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to add an object to or delete an object from /// another object that doesn't exist. For example: /// ///
  • /// /// You tried to add a Rule to or delete a Rule from a WebACL /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchSet to or delete a ByteMatchSet /// from a Rule that doesn't exist. /// ///
  • /// /// You tried to add an IP address to or delete an IP address from an IPSet /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchTuple to or delete a ByteMatchTuple /// from a ByteMatchSet that doesn't exist. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for UpdateByteMatchSet Operation public virtual UpdateByteMatchSetResponse UpdateByteMatchSet(string byteMatchSetId, List updates, string changeToken) { var request = new UpdateByteMatchSetRequest(); request.ByteMatchSetId = byteMatchSetId; request.Updates = updates; request.ChangeToken = changeToken; return UpdateByteMatchSet(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Inserts or deletes ByteMatchTuple objects (filters) in a ByteMatchSet. /// For each ByteMatchTuple object, you specify the following values: /// ///
  • /// /// Whether to insert or delete the object from the array. If you want to change a ByteMatchSetUpdate /// object, you delete the existing object and add a new one. /// ///
  • /// /// The part of a web request that you want AWS WAF to inspect, such as a query string /// or the value of the User-Agent header. /// ///
  • /// /// The bytes (typically a string that corresponds with ASCII characters) that you want /// AWS WAF to look for. For more information, including how you specify the values for /// the AWS WAF API and the AWS CLI or SDKs, see TargetString in the ByteMatchTuple /// data type. /// ///
  • /// /// Where to look, such as at the beginning or the end of a query string. /// ///
  • /// /// Whether to perform any conversions on the request, such as converting it to lowercase, /// before inspecting it for the specified string. /// ///
/// /// For example, you can add a ByteMatchSetUpdate object that matches web /// requests in which User-Agent headers contain the string BadBot. /// You can then configure AWS WAF to block those requests. /// /// /// /// To create and configure a ByteMatchSet, perform the following steps: /// ///
  1. /// /// Create a ByteMatchSet. For more information, see CreateByteMatchSet. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateByteMatchSet request. /// ///
  3. /// /// Submit an UpdateByteMatchSet request to specify the part of the request /// that you want AWS WAF to inspect (for example, the header or the URI) and the value /// that you want AWS WAF to watch for. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the UpdateByteMatchSet service method. /// /// The response from the UpdateByteMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because there was nothing to do. For example: /// ///
  • /// /// You tried to remove a Rule from a WebACL, but the Rule /// isn't in the specified WebACL. /// ///
  • /// /// You tried to remove an IP address from an IPSet, but the IP address isn't /// in the specified IPSet. /// ///
  • /// /// You tried to remove a ByteMatchTuple from a ByteMatchSet, /// but the ByteMatchTuple isn't in the specified WebACL. /// ///
  • /// /// You tried to add a Rule to a WebACL, but the Rule /// already exists in the specified WebACL. /// ///
  • /// /// You tried to add a ByteMatchTuple to a ByteMatchSet, but /// the ByteMatchTuple already exists in the specified WebACL. /// ///
///
/// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to add an object to or delete an object from /// another object that doesn't exist. For example: /// ///
  • /// /// You tried to add a Rule to or delete a Rule from a WebACL /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchSet to or delete a ByteMatchSet /// from a Rule that doesn't exist. /// ///
  • /// /// You tried to add an IP address to or delete an IP address from an IPSet /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchTuple to or delete a ByteMatchTuple /// from a ByteMatchSet that doesn't exist. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for UpdateByteMatchSet Operation public virtual UpdateByteMatchSetResponse UpdateByteMatchSet(UpdateByteMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateByteMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateByteMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the UpdateByteMatchSet operation. /// /// /// Container for the necessary parameters to execute the UpdateByteMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateByteMatchSet /// operation. /// REST API Reference for UpdateByteMatchSet Operation public virtual IAsyncResult BeginUpdateByteMatchSet(UpdateByteMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateByteMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateByteMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the UpdateByteMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginUpdateByteMatchSet. /// /// Returns a UpdateByteMatchSetResult from WAF. /// REST API Reference for UpdateByteMatchSet Operation public virtual UpdateByteMatchSetResponse EndUpdateByteMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region UpdateGeoMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Inserts or deletes GeoMatchConstraint objects in an GeoMatchSet. /// For each GeoMatchConstraint object, you specify the following values: /// /// ///
  • /// /// Whether to insert or delete the object from the array. If you want to change an GeoMatchConstraint /// object, you delete the existing object and add a new one. /// ///
  • /// /// The Type. The only valid value for Type is Country. /// ///
  • /// /// The Value, which is a two character code for the country to add to the /// GeoMatchConstraint object. Valid codes are listed in GeoMatchConstraint$Value. /// ///
/// /// To create and configure an GeoMatchSet, perform the following steps: /// ///
  1. /// /// Submit a CreateGeoMatchSet request. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateGeoMatchSet request. /// ///
  3. /// /// Submit an UpdateGeoMatchSet request to specify the country that you want /// AWS WAF to watch for. /// ///
/// /// When you update an GeoMatchSet, you specify the country that you want /// to add and/or the country that you want to delete. If you want to change a country, /// you delete the existing country and add the new one. /// /// /// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the UpdateGeoMatchSet service method. /// /// The response from the UpdateGeoMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because there was nothing to do. For example: /// ///
  • /// /// You tried to remove a Rule from a WebACL, but the Rule /// isn't in the specified WebACL. /// ///
  • /// /// You tried to remove an IP address from an IPSet, but the IP address isn't /// in the specified IPSet. /// ///
  • /// /// You tried to remove a ByteMatchTuple from a ByteMatchSet, /// but the ByteMatchTuple isn't in the specified WebACL. /// ///
  • /// /// You tried to add a Rule to a WebACL, but the Rule /// already exists in the specified WebACL. /// ///
  • /// /// You tried to add a ByteMatchTuple to a ByteMatchSet, but /// the ByteMatchTuple already exists in the specified WebACL. /// ///
///
/// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to add an object to or delete an object from /// another object that doesn't exist. For example: /// ///
  • /// /// You tried to add a Rule to or delete a Rule from a WebACL /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchSet to or delete a ByteMatchSet /// from a Rule that doesn't exist. /// ///
  • /// /// You tried to add an IP address to or delete an IP address from an IPSet /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchTuple to or delete a ByteMatchTuple /// from a ByteMatchSet that doesn't exist. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for UpdateGeoMatchSet Operation public virtual UpdateGeoMatchSetResponse UpdateGeoMatchSet(UpdateGeoMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateGeoMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateGeoMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the UpdateGeoMatchSet operation. /// /// /// Container for the necessary parameters to execute the UpdateGeoMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateGeoMatchSet /// operation. /// REST API Reference for UpdateGeoMatchSet Operation public virtual IAsyncResult BeginUpdateGeoMatchSet(UpdateGeoMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateGeoMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateGeoMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the UpdateGeoMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginUpdateGeoMatchSet. /// /// Returns a UpdateGeoMatchSetResult from WAF. /// REST API Reference for UpdateGeoMatchSet Operation public virtual UpdateGeoMatchSetResponse EndUpdateGeoMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region UpdateIPSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Inserts or deletes IPSetDescriptor objects in an IPSet. For each /// IPSetDescriptor object, you specify the following values: /// ///
  • /// /// Whether to insert or delete the object from the array. If you want to change an IPSetDescriptor /// object, you delete the existing object and add a new one. /// ///
  • /// /// The IP address version, IPv4 or IPv6. /// ///
  • /// /// The IP address in CIDR notation, for example, 192.0.2.0/24 (for the range /// of IP addresses from 192.0.2.0 to 192.0.2.255) or 192.0.2.44/32 /// (for the individual IP address 192.0.2.44). /// ///
/// /// AWS WAF supports IPv4 address ranges: /8 and any range between /16 through /32. AWS /// WAF supports IPv6 address ranges: /24, /32, /48, /56, /64, and /128. For more information /// about CIDR notation, see the Wikipedia entry Classless /// Inter-Domain Routing. /// /// /// /// IPv6 addresses can be represented using any of the following formats: /// ///
  • /// /// 1111:0000:0000:0000:0000:0000:0000:0111/128 /// ///
  • /// /// 1111:0:0:0:0:0:0:0111/128 /// ///
  • /// /// 1111::0111/128 /// ///
  • /// /// 1111::111/128 /// ///
/// /// You use an IPSet to specify which web requests you want to allow or block /// based on the IP addresses that the requests originated from. For example, if you're /// receiving a lot of requests from one or a small number of IP addresses and you want /// to block the requests, you can create an IPSet that specifies those IP /// addresses, and then configure AWS WAF to block the requests. /// /// /// /// To create and configure an IPSet, perform the following steps: /// ///
  1. /// /// Submit a CreateIPSet request. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateIPSet request. /// ///
  3. /// /// Submit an UpdateIPSet request to specify the IP addresses that you want /// AWS WAF to watch for. /// ///
/// /// When you update an IPSet, you specify the IP addresses that you want /// to add and/or the IP addresses that you want to delete. If you want to change an IP /// address, you delete the existing IP address and add the new one. /// /// /// /// You can insert a maximum of 1000 addresses in a single request. /// /// /// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// The IPSetId of the IPSet that you want to update. IPSetId is returned by CreateIPSet and by ListIPSets. /// An array of IPSetUpdate objects that you want to insert into or delete from an IPSet. For more information, see the applicable data types: You can insert a maximum of 1000 addresses in a single request. /// The value returned by the most recent call to GetChangeToken. /// /// The response from the UpdateIPSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because there was nothing to do. For example: /// ///
  • /// /// You tried to remove a Rule from a WebACL, but the Rule /// isn't in the specified WebACL. /// ///
  • /// /// You tried to remove an IP address from an IPSet, but the IP address isn't /// in the specified IPSet. /// ///
  • /// /// You tried to remove a ByteMatchTuple from a ByteMatchSet, /// but the ByteMatchTuple isn't in the specified WebACL. /// ///
  • /// /// You tried to add a Rule to a WebACL, but the Rule /// already exists in the specified WebACL. /// ///
  • /// /// You tried to add a ByteMatchTuple to a ByteMatchSet, but /// the ByteMatchTuple already exists in the specified WebACL. /// ///
///
/// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to add an object to or delete an object from /// another object that doesn't exist. For example: /// ///
  • /// /// You tried to add a Rule to or delete a Rule from a WebACL /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchSet to or delete a ByteMatchSet /// from a Rule that doesn't exist. /// ///
  • /// /// You tried to add an IP address to or delete an IP address from an IPSet /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchTuple to or delete a ByteMatchTuple /// from a ByteMatchSet that doesn't exist. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for UpdateIPSet Operation public virtual UpdateIPSetResponse UpdateIPSet(string ipSetId, List updates, string changeToken) { var request = new UpdateIPSetRequest(); request.IPSetId = ipSetId; request.Updates = updates; request.ChangeToken = changeToken; return UpdateIPSet(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Inserts or deletes IPSetDescriptor objects in an IPSet. For each /// IPSetDescriptor object, you specify the following values: /// ///
  • /// /// Whether to insert or delete the object from the array. If you want to change an IPSetDescriptor /// object, you delete the existing object and add a new one. /// ///
  • /// /// The IP address version, IPv4 or IPv6. /// ///
  • /// /// The IP address in CIDR notation, for example, 192.0.2.0/24 (for the range /// of IP addresses from 192.0.2.0 to 192.0.2.255) or 192.0.2.44/32 /// (for the individual IP address 192.0.2.44). /// ///
/// /// AWS WAF supports IPv4 address ranges: /8 and any range between /16 through /32. AWS /// WAF supports IPv6 address ranges: /24, /32, /48, /56, /64, and /128. For more information /// about CIDR notation, see the Wikipedia entry Classless /// Inter-Domain Routing. /// /// /// /// IPv6 addresses can be represented using any of the following formats: /// ///
  • /// /// 1111:0000:0000:0000:0000:0000:0000:0111/128 /// ///
  • /// /// 1111:0:0:0:0:0:0:0111/128 /// ///
  • /// /// 1111::0111/128 /// ///
  • /// /// 1111::111/128 /// ///
/// /// You use an IPSet to specify which web requests you want to allow or block /// based on the IP addresses that the requests originated from. For example, if you're /// receiving a lot of requests from one or a small number of IP addresses and you want /// to block the requests, you can create an IPSet that specifies those IP /// addresses, and then configure AWS WAF to block the requests. /// /// /// /// To create and configure an IPSet, perform the following steps: /// ///
  1. /// /// Submit a CreateIPSet request. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateIPSet request. /// ///
  3. /// /// Submit an UpdateIPSet request to specify the IP addresses that you want /// AWS WAF to watch for. /// ///
/// /// When you update an IPSet, you specify the IP addresses that you want /// to add and/or the IP addresses that you want to delete. If you want to change an IP /// address, you delete the existing IP address and add the new one. /// /// /// /// You can insert a maximum of 1000 addresses in a single request. /// /// /// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the UpdateIPSet service method. /// /// The response from the UpdateIPSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because there was nothing to do. For example: /// ///
  • /// /// You tried to remove a Rule from a WebACL, but the Rule /// isn't in the specified WebACL. /// ///
  • /// /// You tried to remove an IP address from an IPSet, but the IP address isn't /// in the specified IPSet. /// ///
  • /// /// You tried to remove a ByteMatchTuple from a ByteMatchSet, /// but the ByteMatchTuple isn't in the specified WebACL. /// ///
  • /// /// You tried to add a Rule to a WebACL, but the Rule /// already exists in the specified WebACL. /// ///
  • /// /// You tried to add a ByteMatchTuple to a ByteMatchSet, but /// the ByteMatchTuple already exists in the specified WebACL. /// ///
///
/// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to add an object to or delete an object from /// another object that doesn't exist. For example: /// ///
  • /// /// You tried to add a Rule to or delete a Rule from a WebACL /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchSet to or delete a ByteMatchSet /// from a Rule that doesn't exist. /// ///
  • /// /// You tried to add an IP address to or delete an IP address from an IPSet /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchTuple to or delete a ByteMatchTuple /// from a ByteMatchSet that doesn't exist. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for UpdateIPSet Operation public virtual UpdateIPSetResponse UpdateIPSet(UpdateIPSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateIPSetRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateIPSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the UpdateIPSet operation. /// /// /// Container for the necessary parameters to execute the UpdateIPSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateIPSet /// operation. /// REST API Reference for UpdateIPSet Operation public virtual IAsyncResult BeginUpdateIPSet(UpdateIPSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateIPSetRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateIPSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the UpdateIPSet operation. /// /// /// The IAsyncResult returned by the call to BeginUpdateIPSet. /// /// Returns a UpdateIPSetResult from WAF. /// REST API Reference for UpdateIPSet Operation public virtual UpdateIPSetResponse EndUpdateIPSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region UpdateRateBasedRule /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Inserts or deletes Predicate objects in a rule and updates the RateLimit /// in the rule. /// /// /// /// Each Predicate object identifies a predicate, such as a ByteMatchSet /// or an IPSet, that specifies the web requests that you want to block or count. /// The RateLimit specifies the number of requests every five minutes that /// triggers the rule. /// /// /// /// If you add more than one predicate to a RateBasedRule, a request must /// match all the predicates and exceed the RateLimit to be counted or blocked. /// For example, suppose you add the following to a RateBasedRule: /// ///
  • /// /// An IPSet that matches the IP address 192.0.2.44/32 /// ///
  • /// /// A ByteMatchSet that matches BadBot in the User-Agent /// header /// ///
/// /// Further, you specify a RateLimit of 1,000. /// /// /// /// You then add the RateBasedRule to a WebACL and specify that /// you want to block requests that satisfy the rule. For a request to be blocked, it /// must come from the IP address 192.0.2.44 and the User-Agent header /// in the request must contain the value BadBot. Further, requests that /// match these two conditions much be received at a rate of more than 1,000 every five /// minutes. If the rate drops below this limit, AWS WAF no longer blocks the requests. /// /// /// /// As a second example, suppose you want to limit requests to a particular page on your /// site. To do this, you could add the following to a RateBasedRule: /// ///
  • /// /// A ByteMatchSet with FieldToMatch of URI /// ///
  • /// /// A PositionalConstraint of STARTS_WITH /// ///
  • /// /// A TargetString of login /// ///
/// /// Further, you specify a RateLimit of 1,000. /// /// /// /// By adding this RateBasedRule to a WebACL, you could limit /// requests to your login page without affecting the rest of your site. /// ///
/// Container for the necessary parameters to execute the UpdateRateBasedRule service method. /// /// The response from the UpdateRateBasedRule service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because there was nothing to do. For example: /// ///
  • /// /// You tried to remove a Rule from a WebACL, but the Rule /// isn't in the specified WebACL. /// ///
  • /// /// You tried to remove an IP address from an IPSet, but the IP address isn't /// in the specified IPSet. /// ///
  • /// /// You tried to remove a ByteMatchTuple from a ByteMatchSet, /// but the ByteMatchTuple isn't in the specified WebACL. /// ///
  • /// /// You tried to add a Rule to a WebACL, but the Rule /// already exists in the specified WebACL. /// ///
  • /// /// You tried to add a ByteMatchTuple to a ByteMatchSet, but /// the ByteMatchTuple already exists in the specified WebACL. /// ///
///
/// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to add an object to or delete an object from /// another object that doesn't exist. For example: /// ///
  • /// /// You tried to add a Rule to or delete a Rule from a WebACL /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchSet to or delete a ByteMatchSet /// from a Rule that doesn't exist. /// ///
  • /// /// You tried to add an IP address to or delete an IP address from an IPSet /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchTuple to or delete a ByteMatchTuple /// from a ByteMatchSet that doesn't exist. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for UpdateRateBasedRule Operation public virtual UpdateRateBasedRuleResponse UpdateRateBasedRule(UpdateRateBasedRuleRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateRateBasedRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateRateBasedRuleResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the UpdateRateBasedRule operation. /// /// /// Container for the necessary parameters to execute the UpdateRateBasedRule operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateRateBasedRule /// operation. /// REST API Reference for UpdateRateBasedRule Operation public virtual IAsyncResult BeginUpdateRateBasedRule(UpdateRateBasedRuleRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateRateBasedRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateRateBasedRuleResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the UpdateRateBasedRule operation. /// /// /// The IAsyncResult returned by the call to BeginUpdateRateBasedRule. /// /// Returns a UpdateRateBasedRuleResult from WAF. /// REST API Reference for UpdateRateBasedRule Operation public virtual UpdateRateBasedRuleResponse EndUpdateRateBasedRule(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region UpdateRegexMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Inserts or deletes RegexMatchTuple objects (filters) in a RegexMatchSet. /// For each RegexMatchSetUpdate object, you specify the following values: /// /// ///
  • /// /// Whether to insert or delete the object from the array. If you want to change a RegexMatchSetUpdate /// object, you delete the existing object and add a new one. /// ///
  • /// /// The part of a web request that you want AWS WAF to inspectupdate, such as a query /// string or the value of the User-Agent header. /// ///
  • /// /// The identifier of the pattern (a regular expression) that you want AWS WAF to look /// for. For more information, see RegexPatternSet. /// ///
  • /// /// Whether to perform any conversions on the request, such as converting it to lowercase, /// before inspecting it for the specified string. /// ///
/// /// For example, you can create a RegexPatternSet that matches any requests /// with User-Agent headers that contain the string B[a@]dB[o0]t. /// You can then configure AWS WAF to reject those requests. /// /// /// /// To create and configure a RegexMatchSet, perform the following steps: /// ///
  1. /// /// Create a RegexMatchSet. For more information, see CreateRegexMatchSet. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateRegexMatchSet request. /// ///
  3. /// /// Submit an UpdateRegexMatchSet request to specify the part of the request /// that you want AWS WAF to inspect (for example, the header or the URI) and the identifier /// of the RegexPatternSet that contain the regular expression patters you /// want AWS WAF to watch for. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the UpdateRegexMatchSet service method. /// /// The response from the UpdateRegexMatchSet service method, as returned by WAF. /// /// The name specified is invalid. /// /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because there was nothing to do. For example: /// ///
  • /// /// You tried to remove a Rule from a WebACL, but the Rule /// isn't in the specified WebACL. /// ///
  • /// /// You tried to remove an IP address from an IPSet, but the IP address isn't /// in the specified IPSet. /// ///
  • /// /// You tried to remove a ByteMatchTuple from a ByteMatchSet, /// but the ByteMatchTuple isn't in the specified WebACL. /// ///
  • /// /// You tried to add a Rule to a WebACL, but the Rule /// already exists in the specified WebACL. /// ///
  • /// /// You tried to add a ByteMatchTuple to a ByteMatchSet, but /// the ByteMatchTuple already exists in the specified WebACL. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to add an object to or delete an object from /// another object that doesn't exist. For example: /// ///
  • /// /// You tried to add a Rule to or delete a Rule from a WebACL /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchSet to or delete a ByteMatchSet /// from a Rule that doesn't exist. /// ///
  • /// /// You tried to add an IP address to or delete an IP address from an IPSet /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchTuple to or delete a ByteMatchTuple /// from a ByteMatchSet that doesn't exist. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for UpdateRegexMatchSet Operation public virtual UpdateRegexMatchSetResponse UpdateRegexMatchSet(UpdateRegexMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateRegexMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateRegexMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the UpdateRegexMatchSet operation. /// /// /// Container for the necessary parameters to execute the UpdateRegexMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateRegexMatchSet /// operation. /// REST API Reference for UpdateRegexMatchSet Operation public virtual IAsyncResult BeginUpdateRegexMatchSet(UpdateRegexMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateRegexMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateRegexMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the UpdateRegexMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginUpdateRegexMatchSet. /// /// Returns a UpdateRegexMatchSetResult from WAF. /// REST API Reference for UpdateRegexMatchSet Operation public virtual UpdateRegexMatchSetResponse EndUpdateRegexMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region UpdateRegexPatternSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Inserts or deletes RegexPatternString objects in a RegexPatternSet. /// For each RegexPatternString object, you specify the following values: /// /// ///
  • /// /// Whether to insert or delete the RegexPatternString. /// ///
  • /// /// The regular expression pattern that you want to insert or delete. For more information, /// see RegexPatternSet. /// ///
/// /// For example, you can create a RegexPatternString such as B[a@]dB[o0]t. /// AWS WAF will match this RegexPatternString to: /// ///
  • /// /// BadBot /// ///
  • /// /// BadB0t /// ///
  • /// /// B@dBot /// ///
  • /// /// B@dB0t /// ///
/// /// To create and configure a RegexPatternSet, perform the following steps: /// ///
  1. /// /// Create a RegexPatternSet. For more information, see CreateRegexPatternSet. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateRegexPatternSet request. /// ///
  3. /// /// Submit an UpdateRegexPatternSet request to specify the regular expression /// pattern that you want AWS WAF to watch for. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the UpdateRegexPatternSet service method. /// /// The response from the UpdateRegexPatternSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because there was nothing to do. For example: /// ///
  • /// /// You tried to remove a Rule from a WebACL, but the Rule /// isn't in the specified WebACL. /// ///
  • /// /// You tried to remove an IP address from an IPSet, but the IP address isn't /// in the specified IPSet. /// ///
  • /// /// You tried to remove a ByteMatchTuple from a ByteMatchSet, /// but the ByteMatchTuple isn't in the specified WebACL. /// ///
  • /// /// You tried to add a Rule to a WebACL, but the Rule /// already exists in the specified WebACL. /// ///
  • /// /// You tried to add a ByteMatchTuple to a ByteMatchSet, but /// the ByteMatchTuple already exists in the specified WebACL. /// ///
///
/// /// The regular expression (regex) you specified in RegexPatternString is /// invalid. /// /// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to add an object to or delete an object from /// another object that doesn't exist. For example: /// ///
  • /// /// You tried to add a Rule to or delete a Rule from a WebACL /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchSet to or delete a ByteMatchSet /// from a Rule that doesn't exist. /// ///
  • /// /// You tried to add an IP address to or delete an IP address from an IPSet /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchTuple to or delete a ByteMatchTuple /// from a ByteMatchSet that doesn't exist. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for UpdateRegexPatternSet Operation public virtual UpdateRegexPatternSetResponse UpdateRegexPatternSet(UpdateRegexPatternSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateRegexPatternSetRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateRegexPatternSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the UpdateRegexPatternSet operation. /// /// /// Container for the necessary parameters to execute the UpdateRegexPatternSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateRegexPatternSet /// operation. /// REST API Reference for UpdateRegexPatternSet Operation public virtual IAsyncResult BeginUpdateRegexPatternSet(UpdateRegexPatternSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateRegexPatternSetRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateRegexPatternSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the UpdateRegexPatternSet operation. /// /// /// The IAsyncResult returned by the call to BeginUpdateRegexPatternSet. /// /// Returns a UpdateRegexPatternSetResult from WAF. /// REST API Reference for UpdateRegexPatternSet Operation public virtual UpdateRegexPatternSetResponse EndUpdateRegexPatternSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region UpdateRule /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Inserts or deletes Predicate objects in a Rule. Each Predicate /// object identifies a predicate, such as a ByteMatchSet or an IPSet, that /// specifies the web requests that you want to allow, block, or count. If you add more /// than one predicate to a Rule, a request must match all of the specifications /// to be allowed, blocked, or counted. For example, suppose that you add the following /// to a Rule: /// ///
  • /// /// A ByteMatchSet that matches the value BadBot in the User-Agent /// header /// ///
  • /// /// An IPSet that matches the IP address 192.0.2.44 /// ///
/// /// You then add the Rule to a WebACL and specify that you want /// to block requests that satisfy the Rule. For a request to be blocked, /// the User-Agent header in the request must contain the value BadBot /// and the request must originate from the IP address 192.0.2.44. /// /// /// /// To create and configure a Rule, perform the following steps: /// ///
  1. /// /// Create and update the predicates that you want to include in the Rule. /// ///
  2. /// /// Create the Rule. See CreateRule. /// ///
  3. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateRule request. /// ///
  4. /// /// Submit an UpdateRule request to add predicates to the Rule. /// ///
  5. /// /// Create and update a WebACL that contains the Rule. See CreateWebACL. /// ///
/// /// If you want to replace one ByteMatchSet or IPSet with another, /// you delete the existing one and add the new one. /// /// /// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// The RuleId of the Rule that you want to update. RuleId is returned by CreateRule and by ListRules. /// An array of RuleUpdate objects that you want to insert into or delete from a Rule. For more information, see the applicable data types: /// The value returned by the most recent call to GetChangeToken. /// /// The response from the UpdateRule service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because there was nothing to do. For example: /// ///
  • /// /// You tried to remove a Rule from a WebACL, but the Rule /// isn't in the specified WebACL. /// ///
  • /// /// You tried to remove an IP address from an IPSet, but the IP address isn't /// in the specified IPSet. /// ///
  • /// /// You tried to remove a ByteMatchTuple from a ByteMatchSet, /// but the ByteMatchTuple isn't in the specified WebACL. /// ///
  • /// /// You tried to add a Rule to a WebACL, but the Rule /// already exists in the specified WebACL. /// ///
  • /// /// You tried to add a ByteMatchTuple to a ByteMatchSet, but /// the ByteMatchTuple already exists in the specified WebACL. /// ///
///
/// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to add an object to or delete an object from /// another object that doesn't exist. For example: /// ///
  • /// /// You tried to add a Rule to or delete a Rule from a WebACL /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchSet to or delete a ByteMatchSet /// from a Rule that doesn't exist. /// ///
  • /// /// You tried to add an IP address to or delete an IP address from an IPSet /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchTuple to or delete a ByteMatchTuple /// from a ByteMatchSet that doesn't exist. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for UpdateRule Operation public virtual UpdateRuleResponse UpdateRule(string ruleId, List updates, string changeToken) { var request = new UpdateRuleRequest(); request.RuleId = ruleId; request.Updates = updates; request.ChangeToken = changeToken; return UpdateRule(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Inserts or deletes Predicate objects in a Rule. Each Predicate /// object identifies a predicate, such as a ByteMatchSet or an IPSet, that /// specifies the web requests that you want to allow, block, or count. If you add more /// than one predicate to a Rule, a request must match all of the specifications /// to be allowed, blocked, or counted. For example, suppose that you add the following /// to a Rule: /// ///
  • /// /// A ByteMatchSet that matches the value BadBot in the User-Agent /// header /// ///
  • /// /// An IPSet that matches the IP address 192.0.2.44 /// ///
/// /// You then add the Rule to a WebACL and specify that you want /// to block requests that satisfy the Rule. For a request to be blocked, /// the User-Agent header in the request must contain the value BadBot /// and the request must originate from the IP address 192.0.2.44. /// /// /// /// To create and configure a Rule, perform the following steps: /// ///
  1. /// /// Create and update the predicates that you want to include in the Rule. /// ///
  2. /// /// Create the Rule. See CreateRule. /// ///
  3. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateRule request. /// ///
  4. /// /// Submit an UpdateRule request to add predicates to the Rule. /// ///
  5. /// /// Create and update a WebACL that contains the Rule. See CreateWebACL. /// ///
/// /// If you want to replace one ByteMatchSet or IPSet with another, /// you delete the existing one and add the new one. /// /// /// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the UpdateRule service method. /// /// The response from the UpdateRule service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because there was nothing to do. For example: /// ///
  • /// /// You tried to remove a Rule from a WebACL, but the Rule /// isn't in the specified WebACL. /// ///
  • /// /// You tried to remove an IP address from an IPSet, but the IP address isn't /// in the specified IPSet. /// ///
  • /// /// You tried to remove a ByteMatchTuple from a ByteMatchSet, /// but the ByteMatchTuple isn't in the specified WebACL. /// ///
  • /// /// You tried to add a Rule to a WebACL, but the Rule /// already exists in the specified WebACL. /// ///
  • /// /// You tried to add a ByteMatchTuple to a ByteMatchSet, but /// the ByteMatchTuple already exists in the specified WebACL. /// ///
///
/// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to add an object to or delete an object from /// another object that doesn't exist. For example: /// ///
  • /// /// You tried to add a Rule to or delete a Rule from a WebACL /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchSet to or delete a ByteMatchSet /// from a Rule that doesn't exist. /// ///
  • /// /// You tried to add an IP address to or delete an IP address from an IPSet /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchTuple to or delete a ByteMatchTuple /// from a ByteMatchSet that doesn't exist. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for UpdateRule Operation public virtual UpdateRuleResponse UpdateRule(UpdateRuleRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateRuleResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the UpdateRule operation. /// /// /// Container for the necessary parameters to execute the UpdateRule operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateRule /// operation. /// REST API Reference for UpdateRule Operation public virtual IAsyncResult BeginUpdateRule(UpdateRuleRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateRuleRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateRuleResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the UpdateRule operation. /// /// /// The IAsyncResult returned by the call to BeginUpdateRule. /// /// Returns a UpdateRuleResult from WAF. /// REST API Reference for UpdateRule Operation public virtual UpdateRuleResponse EndUpdateRule(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region UpdateRuleGroup /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Inserts or deletes ActivatedRule objects in a RuleGroup. /// /// /// /// You can only insert REGULAR rules into a rule group. /// /// /// /// You can have a maximum of ten rules per rule group. /// /// /// /// To create and configure a RuleGroup, perform the following steps: /// ///
  1. /// /// Create and update the Rules that you want to include in the RuleGroup. /// See CreateRule. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateRuleGroup request. /// ///
  3. /// /// Submit an UpdateRuleGroup request to add Rules to the RuleGroup. /// ///
  4. /// /// Create and update a WebACL that contains the RuleGroup. /// See CreateWebACL. /// ///
/// /// If you want to replace one Rule with another, you delete the existing /// one and add the new one. /// /// /// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the UpdateRuleGroup service method. /// /// The response from the UpdateRuleGroup service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because there was nothing to do. For example: /// ///
  • /// /// You tried to remove a Rule from a WebACL, but the Rule /// isn't in the specified WebACL. /// ///
  • /// /// You tried to remove an IP address from an IPSet, but the IP address isn't /// in the specified IPSet. /// ///
  • /// /// You tried to remove a ByteMatchTuple from a ByteMatchSet, /// but the ByteMatchTuple isn't in the specified WebACL. /// ///
  • /// /// You tried to add a Rule to a WebACL, but the Rule /// already exists in the specified WebACL. /// ///
  • /// /// You tried to add a ByteMatchTuple to a ByteMatchSet, but /// the ByteMatchTuple already exists in the specified WebACL. /// ///
///
/// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to add an object to or delete an object from /// another object that doesn't exist. For example: /// ///
  • /// /// You tried to add a Rule to or delete a Rule from a WebACL /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchSet to or delete a ByteMatchSet /// from a Rule that doesn't exist. /// ///
  • /// /// You tried to add an IP address to or delete an IP address from an IPSet /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchTuple to or delete a ByteMatchTuple /// from a ByteMatchSet that doesn't exist. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for UpdateRuleGroup Operation public virtual UpdateRuleGroupResponse UpdateRuleGroup(UpdateRuleGroupRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateRuleGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateRuleGroupResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the UpdateRuleGroup operation. /// /// /// Container for the necessary parameters to execute the UpdateRuleGroup operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateRuleGroup /// operation. /// REST API Reference for UpdateRuleGroup Operation public virtual IAsyncResult BeginUpdateRuleGroup(UpdateRuleGroupRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateRuleGroupRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateRuleGroupResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the UpdateRuleGroup operation. /// /// /// The IAsyncResult returned by the call to BeginUpdateRuleGroup. /// /// Returns a UpdateRuleGroupResult from WAF. /// REST API Reference for UpdateRuleGroup Operation public virtual UpdateRuleGroupResponse EndUpdateRuleGroup(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region UpdateSizeConstraintSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Inserts or deletes SizeConstraint objects (filters) in a SizeConstraintSet. /// For each SizeConstraint object, you specify the following values: /// ///
  • /// /// Whether to insert or delete the object from the array. If you want to change a SizeConstraintSetUpdate /// object, you delete the existing object and add a new one. /// ///
  • /// /// The part of a web request that you want AWS WAF to evaluate, such as the length of /// a query string or the length of the User-Agent header. /// ///
  • /// /// Whether to perform any transformations on the request, such as converting it to lowercase, /// before checking its length. Note that transformations of the request body are not /// supported because the AWS resource forwards only the first 8192 bytes /// of your request to AWS WAF. /// /// /// /// You can only specify a single type of TextTransformation. /// ///
  • /// /// A ComparisonOperator used for evaluating the selected part of the request /// against the specified Size, such as equals, greater than, less than, /// and so on. /// ///
  • /// /// The length, in bytes, that you want AWS WAF to watch for in selected part of the request. /// The length is computed after applying the transformation. /// ///
/// /// For example, you can add a SizeConstraintSetUpdate object that matches /// web requests in which the length of the User-Agent header is greater /// than 100 bytes. You can then configure AWS WAF to block those requests. /// /// /// /// To create and configure a SizeConstraintSet, perform the following steps: /// ///
  1. /// /// Create a SizeConstraintSet. For more information, see CreateSizeConstraintSet. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateSizeConstraintSet request. /// ///
  3. /// /// Submit an UpdateSizeConstraintSet request to specify the part of the /// request that you want AWS WAF to inspect (for example, the header or the URI) and /// the value that you want AWS WAF to watch for. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the UpdateSizeConstraintSet service method. /// /// The response from the UpdateSizeConstraintSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because there was nothing to do. For example: /// ///
  • /// /// You tried to remove a Rule from a WebACL, but the Rule /// isn't in the specified WebACL. /// ///
  • /// /// You tried to remove an IP address from an IPSet, but the IP address isn't /// in the specified IPSet. /// ///
  • /// /// You tried to remove a ByteMatchTuple from a ByteMatchSet, /// but the ByteMatchTuple isn't in the specified WebACL. /// ///
  • /// /// You tried to add a Rule to a WebACL, but the Rule /// already exists in the specified WebACL. /// ///
  • /// /// You tried to add a ByteMatchTuple to a ByteMatchSet, but /// the ByteMatchTuple already exists in the specified WebACL. /// ///
///
/// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to add an object to or delete an object from /// another object that doesn't exist. For example: /// ///
  • /// /// You tried to add a Rule to or delete a Rule from a WebACL /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchSet to or delete a ByteMatchSet /// from a Rule that doesn't exist. /// ///
  • /// /// You tried to add an IP address to or delete an IP address from an IPSet /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchTuple to or delete a ByteMatchTuple /// from a ByteMatchSet that doesn't exist. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for UpdateSizeConstraintSet Operation public virtual UpdateSizeConstraintSetResponse UpdateSizeConstraintSet(UpdateSizeConstraintSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateSizeConstraintSetRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateSizeConstraintSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the UpdateSizeConstraintSet operation. /// /// /// Container for the necessary parameters to execute the UpdateSizeConstraintSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateSizeConstraintSet /// operation. /// REST API Reference for UpdateSizeConstraintSet Operation public virtual IAsyncResult BeginUpdateSizeConstraintSet(UpdateSizeConstraintSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateSizeConstraintSetRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateSizeConstraintSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the UpdateSizeConstraintSet operation. /// /// /// The IAsyncResult returned by the call to BeginUpdateSizeConstraintSet. /// /// Returns a UpdateSizeConstraintSetResult from WAF. /// REST API Reference for UpdateSizeConstraintSet Operation public virtual UpdateSizeConstraintSetResponse EndUpdateSizeConstraintSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region UpdateSqlInjectionMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Inserts or deletes SqlInjectionMatchTuple objects (filters) in a SqlInjectionMatchSet. /// For each SqlInjectionMatchTuple object, you specify the following values: /// ///
  • /// /// Action: Whether to insert the object into or delete the object from /// the array. To change a SqlInjectionMatchTuple, you delete the existing /// object and add a new one. /// ///
  • /// /// FieldToMatch: The part of web requests that you want AWS WAF to inspect /// and, if you want AWS WAF to inspect a header or custom query parameter, the name of /// the header or parameter. /// ///
  • /// /// TextTransformation: Which text transformation, if any, to perform on /// the web request before inspecting the request for snippets of malicious SQL code. /// /// /// /// You can only specify a single type of TextTransformation. /// ///
/// /// You use SqlInjectionMatchSet objects to specify which CloudFront requests /// that you want to allow, block, or count. For example, if you're receiving requests /// that contain snippets of SQL code in the query string and you want to block the requests, /// you can create a SqlInjectionMatchSet with the applicable settings, and /// then configure AWS WAF to block the requests. /// /// /// /// To create and configure a SqlInjectionMatchSet, perform the following /// steps: /// ///
  1. /// /// Submit a CreateSqlInjectionMatchSet request. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateIPSet request. /// ///
  3. /// /// Submit an UpdateSqlInjectionMatchSet request to specify the parts of /// web requests that you want AWS WAF to inspect for snippets of SQL code. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// The SqlInjectionMatchSetId of the SqlInjectionMatchSet that you want to update. SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets. /// An array of SqlInjectionMatchSetUpdate objects that you want to insert into or delete from a SqlInjectionMatchSet. For more information, see the applicable data types: /// The value returned by the most recent call to GetChangeToken. /// /// The response from the UpdateSqlInjectionMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because there was nothing to do. For example: /// ///
  • /// /// You tried to remove a Rule from a WebACL, but the Rule /// isn't in the specified WebACL. /// ///
  • /// /// You tried to remove an IP address from an IPSet, but the IP address isn't /// in the specified IPSet. /// ///
  • /// /// You tried to remove a ByteMatchTuple from a ByteMatchSet, /// but the ByteMatchTuple isn't in the specified WebACL. /// ///
  • /// /// You tried to add a Rule to a WebACL, but the Rule /// already exists in the specified WebACL. /// ///
  • /// /// You tried to add a ByteMatchTuple to a ByteMatchSet, but /// the ByteMatchTuple already exists in the specified WebACL. /// ///
///
/// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to add an object to or delete an object from /// another object that doesn't exist. For example: /// ///
  • /// /// You tried to add a Rule to or delete a Rule from a WebACL /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchSet to or delete a ByteMatchSet /// from a Rule that doesn't exist. /// ///
  • /// /// You tried to add an IP address to or delete an IP address from an IPSet /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchTuple to or delete a ByteMatchTuple /// from a ByteMatchSet that doesn't exist. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for UpdateSqlInjectionMatchSet Operation public virtual UpdateSqlInjectionMatchSetResponse UpdateSqlInjectionMatchSet(string sqlInjectionMatchSetId, List updates, string changeToken) { var request = new UpdateSqlInjectionMatchSetRequest(); request.SqlInjectionMatchSetId = sqlInjectionMatchSetId; request.Updates = updates; request.ChangeToken = changeToken; return UpdateSqlInjectionMatchSet(request); } /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Inserts or deletes SqlInjectionMatchTuple objects (filters) in a SqlInjectionMatchSet. /// For each SqlInjectionMatchTuple object, you specify the following values: /// ///
  • /// /// Action: Whether to insert the object into or delete the object from /// the array. To change a SqlInjectionMatchTuple, you delete the existing /// object and add a new one. /// ///
  • /// /// FieldToMatch: The part of web requests that you want AWS WAF to inspect /// and, if you want AWS WAF to inspect a header or custom query parameter, the name of /// the header or parameter. /// ///
  • /// /// TextTransformation: Which text transformation, if any, to perform on /// the web request before inspecting the request for snippets of malicious SQL code. /// /// /// /// You can only specify a single type of TextTransformation. /// ///
/// /// You use SqlInjectionMatchSet objects to specify which CloudFront requests /// that you want to allow, block, or count. For example, if you're receiving requests /// that contain snippets of SQL code in the query string and you want to block the requests, /// you can create a SqlInjectionMatchSet with the applicable settings, and /// then configure AWS WAF to block the requests. /// /// /// /// To create and configure a SqlInjectionMatchSet, perform the following /// steps: /// ///
  1. /// /// Submit a CreateSqlInjectionMatchSet request. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateIPSet request. /// ///
  3. /// /// Submit an UpdateSqlInjectionMatchSet request to specify the parts of /// web requests that you want AWS WAF to inspect for snippets of SQL code. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the UpdateSqlInjectionMatchSet service method. /// /// The response from the UpdateSqlInjectionMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because there was nothing to do. For example: /// ///
  • /// /// You tried to remove a Rule from a WebACL, but the Rule /// isn't in the specified WebACL. /// ///
  • /// /// You tried to remove an IP address from an IPSet, but the IP address isn't /// in the specified IPSet. /// ///
  • /// /// You tried to remove a ByteMatchTuple from a ByteMatchSet, /// but the ByteMatchTuple isn't in the specified WebACL. /// ///
  • /// /// You tried to add a Rule to a WebACL, but the Rule /// already exists in the specified WebACL. /// ///
  • /// /// You tried to add a ByteMatchTuple to a ByteMatchSet, but /// the ByteMatchTuple already exists in the specified WebACL. /// ///
///
/// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to add an object to or delete an object from /// another object that doesn't exist. For example: /// ///
  • /// /// You tried to add a Rule to or delete a Rule from a WebACL /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchSet to or delete a ByteMatchSet /// from a Rule that doesn't exist. /// ///
  • /// /// You tried to add an IP address to or delete an IP address from an IPSet /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchTuple to or delete a ByteMatchTuple /// from a ByteMatchSet that doesn't exist. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for UpdateSqlInjectionMatchSet Operation public virtual UpdateSqlInjectionMatchSetResponse UpdateSqlInjectionMatchSet(UpdateSqlInjectionMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateSqlInjectionMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateSqlInjectionMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the UpdateSqlInjectionMatchSet operation. /// /// /// Container for the necessary parameters to execute the UpdateSqlInjectionMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateSqlInjectionMatchSet /// operation. /// REST API Reference for UpdateSqlInjectionMatchSet Operation public virtual IAsyncResult BeginUpdateSqlInjectionMatchSet(UpdateSqlInjectionMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateSqlInjectionMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateSqlInjectionMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the UpdateSqlInjectionMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginUpdateSqlInjectionMatchSet. /// /// Returns a UpdateSqlInjectionMatchSetResult from WAF. /// REST API Reference for UpdateSqlInjectionMatchSet Operation public virtual UpdateSqlInjectionMatchSetResponse EndUpdateSqlInjectionMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region UpdateWebACL /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Inserts or deletes ActivatedRule objects in a WebACL. Each Rule /// identifies web requests that you want to allow, block, or count. When you update a /// WebACL, you specify the following values: /// ///
  • /// /// A default action for the WebACL, either ALLOW or BLOCK. /// AWS WAF performs the default action if a request doesn't match the criteria in any /// of the Rules in a WebACL. /// ///
  • /// /// The Rules that you want to add or delete. If you want to replace one /// Rule with another, you delete the existing Rule and add /// the new one. /// ///
  • /// /// For each Rule, whether you want AWS WAF to allow requests, block requests, /// or count requests that match the conditions in the Rule. /// ///
  • /// /// The order in which you want AWS WAF to evaluate the Rules in a WebACL. /// If you add more than one Rule to a WebACL, AWS WAF evaluates /// each request against the Rules in order based on the value of Priority. /// (The Rule that has the lowest value for Priority is evaluated /// first.) When a web request matches all the predicates (such as ByteMatchSets /// and IPSets) in a Rule, AWS WAF immediately takes the corresponding /// action, allow or block, and doesn't evaluate the request against the remaining Rules /// in the WebACL, if any. /// ///
/// /// To create and configure a WebACL, perform the following steps: /// ///
  1. /// /// Create and update the predicates that you want to include in Rules. For /// more information, see CreateByteMatchSet, UpdateByteMatchSet, CreateIPSet, /// UpdateIPSet, CreateSqlInjectionMatchSet, and UpdateSqlInjectionMatchSet. /// ///
  2. /// /// Create and update the Rules that you want to include in the WebACL. /// For more information, see CreateRule and UpdateRule. /// ///
  3. /// /// Create a WebACL. See CreateWebACL. /// ///
  4. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateWebACL request. /// ///
  5. /// /// Submit an UpdateWebACL request to specify the Rules that /// you want to include in the WebACL, to specify the default action, and /// to associate the WebACL with a CloudFront distribution. /// /// /// /// The ActivatedRule can be a rule group. If you specify a rule group as /// your ActivatedRule , you can exclude specific rules from that rule group. /// /// /// /// If you already have a rule group associated with a web ACL and want to submit an UpdateWebACL /// request to exclude certain rules from that rule group, you must first remove the rule /// group from the web ACL, the re-insert it again, specifying the excluded rules. For /// details, see ActivatedRule$ExcludedRules . /// ///
/// /// Be aware that if you try to add a RATE_BASED rule to a web ACL without setting the /// rule type when first creating the rule, the UpdateWebACL request will fail /// because the request tries to add a REGULAR rule (the default rule type) with the specified /// ID, which does not exist. /// /// /// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the UpdateWebACL service method. /// /// The response from the UpdateWebACL service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because there was nothing to do. For example: /// ///
  • /// /// You tried to remove a Rule from a WebACL, but the Rule /// isn't in the specified WebACL. /// ///
  • /// /// You tried to remove an IP address from an IPSet, but the IP address isn't /// in the specified IPSet. /// ///
  • /// /// You tried to remove a ByteMatchTuple from a ByteMatchSet, /// but the ByteMatchTuple isn't in the specified WebACL. /// ///
  • /// /// You tried to add a Rule to a WebACL, but the Rule /// already exists in the specified WebACL. /// ///
  • /// /// You tried to add a ByteMatchTuple to a ByteMatchSet, but /// the ByteMatchTuple already exists in the specified WebACL. /// ///
///
/// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to add an object to or delete an object from /// another object that doesn't exist. For example: /// ///
  • /// /// You tried to add a Rule to or delete a Rule from a WebACL /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchSet to or delete a ByteMatchSet /// from a Rule that doesn't exist. /// ///
  • /// /// You tried to add an IP address to or delete an IP address from an IPSet /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchTuple to or delete a ByteMatchTuple /// from a ByteMatchSet that doesn't exist. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to delete an object that is still in use. For /// example: /// ///
  • /// /// You tried to delete a ByteMatchSet that is still referenced by a Rule. /// ///
  • /// /// You tried to delete a Rule that is still referenced by a WebACL. /// ///
///
/// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// /// The specified subscription does not exist. /// /// REST API Reference for UpdateWebACL Operation public virtual UpdateWebACLResponse UpdateWebACL(UpdateWebACLRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateWebACLRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateWebACLResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the UpdateWebACL operation. /// /// /// Container for the necessary parameters to execute the UpdateWebACL operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateWebACL /// operation. /// REST API Reference for UpdateWebACL Operation public virtual IAsyncResult BeginUpdateWebACL(UpdateWebACLRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateWebACLRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateWebACLResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the UpdateWebACL operation. /// /// /// The IAsyncResult returned by the call to BeginUpdateWebACL. /// /// Returns a UpdateWebACLResult from WAF. /// REST API Reference for UpdateWebACL Operation public virtual UpdateWebACLResponse EndUpdateWebACL(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region UpdateXssMatchSet /// /// /// /// This is AWS WAF Classic documentation. For more information, see AWS /// WAF Classic in the developer guide. /// /// /// /// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS /// WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints /// for regional and global use. /// /// /// /// Inserts or deletes XssMatchTuple objects (filters) in an XssMatchSet. /// For each XssMatchTuple object, you specify the following values: /// ///
  • /// /// Action: Whether to insert the object into or delete the object from /// the array. To change an XssMatchTuple, you delete the existing object /// and add a new one. /// ///
  • /// /// FieldToMatch: The part of web requests that you want AWS WAF to inspect /// and, if you want AWS WAF to inspect a header or custom query parameter, the name of /// the header or parameter. /// ///
  • /// /// TextTransformation: Which text transformation, if any, to perform on /// the web request before inspecting the request for cross-site scripting attacks. /// /// /// /// You can only specify a single type of TextTransformation. /// ///
/// /// You use XssMatchSet objects to specify which CloudFront requests that /// you want to allow, block, or count. For example, if you're receiving requests that /// contain cross-site scripting attacks in the request body and you want to block the /// requests, you can create an XssMatchSet with the applicable settings, /// and then configure AWS WAF to block the requests. /// /// /// /// To create and configure an XssMatchSet, perform the following steps: /// ///
  1. /// /// Submit a CreateXssMatchSet request. /// ///
  2. /// /// Use GetChangeToken to get the change token that you provide in the ChangeToken /// parameter of an UpdateIPSet request. /// ///
  3. /// /// Submit an UpdateXssMatchSet request to specify the parts of web requests /// that you want AWS WAF to inspect for cross-site scripting attacks. /// ///
/// /// For more information about how to use the AWS WAF API to allow or block HTTP requests, /// see the AWS WAF Developer /// Guide. /// ///
/// Container for the necessary parameters to execute the UpdateXssMatchSet service method. /// /// The response from the UpdateXssMatchSet service method, as returned by WAF. /// /// The operation failed because of a system problem, even though the request was valid. /// Retry your request. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// an invalid account identifier. /// /// /// The operation failed because there was nothing to do. For example: /// ///
  • /// /// You tried to remove a Rule from a WebACL, but the Rule /// isn't in the specified WebACL. /// ///
  • /// /// You tried to remove an IP address from an IPSet, but the IP address isn't /// in the specified IPSet. /// ///
  • /// /// You tried to remove a ByteMatchTuple from a ByteMatchSet, /// but the ByteMatchTuple isn't in the specified WebACL. /// ///
  • /// /// You tried to add a Rule to a WebACL, but the Rule /// already exists in the specified WebACL. /// ///
  • /// /// You tried to add a ByteMatchTuple to a ByteMatchSet, but /// the ByteMatchTuple already exists in the specified WebACL. /// ///
///
/// /// The operation failed because AWS WAF didn't recognize a parameter in the request. /// For example: /// ///
  • /// /// You specified an invalid parameter name. /// ///
  • /// /// You specified an invalid value. /// ///
  • /// /// You tried to update an object (ByteMatchSet, IPSet, Rule, /// or WebACL) using an action other than INSERT or DELETE. /// ///
  • /// /// You tried to create a WebACL with a DefaultAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to create a RateBasedRule with a RateKey value /// other than IP. /// ///
  • /// /// You tried to update a WebACL with a WafAction Type /// other than ALLOW, BLOCK, or COUNT. /// ///
  • /// /// You tried to update a ByteMatchSet with a FieldToMatch Type /// other than HEADER, METHOD, QUERY_STRING, URI, or BODY. /// ///
  • /// /// You tried to update a ByteMatchSet with a Field of HEADER /// but no value for Data. /// ///
  • /// /// Your request references an ARN that is malformed, or corresponds to a resource with /// which a web ACL cannot be associated. /// ///
///
/// /// The operation exceeds a resource limit, for example, the maximum number of WebACL /// objects that you can create for an AWS account. For more information, see Limits /// in the AWS WAF Developer Guide. /// /// /// The operation failed because you tried to add an object to or delete an object from /// another object that doesn't exist. For example: /// ///
  • /// /// You tried to add a Rule to or delete a Rule from a WebACL /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchSet to or delete a ByteMatchSet /// from a Rule that doesn't exist. /// ///
  • /// /// You tried to add an IP address to or delete an IP address from an IPSet /// that doesn't exist. /// ///
  • /// /// You tried to add a ByteMatchTuple to or delete a ByteMatchTuple /// from a ByteMatchSet that doesn't exist. /// ///
///
/// /// The operation failed because the referenced object doesn't exist. /// /// /// The operation failed because you tried to create, update, or delete an object by using /// a change token that has already been used. /// /// REST API Reference for UpdateXssMatchSet Operation public virtual UpdateXssMatchSetResponse UpdateXssMatchSet(UpdateXssMatchSetRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateXssMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateXssMatchSetResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the UpdateXssMatchSet operation. /// /// /// Container for the necessary parameters to execute the UpdateXssMatchSet operation on AmazonWAFClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateXssMatchSet /// operation. /// REST API Reference for UpdateXssMatchSet Operation public virtual IAsyncResult BeginUpdateXssMatchSet(UpdateXssMatchSetRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateXssMatchSetRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateXssMatchSetResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the UpdateXssMatchSet operation. /// /// /// The IAsyncResult returned by the call to BeginUpdateXssMatchSet. /// /// Returns a UpdateXssMatchSetResult from WAF. /// REST API Reference for UpdateXssMatchSet Operation public virtual UpdateXssMatchSetResponse EndUpdateXssMatchSet(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion } }