Copyright | (c) 2013-2021 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay <brendan.g.hay+amazonka@gmail.com> |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
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
orIPv6
. - The IP address in CIDR notation, for example,
192.0.2.0/24
(for the range of IP addresses from192.0.2.0
to192.0.2.255
) or192.0.2.44/32
(for the individual IP address192.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.
Synopsis
- data UpdateIPSet = UpdateIPSet' {
- iPSetId :: Text
- changeToken :: Text
- updates :: NonEmpty IPSetUpdate
- newUpdateIPSet :: Text -> Text -> NonEmpty IPSetUpdate -> UpdateIPSet
- updateIPSet_iPSetId :: Lens' UpdateIPSet Text
- updateIPSet_changeToken :: Lens' UpdateIPSet Text
- updateIPSet_updates :: Lens' UpdateIPSet (NonEmpty IPSetUpdate)
- data UpdateIPSetResponse = UpdateIPSetResponse' {
- changeToken :: Maybe Text
- httpStatus :: Int
- newUpdateIPSetResponse :: Int -> UpdateIPSetResponse
- updateIPSetResponse_changeToken :: Lens' UpdateIPSetResponse (Maybe Text)
- updateIPSetResponse_httpStatus :: Lens' UpdateIPSetResponse Int
Creating a Request
data UpdateIPSet Source #
See: newUpdateIPSet
smart constructor.
UpdateIPSet' | |
|
Instances
:: Text | |
-> Text | |
-> NonEmpty IPSetUpdate | |
-> UpdateIPSet |
Create a value of UpdateIPSet
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:iPSetId:UpdateIPSet'
, updateIPSet_iPSetId
- The IPSetId
of the IPSet that you want to update. IPSetId
is
returned by CreateIPSet and by ListIPSets.
$sel:changeToken:UpdateIPSet'
, updateIPSet_changeToken
- The value returned by the most recent call to GetChangeToken.
$sel:updates:UpdateIPSet'
, updateIPSet_updates
- An array of IPSetUpdate
objects that you want to insert into or delete
from an IPSet. For more information, see the applicable data types:
- IPSetUpdate: Contains
Action
andIPSetDescriptor
- IPSetDescriptor: Contains
Type
andValue
You can insert a maximum of 1000 addresses in a single request.
Request Lenses
updateIPSet_iPSetId :: Lens' UpdateIPSet Text Source #
The IPSetId
of the IPSet that you want to update. IPSetId
is
returned by CreateIPSet and by ListIPSets.
updateIPSet_changeToken :: Lens' UpdateIPSet Text Source #
The value returned by the most recent call to GetChangeToken.
updateIPSet_updates :: Lens' UpdateIPSet (NonEmpty IPSetUpdate) Source #
An array of IPSetUpdate
objects that you want to insert into or delete
from an IPSet. For more information, see the applicable data types:
- IPSetUpdate: Contains
Action
andIPSetDescriptor
- IPSetDescriptor: Contains
Type
andValue
You can insert a maximum of 1000 addresses in a single request.
Destructuring the Response
data UpdateIPSetResponse Source #
See: newUpdateIPSetResponse
smart constructor.
UpdateIPSetResponse' | |
|
Instances
newUpdateIPSetResponse Source #
Create a value of UpdateIPSetResponse
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:changeToken:UpdateIPSet'
, updateIPSetResponse_changeToken
- The ChangeToken
that you used to submit the UpdateIPSet
request. You
can also use this value to query the status of the request. For more
information, see GetChangeTokenStatus.
$sel:httpStatus:UpdateIPSetResponse'
, updateIPSetResponse_httpStatus
- The response's http status code.
Response Lenses
updateIPSetResponse_changeToken :: Lens' UpdateIPSetResponse (Maybe Text) Source #
The ChangeToken
that you used to submit the UpdateIPSet
request. You
can also use this value to query the status of the request. For more
information, see GetChangeTokenStatus.
updateIPSetResponse_httpStatus :: Lens' UpdateIPSetResponse Int Source #
The response's http status code.