WAFV2 / Client / create_ip_set
create_ip_set#
- WAFV2.Client.create_ip_set(**kwargs)#
Creates an IPSet, which you use to identify web requests that originate from specific IP addresses or ranges of IP addresses. For example, if you’re receiving a lot of requests from a ranges of IP addresses, you can configure WAF to block them using an IPSet that lists those IP addresses.
See also: AWS API Documentation
Request Syntax
response = client.create_ip_set( Name='string', Scope='CLOUDFRONT'|'REGIONAL', Description='string', IPAddressVersion='IPV4'|'IPV6', Addresses=[ 'string', ], Tags=[ { 'Key': 'string', 'Value': 'string' }, ] )
- Parameters:
Name (string) –
[REQUIRED]
The name of the IP set. You cannot change the name of an
IPSet
after you create it.Scope (string) –
[REQUIRED]
Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an Amazon Cognito user pool, or an App Runner service.
To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows:
CLI - Specify the Region when you use the CloudFront scope:
--scope=CLOUDFRONT --region=us-east-1
.API and SDKs - For all calls, use the Region endpoint us-east-1.
Description (string) – A description of the IP set that helps with identification.
IPAddressVersion (string) –
[REQUIRED]
The version of the IP addresses, either
IPV4
orIPV6
.Addresses (list) –
[REQUIRED]
Contains an array of strings that specifies zero or more IP addresses or blocks of IP addresses. All addresses must be specified using Classless Inter-Domain Routing (CIDR) notation. WAF supports all IPv4 and IPv6 CIDR ranges except for
/0
.Example address strings:
To configure WAF to allow, block, or count requests that originated from the IP address 192.0.2.44, specify
192.0.2.44/32
.To configure WAF to allow, block, or count requests that originated from IP addresses from 192.0.2.0 to 192.0.2.255, specify
192.0.2.0/24
.To configure WAF to allow, block, or count requests that originated from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify
1111:0000:0000:0000:0000:0000:0000:0111/128
.To configure WAF to allow, block, or count requests that originated from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff, specify
1111:0000:0000:0000:0000:0000:0000:0000/64
.
For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.
Example JSON
Addresses
specifications:Empty array:
"Addresses": []
Array with one address:
"Addresses": ["192.0.2.44/32"]
Array with three addresses:
"Addresses": ["192.0.2.44/32", "192.0.2.0/24", "192.0.0.0/16"]
INVALID specification:
"Addresses": [""]
INVALID
(string) –
Tags (list) –
An array of key:value pairs to associate with the resource.
(dict) –
A tag associated with an Amazon Web Services resource. Tags are key:value pairs that you can use to categorize and manage your resources, for purposes like billing or other management. Typically, the tag key represents a category, such as “environment”, and the tag value represents a specific value within that category, such as “test,” “development,” or “production”. Or 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 Amazon Web Services resource, up to 50 tags for a resource.
You can tag the Amazon Web Services resources that you manage through WAF: web ACLs, rule groups, IP sets, and regex pattern sets. You can’t manage or view tags through the WAF console.
Key (string) – [REQUIRED]
Part of the key:value pair that defines a tag. You can use a tag key to describe a category of information, such as “customer.” Tag keys are case-sensitive.
Value (string) – [REQUIRED]
Part of the key:value pair that defines a tag. You can use a tag value to describe a specific value within a category, such as “companyA” or “companyB.” Tag values are case-sensitive.
- Return type:
dict
- Returns:
Response Syntax
{ 'Summary': { 'Name': 'string', 'Id': 'string', 'Description': 'string', 'LockToken': 'string', 'ARN': 'string' } }
Response Structure
(dict) –
Summary (dict) –
High-level information about an IPSet, returned by operations like create and list. This provides information like the ID, that you can use to retrieve and manage an
IPSet
, and the ARN, that you provide to the IPSetReferenceStatement to use the address set in a Rule.Name (string) –
The name of the IP set. You cannot change the name of an
IPSet
after you create it.Id (string) –
A unique identifier for the set. This ID is returned in the responses to create and list commands. You provide it to operations like update and delete.
Description (string) –
A description of the IP set that helps with identification.
LockToken (string) –
A token used for optimistic locking. WAF returns a token to your
get
andlist
requests, to mark the state of the entity at the time of the request. To make changes to the entity associated with the token, you provide the token to operations likeupdate
anddelete
. WAF uses the token to ensure that no changes have been made to the entity since you last retrieved it. If a change has been made, the update fails with aWAFOptimisticLockException
. If this happens, perform anotherget
, and use the new token returned by that operation.ARN (string) –
The Amazon Resource Name (ARN) of the entity.
Exceptions
WAFV2.Client.exceptions.WAFInternalErrorException
WAFV2.Client.exceptions.WAFInvalidParameterException
WAFV2.Client.exceptions.WAFDuplicateItemException
WAFV2.Client.exceptions.WAFOptimisticLockException
WAFV2.Client.exceptions.WAFLimitsExceededException
WAFV2.Client.exceptions.WAFTagOperationException
WAFV2.Client.exceptions.WAFTagOperationInternalErrorException
WAFV2.Client.exceptions.WAFInvalidOperationException