/*
* 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:
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a CreateByteMatchSet
request.
///
/// -
///
/// Submit a
CreateByteMatchSet
request.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateByteMatchSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a CreateByteMatchSet
request.
///
/// -
///
/// Submit a
CreateByteMatchSet
request.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateByteMatchSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a CreateGeoMatchSet
request.
///
/// -
///
/// Submit a
CreateGeoMatchSet
request.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateGeoMatchSet request.
///
/// -
///
/// 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:
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a CreateIPSet
request.
///
/// -
///
/// Submit a
CreateIPSet
request.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateIPSet request.
///
/// -
///
/// 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:
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a CreateIPSet
request.
///
/// -
///
/// Submit a
CreateIPSet
request.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateIPSet request.
///
/// -
///
/// 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:
///
/// -
///
/// Create and update the predicates that you want to include in the rule. For more information,
/// see CreateByteMatchSet, CreateIPSet, and CreateSqlInjectionMatchSet.
///
///
-
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a CreateRule
request.
///
/// -
///
/// Submit a
CreateRateBasedRule
request.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateRule request.
///
/// -
///
/// Submit an
UpdateRateBasedRule
request to specify the predicates that
/// you want to include in the rule.
///
/// -
///
/// 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:
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a CreateRegexMatchSet
request.
///
/// -
///
/// Submit a
CreateRegexMatchSet
request.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateRegexMatchSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a CreateRegexPatternSet
request.
///
/// -
///
/// Submit a
CreateRegexPatternSet
request.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateRegexPatternSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Create and update the predicates that you want to include in the
Rule
.
/// For more information, see CreateByteMatchSet, CreateIPSet, and CreateSqlInjectionMatchSet.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a CreateRule
request.
///
/// -
///
/// Submit a
CreateRule
request.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateRule request.
///
/// -
///
/// Submit an
UpdateRule
request to specify the predicates that you want
/// to include in the Rule
.
///
/// -
///
/// 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:
///
/// -
///
/// Create and update the predicates that you want to include in the
Rule
.
/// For more information, see CreateByteMatchSet, CreateIPSet, and CreateSqlInjectionMatchSet.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a CreateRule
request.
///
/// -
///
/// Submit a
CreateRule
request.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateRule request.
///
/// -
///
/// Submit an
UpdateRule
request to specify the predicates that you want
/// to include in the Rule
.
///
/// -
///
/// 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:
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a CreateSizeConstraintSet
request.
///
/// -
///
/// Submit a
CreateSizeConstraintSet
request.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateSizeConstraintSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a CreateSqlInjectionMatchSet
request.
///
/// -
///
/// Submit a
CreateSqlInjectionMatchSet
request.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateSqlInjectionMatchSet request.
///
/// -
///
/// 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:
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a CreateSqlInjectionMatchSet
request.
///
/// -
///
/// Submit a
CreateSqlInjectionMatchSet
request.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateSqlInjectionMatchSet request.
///
/// -
///
/// 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:
///
/// -
///
/// 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.
///
/// -
///
/// Create and update the
Rules
that you want to include in the WebACL
.
/// For more information, see CreateRule and UpdateRule.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a CreateWebACL
request.
///
/// -
///
/// Submit a
CreateWebACL
request.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateWebACL request.
///
/// -
///
/// 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:
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a CreateXssMatchSet
request.
///
/// -
///
/// Submit a
CreateXssMatchSet
request.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateXssMatchSet request.
///
/// -
///
/// 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:
///
/// -
///
/// Update the
ByteMatchSet
to remove filters, if any. For more information,
/// see UpdateByteMatchSet.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a DeleteByteMatchSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Update the
ByteMatchSet
to remove filters, if any. For more information,
/// see UpdateByteMatchSet.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a DeleteByteMatchSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Update the
GeoMatchSet
to remove any countries. For more information,
/// see UpdateGeoMatchSet.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a DeleteGeoMatchSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Update the
IPSet
to remove IP address ranges, if any. For more information,
/// see UpdateIPSet.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a DeleteIPSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Update the
IPSet
to remove IP address ranges, if any. For more information,
/// see UpdateIPSet.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a DeleteIPSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Update the
RateBasedRule
to remove predicates, if any. For more information,
/// see UpdateRateBasedRule.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a DeleteRateBasedRule
request.
///
/// -
///
/// 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:
///
/// -
///
/// Update the
RegexMatchSet
to remove filters, if any. For more information,
/// see UpdateRegexMatchSet.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a DeleteRegexMatchSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Update the
Rule
to remove predicates, if any. For more information, see
/// UpdateRule.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a DeleteRule
request.
///
/// -
///
/// 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:
///
/// -
///
/// Update the
Rule
to remove predicates, if any. For more information, see
/// UpdateRule.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a DeleteRule
request.
///
/// -
///
/// 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:
///
/// -
///
/// Update the
RuleGroup
to remove rules, if any. For more information, see
/// UpdateRuleGroup.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a DeleteRuleGroup
request.
///
/// -
///
/// 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:
///
/// -
///
/// Update the
SizeConstraintSet
to remove filters, if any. For more information,
/// see UpdateSizeConstraintSet.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a DeleteSizeConstraintSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Update the
SqlInjectionMatchSet
to remove filters, if any. For more information,
/// see UpdateSqlInjectionMatchSet.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a DeleteSqlInjectionMatchSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Update the
SqlInjectionMatchSet
to remove filters, if any. For more information,
/// see UpdateSqlInjectionMatchSet.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a DeleteSqlInjectionMatchSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Update the
WebACL
to remove Rules
, if any. For more information,
/// see UpdateWebACL.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a DeleteWebACL
request.
///
/// -
///
/// 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:
///
/// -
///
/// Update the
WebACL
to remove Rules
, if any. For more information,
/// see UpdateWebACL.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a DeleteWebACL
request.
///
/// -
///
/// 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:
///
/// -
///
/// Update the
XssMatchSet
to remove filters, if any. For more information,
/// see UpdateXssMatchSet.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of a DeleteXssMatchSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// 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.
///
/// -
///
/// 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:
///
/// -
///
/// Create a
ByteMatchSet.
For more information, see CreateByteMatchSet.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of an UpdateByteMatchSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Create a
ByteMatchSet.
For more information, see CreateByteMatchSet.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of an UpdateByteMatchSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Submit a CreateGeoMatchSet request.
///
///
-
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of an UpdateGeoMatchSet request.
///
/// -
///
/// 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:
///
/// -
///
/// Submit a CreateIPSet request.
///
///
-
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of an UpdateIPSet request.
///
/// -
///
/// 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:
///
/// -
///
/// Submit a CreateIPSet request.
///
///
-
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of an UpdateIPSet request.
///
/// -
///
/// 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:
///
/// -
///
/// Create a
RegexMatchSet.
For more information, see CreateRegexMatchSet.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of an UpdateRegexMatchSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Create a
RegexPatternSet.
For more information, see CreateRegexPatternSet.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of an UpdateRegexPatternSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Create and update the predicates that you want to include in the
Rule
.
///
/// -
///
/// Create the
Rule
. See CreateRule.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateRule request.
///
/// -
///
/// Submit an
UpdateRule
request to add predicates to the Rule
.
///
/// -
///
/// 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:
///
/// -
///
/// Create and update the predicates that you want to include in the
Rule
.
///
/// -
///
/// Create the
Rule
. See CreateRule.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateRule request.
///
/// -
///
/// Submit an
UpdateRule
request to add predicates to the Rule
.
///
/// -
///
/// 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:
///
/// -
///
/// Create and update the
Rules
that you want to include in the RuleGroup
.
/// See CreateRule.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateRuleGroup request.
///
/// -
///
/// Submit an
UpdateRuleGroup
request to add Rules
to the RuleGroup
.
///
/// -
///
/// 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:
///
/// -
///
/// Create a
SizeConstraintSet.
For more information, see CreateSizeConstraintSet.
///
/// -
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of an UpdateSizeConstraintSet
request.
///
/// -
///
/// 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:
///
/// -
///
/// Submit a CreateSqlInjectionMatchSet request.
///
///
-
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of an UpdateIPSet request.
///
/// -
///
/// 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:
///
/// -
///
/// Submit a CreateSqlInjectionMatchSet request.
///
///
-
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of an UpdateIPSet request.
///
/// -
///
/// 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:
///
/// -
///
/// Create and update the predicates that you want to include in
Rules
. For
/// more information, see CreateByteMatchSet, UpdateByteMatchSet, CreateIPSet,
/// UpdateIPSet, CreateSqlInjectionMatchSet, and UpdateSqlInjectionMatchSet.
///
/// -
///
/// Create and update the
Rules
that you want to include in the WebACL
.
/// For more information, see CreateRule and UpdateRule.
///
/// -
///
/// Create a
WebACL
. See CreateWebACL.
///
/// -
///
/// Use
GetChangeToken
to get the change token that you provide in the ChangeToken
/// parameter of an UpdateWebACL request.
///
/// -
///
/// 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:
///
/// -
///
/// Submit a CreateXssMatchSet request.
///
///
-
///
/// Use GetChangeToken to get the change token that you provide in the
ChangeToken
/// parameter of an UpdateIPSet request.
///
/// -
///
/// 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
}
}