1. Packages
  2. Gcore Provider
  3. API Docs
  4. CloudSecurityGroup
Viewing docs for gcore 2.0.0-alpha.3
published on Monday, Mar 30, 2026 by g-core
Viewing docs for gcore 2.0.0-alpha.3
published on Monday, Mar 30, 2026 by g-core

    Security groups act as virtual firewalls controlling inbound and outbound traffic for instances and other resources.

    Example Usage

    Web server security group

    Creates a security group with HTTP/HTTPS ingress and outbound TCP/VRRP egress rules.

    import * as pulumi from "@pulumi/pulumi";
    import * as gcore from "@pulumi/gcore";
    
    // Create a security group and manage rules as separate resources
    const example = new gcore.CloudSecurityGroup("example", {
        projectId: 1,
        regionId: 1,
        name: "web-security-group",
        description: "Allow HTTP, HTTPS, and outbound traffic",
        tags: {
            environment: "production",
        },
    });
    const allowHttp = new gcore.CloudSecurityGroupRule("allow_http", {
        projectId: 1,
        regionId: 1,
        groupId: example.id,
        direction: "ingress",
        ethertype: "IPv4",
        protocol: "tcp",
        portRangeMin: 80,
        portRangeMax: 80,
        description: "Allow HTTP",
    });
    const allowHttps = new gcore.CloudSecurityGroupRule("allow_https", {
        projectId: 1,
        regionId: 1,
        groupId: example.id,
        direction: "ingress",
        ethertype: "IPv4",
        protocol: "tcp",
        portRangeMin: 443,
        portRangeMax: 443,
        description: "Allow HTTPS",
    });
    const allowEgressTcp = new gcore.CloudSecurityGroupRule("allow_egress_tcp", {
        projectId: 1,
        regionId: 1,
        groupId: example.id,
        direction: "egress",
        ethertype: "IPv4",
        protocol: "tcp",
        description: "Allow all outbound TCP",
    });
    
    import pulumi
    import pulumi_gcore as gcore
    
    # Create a security group and manage rules as separate resources
    example = gcore.CloudSecurityGroup("example",
        project_id=1,
        region_id=1,
        name="web-security-group",
        description="Allow HTTP, HTTPS, and outbound traffic",
        tags={
            "environment": "production",
        })
    allow_http = gcore.CloudSecurityGroupRule("allow_http",
        project_id=1,
        region_id=1,
        group_id=example.id,
        direction="ingress",
        ethertype="IPv4",
        protocol="tcp",
        port_range_min=80,
        port_range_max=80,
        description="Allow HTTP")
    allow_https = gcore.CloudSecurityGroupRule("allow_https",
        project_id=1,
        region_id=1,
        group_id=example.id,
        direction="ingress",
        ethertype="IPv4",
        protocol="tcp",
        port_range_min=443,
        port_range_max=443,
        description="Allow HTTPS")
    allow_egress_tcp = gcore.CloudSecurityGroupRule("allow_egress_tcp",
        project_id=1,
        region_id=1,
        group_id=example.id,
        direction="egress",
        ethertype="IPv4",
        protocol="tcp",
        description="Allow all outbound TCP")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/gcore/v2/gcore"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Create a security group and manage rules as separate resources
    		example, err := gcore.NewCloudSecurityGroup(ctx, "example", &gcore.CloudSecurityGroupArgs{
    			ProjectId:   pulumi.Float64(1),
    			RegionId:    pulumi.Float64(1),
    			Name:        pulumi.String("web-security-group"),
    			Description: pulumi.String("Allow HTTP, HTTPS, and outbound traffic"),
    			Tags: pulumi.StringMap{
    				"environment": pulumi.String("production"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = gcore.NewCloudSecurityGroupRule(ctx, "allow_http", &gcore.CloudSecurityGroupRuleArgs{
    			ProjectId:    pulumi.Float64(1),
    			RegionId:     pulumi.Float64(1),
    			GroupId:      example.ID(),
    			Direction:    pulumi.String("ingress"),
    			Ethertype:    pulumi.String("IPv4"),
    			Protocol:     pulumi.String("tcp"),
    			PortRangeMin: pulumi.Float64(80),
    			PortRangeMax: pulumi.Float64(80),
    			Description:  pulumi.String("Allow HTTP"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = gcore.NewCloudSecurityGroupRule(ctx, "allow_https", &gcore.CloudSecurityGroupRuleArgs{
    			ProjectId:    pulumi.Float64(1),
    			RegionId:     pulumi.Float64(1),
    			GroupId:      example.ID(),
    			Direction:    pulumi.String("ingress"),
    			Ethertype:    pulumi.String("IPv4"),
    			Protocol:     pulumi.String("tcp"),
    			PortRangeMin: pulumi.Float64(443),
    			PortRangeMax: pulumi.Float64(443),
    			Description:  pulumi.String("Allow HTTPS"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = gcore.NewCloudSecurityGroupRule(ctx, "allow_egress_tcp", &gcore.CloudSecurityGroupRuleArgs{
    			ProjectId:   pulumi.Float64(1),
    			RegionId:    pulumi.Float64(1),
    			GroupId:     example.ID(),
    			Direction:   pulumi.String("egress"),
    			Ethertype:   pulumi.String("IPv4"),
    			Protocol:    pulumi.String("tcp"),
    			Description: pulumi.String("Allow all outbound TCP"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcore = Pulumi.Gcore;
    
    return await Deployment.RunAsync(() => 
    {
        // Create a security group and manage rules as separate resources
        var example = new Gcore.CloudSecurityGroup("example", new()
        {
            ProjectId = 1,
            RegionId = 1,
            Name = "web-security-group",
            Description = "Allow HTTP, HTTPS, and outbound traffic",
            Tags = 
            {
                { "environment", "production" },
            },
        });
    
        var allowHttp = new Gcore.CloudSecurityGroupRule("allow_http", new()
        {
            ProjectId = 1,
            RegionId = 1,
            GroupId = example.Id,
            Direction = "ingress",
            Ethertype = "IPv4",
            Protocol = "tcp",
            PortRangeMin = 80,
            PortRangeMax = 80,
            Description = "Allow HTTP",
        });
    
        var allowHttps = new Gcore.CloudSecurityGroupRule("allow_https", new()
        {
            ProjectId = 1,
            RegionId = 1,
            GroupId = example.Id,
            Direction = "ingress",
            Ethertype = "IPv4",
            Protocol = "tcp",
            PortRangeMin = 443,
            PortRangeMax = 443,
            Description = "Allow HTTPS",
        });
    
        var allowEgressTcp = new Gcore.CloudSecurityGroupRule("allow_egress_tcp", new()
        {
            ProjectId = 1,
            RegionId = 1,
            GroupId = example.Id,
            Direction = "egress",
            Ethertype = "IPv4",
            Protocol = "tcp",
            Description = "Allow all outbound TCP",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcore.CloudSecurityGroup;
    import com.pulumi.gcore.CloudSecurityGroupArgs;
    import com.pulumi.gcore.CloudSecurityGroupRule;
    import com.pulumi.gcore.CloudSecurityGroupRuleArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            // Create a security group and manage rules as separate resources
            var example = new CloudSecurityGroup("example", CloudSecurityGroupArgs.builder()
                .projectId(1.0)
                .regionId(1.0)
                .name("web-security-group")
                .description("Allow HTTP, HTTPS, and outbound traffic")
                .tags(Map.of("environment", "production"))
                .build());
    
            var allowHttp = new CloudSecurityGroupRule("allowHttp", CloudSecurityGroupRuleArgs.builder()
                .projectId(1.0)
                .regionId(1.0)
                .groupId(example.id())
                .direction("ingress")
                .ethertype("IPv4")
                .protocol("tcp")
                .portRangeMin(80.0)
                .portRangeMax(80.0)
                .description("Allow HTTP")
                .build());
    
            var allowHttps = new CloudSecurityGroupRule("allowHttps", CloudSecurityGroupRuleArgs.builder()
                .projectId(1.0)
                .regionId(1.0)
                .groupId(example.id())
                .direction("ingress")
                .ethertype("IPv4")
                .protocol("tcp")
                .portRangeMin(443.0)
                .portRangeMax(443.0)
                .description("Allow HTTPS")
                .build());
    
            var allowEgressTcp = new CloudSecurityGroupRule("allowEgressTcp", CloudSecurityGroupRuleArgs.builder()
                .projectId(1.0)
                .regionId(1.0)
                .groupId(example.id())
                .direction("egress")
                .ethertype("IPv4")
                .protocol("tcp")
                .description("Allow all outbound TCP")
                .build());
    
        }
    }
    
    resources:
      # Create a security group and manage rules as separate resources
      example:
        type: gcore:CloudSecurityGroup
        properties:
          projectId: 1
          regionId: 1
          name: web-security-group
          description: Allow HTTP, HTTPS, and outbound traffic
          tags:
            environment: production
      allowHttp:
        type: gcore:CloudSecurityGroupRule
        name: allow_http
        properties:
          projectId: 1
          regionId: 1
          groupId: ${example.id}
          direction: ingress
          ethertype: IPv4
          protocol: tcp
          portRangeMin: 80
          portRangeMax: 80
          description: Allow HTTP
      allowHttps:
        type: gcore:CloudSecurityGroupRule
        name: allow_https
        properties:
          projectId: 1
          regionId: 1
          groupId: ${example.id}
          direction: ingress
          ethertype: IPv4
          protocol: tcp
          portRangeMin: 443
          portRangeMax: 443
          description: Allow HTTPS
      allowEgressTcp:
        type: gcore:CloudSecurityGroupRule
        name: allow_egress_tcp
        properties:
          projectId: 1
          regionId: 1
          groupId: ${example.id}
          direction: egress
          ethertype: IPv4
          protocol: tcp
          description: Allow all outbound TCP
    

    Create CloudSecurityGroup Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new CloudSecurityGroup(name: string, args?: CloudSecurityGroupArgs, opts?: CustomResourceOptions);
    @overload
    def CloudSecurityGroup(resource_name: str,
                           args: Optional[CloudSecurityGroupArgs] = None,
                           opts: Optional[ResourceOptions] = None)
    
    @overload
    def CloudSecurityGroup(resource_name: str,
                           opts: Optional[ResourceOptions] = None,
                           description: Optional[str] = None,
                           name: Optional[str] = None,
                           project_id: Optional[float] = None,
                           region_id: Optional[float] = None,
                           tags: Optional[Mapping[str, str]] = None)
    func NewCloudSecurityGroup(ctx *Context, name string, args *CloudSecurityGroupArgs, opts ...ResourceOption) (*CloudSecurityGroup, error)
    public CloudSecurityGroup(string name, CloudSecurityGroupArgs? args = null, CustomResourceOptions? opts = null)
    public CloudSecurityGroup(String name, CloudSecurityGroupArgs args)
    public CloudSecurityGroup(String name, CloudSecurityGroupArgs args, CustomResourceOptions options)
    
    type: gcore:CloudSecurityGroup
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args CloudSecurityGroupArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args CloudSecurityGroupArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args CloudSecurityGroupArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args CloudSecurityGroupArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args CloudSecurityGroupArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var cloudSecurityGroupResource = new Gcore.Index.CloudSecurityGroup("cloudSecurityGroupResource", new()
    {
        Description = "string",
        Name = "string",
        ProjectId = 0,
        RegionId = 0,
        Tags = 
        {
            { "string", "string" },
        },
    });
    
    example, err := gcore.NewCloudSecurityGroup(ctx, "cloudSecurityGroupResource", &gcore.CloudSecurityGroupArgs{
    	Description: pulumi.String("string"),
    	Name:        pulumi.String("string"),
    	ProjectId:   pulumi.Float64(0),
    	RegionId:    pulumi.Float64(0),
    	Tags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    })
    
    var cloudSecurityGroupResource = new CloudSecurityGroup("cloudSecurityGroupResource", CloudSecurityGroupArgs.builder()
        .description("string")
        .name("string")
        .projectId(0.0)
        .regionId(0.0)
        .tags(Map.of("string", "string"))
        .build());
    
    cloud_security_group_resource = gcore.CloudSecurityGroup("cloudSecurityGroupResource",
        description="string",
        name="string",
        project_id=0,
        region_id=0,
        tags={
            "string": "string",
        })
    
    const cloudSecurityGroupResource = new gcore.CloudSecurityGroup("cloudSecurityGroupResource", {
        description: "string",
        name: "string",
        projectId: 0,
        regionId: 0,
        tags: {
            string: "string",
        },
    });
    
    type: gcore:CloudSecurityGroup
    properties:
        description: string
        name: string
        projectId: 0
        regionId: 0
        tags:
            string: string
    

    CloudSecurityGroup Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The CloudSecurityGroup resource accepts the following input properties:

    Description string
    Security group description
    Name string
    Security group name
    ProjectId double
    Project ID
    RegionId double
    Region ID
    Tags Dictionary<string, string>
    Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    Description string
    Security group description
    Name string
    Security group name
    ProjectId float64
    Project ID
    RegionId float64
    Region ID
    Tags map[string]string
    Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    description String
    Security group description
    name String
    Security group name
    projectId Double
    Project ID
    regionId Double
    Region ID
    tags Map<String,String>
    Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    description string
    Security group description
    name string
    Security group name
    projectId number
    Project ID
    regionId number
    Region ID
    tags {[key: string]: string}
    Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    description str
    Security group description
    name str
    Security group name
    project_id float
    Project ID
    region_id float
    Region ID
    tags Mapping[str, str]
    Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    description String
    Security group description
    name String
    Security group name
    projectId Number
    Project ID
    regionId Number
    Region ID
    tags Map<String>
    Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the CloudSecurityGroup resource produces the following output properties:

    CreatedAt string
    Datetime when the security group was created
    Id string
    The provider-assigned unique ID for this managed resource.
    Region string
    Region name
    RevisionNumber double
    The number of revisions
    TagsV2s List<CloudSecurityGroupTagsV2>
    List of key-value tags associated with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    UpdatedAt string
    Datetime when the security group was last updated
    CreatedAt string
    Datetime when the security group was created
    Id string
    The provider-assigned unique ID for this managed resource.
    Region string
    Region name
    RevisionNumber float64
    The number of revisions
    TagsV2s []CloudSecurityGroupTagsV2
    List of key-value tags associated with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    UpdatedAt string
    Datetime when the security group was last updated
    createdAt String
    Datetime when the security group was created
    id String
    The provider-assigned unique ID for this managed resource.
    region String
    Region name
    revisionNumber Double
    The number of revisions
    tagsV2s List<CloudSecurityGroupTagsV2>
    List of key-value tags associated with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    updatedAt String
    Datetime when the security group was last updated
    createdAt string
    Datetime when the security group was created
    id string
    The provider-assigned unique ID for this managed resource.
    region string
    Region name
    revisionNumber number
    The number of revisions
    tagsV2s CloudSecurityGroupTagsV2[]
    List of key-value tags associated with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    updatedAt string
    Datetime when the security group was last updated
    created_at str
    Datetime when the security group was created
    id str
    The provider-assigned unique ID for this managed resource.
    region str
    Region name
    revision_number float
    The number of revisions
    tags_v2s Sequence[CloudSecurityGroupTagsV2]
    List of key-value tags associated with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    updated_at str
    Datetime when the security group was last updated
    createdAt String
    Datetime when the security group was created
    id String
    The provider-assigned unique ID for this managed resource.
    region String
    Region name
    revisionNumber Number
    The number of revisions
    tagsV2s List<Property Map>
    List of key-value tags associated with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    updatedAt String
    Datetime when the security group was last updated

    Look up Existing CloudSecurityGroup Resource

    Get an existing CloudSecurityGroup resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: CloudSecurityGroupState, opts?: CustomResourceOptions): CloudSecurityGroup
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            created_at: Optional[str] = None,
            description: Optional[str] = None,
            name: Optional[str] = None,
            project_id: Optional[float] = None,
            region: Optional[str] = None,
            region_id: Optional[float] = None,
            revision_number: Optional[float] = None,
            tags: Optional[Mapping[str, str]] = None,
            tags_v2s: Optional[Sequence[CloudSecurityGroupTagsV2Args]] = None,
            updated_at: Optional[str] = None) -> CloudSecurityGroup
    func GetCloudSecurityGroup(ctx *Context, name string, id IDInput, state *CloudSecurityGroupState, opts ...ResourceOption) (*CloudSecurityGroup, error)
    public static CloudSecurityGroup Get(string name, Input<string> id, CloudSecurityGroupState? state, CustomResourceOptions? opts = null)
    public static CloudSecurityGroup get(String name, Output<String> id, CloudSecurityGroupState state, CustomResourceOptions options)
    resources:  _:    type: gcore:CloudSecurityGroup    get:      id: ${id}
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    CreatedAt string
    Datetime when the security group was created
    Description string
    Security group description
    Name string
    Security group name
    ProjectId double
    Project ID
    Region string
    Region name
    RegionId double
    Region ID
    RevisionNumber double
    The number of revisions
    Tags Dictionary<string, string>
    Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    TagsV2s List<CloudSecurityGroupTagsV2>
    List of key-value tags associated with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    UpdatedAt string
    Datetime when the security group was last updated
    CreatedAt string
    Datetime when the security group was created
    Description string
    Security group description
    Name string
    Security group name
    ProjectId float64
    Project ID
    Region string
    Region name
    RegionId float64
    Region ID
    RevisionNumber float64
    The number of revisions
    Tags map[string]string
    Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    TagsV2s []CloudSecurityGroupTagsV2Args
    List of key-value tags associated with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    UpdatedAt string
    Datetime when the security group was last updated
    createdAt String
    Datetime when the security group was created
    description String
    Security group description
    name String
    Security group name
    projectId Double
    Project ID
    region String
    Region name
    regionId Double
    Region ID
    revisionNumber Double
    The number of revisions
    tags Map<String,String>
    Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    tagsV2s List<CloudSecurityGroupTagsV2>
    List of key-value tags associated with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    updatedAt String
    Datetime when the security group was last updated
    createdAt string
    Datetime when the security group was created
    description string
    Security group description
    name string
    Security group name
    projectId number
    Project ID
    region string
    Region name
    regionId number
    Region ID
    revisionNumber number
    The number of revisions
    tags {[key: string]: string}
    Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    tagsV2s CloudSecurityGroupTagsV2[]
    List of key-value tags associated with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    updatedAt string
    Datetime when the security group was last updated
    created_at str
    Datetime when the security group was created
    description str
    Security group description
    name str
    Security group name
    project_id float
    Project ID
    region str
    Region name
    region_id float
    Region ID
    revision_number float
    The number of revisions
    tags Mapping[str, str]
    Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    tags_v2s Sequence[CloudSecurityGroupTagsV2Args]
    List of key-value tags associated with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    updated_at str
    Datetime when the security group was last updated
    createdAt String
    Datetime when the security group was created
    description String
    Security group description
    name String
    Security group name
    projectId Number
    Project ID
    region String
    Region name
    regionId Number
    Region ID
    revisionNumber Number
    The number of revisions
    tags Map<String>
    Key-value tags to associate with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Both tag keys and values have a maximum length of 255 characters. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    tagsV2s List<Property Map>
    List of key-value tags associated with the resource. A tag is a key-value pair that can be associated with a resource, enabling efficient filtering and grouping for better organization and management. Some tags are read-only and cannot be modified by the user. Tags are also integrated with cost reports, allowing cost data to be filtered based on tag keys or values.
    updatedAt String
    Datetime when the security group was last updated

    Supporting Types

    CloudSecurityGroupTagsV2, CloudSecurityGroupTagsV2Args

    Key string
    Tag key. Maximum 255 characters. Cannot contain spaces, tabs, newlines, empty string or '=' character.
    ReadOnly bool
    If true, the tag is read-only and cannot be modified by the user
    Value string
    Tag value. Maximum 255 characters. Cannot contain spaces, tabs, newlines, empty string or '=' character.
    Key string
    Tag key. Maximum 255 characters. Cannot contain spaces, tabs, newlines, empty string or '=' character.
    ReadOnly bool
    If true, the tag is read-only and cannot be modified by the user
    Value string
    Tag value. Maximum 255 characters. Cannot contain spaces, tabs, newlines, empty string or '=' character.
    key String
    Tag key. Maximum 255 characters. Cannot contain spaces, tabs, newlines, empty string or '=' character.
    readOnly Boolean
    If true, the tag is read-only and cannot be modified by the user
    value String
    Tag value. Maximum 255 characters. Cannot contain spaces, tabs, newlines, empty string or '=' character.
    key string
    Tag key. Maximum 255 characters. Cannot contain spaces, tabs, newlines, empty string or '=' character.
    readOnly boolean
    If true, the tag is read-only and cannot be modified by the user
    value string
    Tag value. Maximum 255 characters. Cannot contain spaces, tabs, newlines, empty string or '=' character.
    key str
    Tag key. Maximum 255 characters. Cannot contain spaces, tabs, newlines, empty string or '=' character.
    read_only bool
    If true, the tag is read-only and cannot be modified by the user
    value str
    Tag value. Maximum 255 characters. Cannot contain spaces, tabs, newlines, empty string or '=' character.
    key String
    Tag key. Maximum 255 characters. Cannot contain spaces, tabs, newlines, empty string or '=' character.
    readOnly Boolean
    If true, the tag is read-only and cannot be modified by the user
    value String
    Tag value. Maximum 255 characters. Cannot contain spaces, tabs, newlines, empty string or '=' character.

    Import

    $ pulumi import gcore:index/cloudSecurityGroup:CloudSecurityGroup example '<project_id>/<region_id>/<group_id>'
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    gcore g-core/terraform-provider-gcore
    License
    Notes
    This Pulumi package is based on the gcore Terraform Provider.
    Viewing docs for gcore 2.0.0-alpha.3
    published on Monday, Mar 30, 2026 by g-core
      Try Pulumi Cloud free. Your team will thank you.