Skip to content

IpAccessSettings

The IpAccessSettings resource lets you manage AWS WorkSpacesWeb IpAccessSettings for controlling access to your applications based on IP address rules.

Minimal Example

Create basic IP access settings with required properties and a description.

ts
import AWS from "alchemy/aws/control";

const ipAccessSettings = await AWS.WorkSpacesWeb.IpAccessSettings("basicIpAccessSettings", {
  IpRules: [
    {
      ipRule: "192.168.1.0/24",
      ruleAction: "ALLOW"
    },
    {
      ipRule: "10.0.0.0/8",
      ruleAction: "DENY"
    }
  ],
  Description: "Basic IP access settings for application access"
});

Advanced Configuration

Configure IP access settings with additional encryption context and a customer-managed key for enhanced security.

ts
const advancedIpAccessSettings = await AWS.WorkSpacesWeb.IpAccessSettings("advancedIpAccessSettings", {
  IpRules: [
    {
      ipRule: "203.0.113.0/24",
      ruleAction: "ALLOW"
    },
    {
      ipRule: "198.51.100.0/24",
      ruleAction: "DENY"
    }
  ],
  Description: "Advanced IP access settings with encryption",
  CustomerManagedKey: "arn:aws:kms:us-west-2:123456789012:key/abcd1234-a123-456a-a12b-a123b4cd56ef",
  AdditionalEncryptionContext: {
    "Project": "WebApp",
    "Environment": "Production"
  },
  DisplayName: "Advanced Access Settings"
});

Using Tags for Resource Management

Create IP access settings with tags for better organization and management.

ts
const taggedIpAccessSettings = await AWS.WorkSpacesWeb.IpAccessSettings("taggedIpAccessSettings", {
  IpRules: [
    {
      ipRule: "192.0.2.0/24",
      ruleAction: "ALLOW"
    }
  ],
  Description: "IP access settings with tags",
  Tags: [
    {
      Key: "Environment",
      Value: "Development"
    },
    {
      Key: "Department",
      Value: "IT"
    }
  ]
});

Adopting Existing Resources

Create IP access settings while adopting an existing resource to avoid failures.

ts
const adoptedIpAccessSettings = await AWS.WorkSpacesWeb.IpAccessSettings("adoptedIpAccessSettings", {
  IpRules: [
    {
      ipRule: "172.16.0.0/12",
      ruleAction: "ALLOW"
    }
  ],
  Description: "Adopt existing IP access settings",
  adopt: true
});