Skip to content
GitHubXDiscord

ClusterSecurityGroup

The ClusterSecurityGroup resource lets you manage AWS Redshift Cluster Security Groups, which control access to your Redshift clusters. For more information, refer to the AWS Redshift ClusterSecurityGroups documentation.

Create a basic Cluster Security Group with a description and a tag:

import AWS from "alchemy/aws/control";
const minimalClusterSecurityGroup = await AWS.Redshift.ClusterSecurityGroup("myClusterSecurityGroup", {
Description: "Security group for my Redshift cluster",
Tags: [
{
Key: "Environment",
Value: "Development"
}
]
});

Configure a Cluster Security Group with multiple ingress rules to allow access from specific IP ranges:

const advancedClusterSecurityGroup = await AWS.Redshift.ClusterSecurityGroup("advancedClusterSecurityGroup", {
Description: "Advanced security group for my Redshift cluster with multiple ingress rules",
Tags: [
{
Key: "Environment",
Value: "Production"
}
],
IngressRules: [
{
CidrIp: "192.168.1.0/24",
FromPort: 5439,
ToPort: 5439,
IpProtocol: "tcp"
},
{
CidrIp: "203.0.113.0/24",
FromPort: 5439,
ToPort: 5439,
IpProtocol: "tcp"
}
]
});

Create a Cluster Security Group and adopt an existing resource if it already exists:

const adoptedClusterSecurityGroup = await AWS.Redshift.ClusterSecurityGroup("adoptedClusterSecurityGroup", {
Description: "Cluster security group with adoption option",
Tags: [
{
Key: "Environment",
Value: "Staging"
}
],
adopt: true
});

Create a Cluster Security Group without any tags for simplicity:

const simpleClusterSecurityGroup = await AWS.Redshift.ClusterSecurityGroup("simpleClusterSecurityGroup", {
Description: "Simple security group for Redshift cluster"
});