IPSet ​
The IPSet resource lets you manage AWS WAFv2 IPSets for controlling access to your applications based on IP addresses.
Minimal Example ​
Create a basic IPSet with required properties and a description.
ts
import AWS from "alchemy/aws/control";
const basicIpSet = await AWS.WAFv2.IPSet("basicIpSet", {
Addresses: ["192.0.2.0/24", "203.0.113.0/24"],
Description: "Basic IP Set for allowing specific IP ranges.",
Scope: "REGIONAL", // or "CLOUDFRONT"
IPAddressVersion: "IPV4",
Tags: [
{ Key: "Environment", Value: "Development" }
]
});
Advanced Configuration ​
Configure an IPSet with tags for better organization and a custom name.
ts
const advancedIpSet = await AWS.WAFv2.IPSet("advancedIpSet", {
Addresses: ["198.51.100.0/24"],
Description: "Advanced IP Set for production access control.",
Scope: "REGIONAL",
IPAddressVersion: "IPV4",
Tags: [
{ Key: "Project", Value: "MyApp" },
{ Key: "Owner", Value: "DevTeam" }
],
Name: "MyProductionIPSet"
});
Adoption of Existing Resource ​
If you wish to adopt an existing IPSet without failing on conflict, you can set the adopt
property to true.
ts
const adoptedIpSet = await AWS.WAFv2.IPSet("adoptedIpSet", {
Addresses: ["192.0.2.0/24"],
Description: "Adopting an existing IP Set.",
Scope: "REGIONAL",
IPAddressVersion: "IPV4",
adopt: true
});