vpc

package
v6.25.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 5, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type GetSecurityGroupRuleArgs

type GetSecurityGroupRuleArgs struct {
	// Configuration block(s) for filtering. Detailed below.
	Filters []GetSecurityGroupRuleFilter `pulumi:"filters"`
	// ID of the security group rule to select.
	SecurityGroupRuleId *string `pulumi:"securityGroupRuleId"`
}

A collection of arguments for invoking getSecurityGroupRule.

type GetSecurityGroupRuleFilter

type GetSecurityGroupRuleFilter struct {
	// Name of the filter field. Valid values can be found in the EC2 [`DescribeSecurityGroupRules`](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroupRules.html) API Reference.
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values []string `pulumi:"values"`
}

type GetSecurityGroupRuleFilterArgs

type GetSecurityGroupRuleFilterArgs struct {
	// Name of the filter field. Valid values can be found in the EC2 [`DescribeSecurityGroupRules`](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroupRules.html) API Reference.
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given filter field. Results will be selected if any given value matches.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetSecurityGroupRuleFilterArgs) ElementType

func (GetSecurityGroupRuleFilterArgs) ToGetSecurityGroupRuleFilterOutput

func (i GetSecurityGroupRuleFilterArgs) ToGetSecurityGroupRuleFilterOutput() GetSecurityGroupRuleFilterOutput

func (GetSecurityGroupRuleFilterArgs) ToGetSecurityGroupRuleFilterOutputWithContext

func (i GetSecurityGroupRuleFilterArgs) ToGetSecurityGroupRuleFilterOutputWithContext(ctx context.Context) GetSecurityGroupRuleFilterOutput

type GetSecurityGroupRuleFilterArray

type GetSecurityGroupRuleFilterArray []GetSecurityGroupRuleFilterInput

func (GetSecurityGroupRuleFilterArray) ElementType

func (GetSecurityGroupRuleFilterArray) ToGetSecurityGroupRuleFilterArrayOutput

func (i GetSecurityGroupRuleFilterArray) ToGetSecurityGroupRuleFilterArrayOutput() GetSecurityGroupRuleFilterArrayOutput

func (GetSecurityGroupRuleFilterArray) ToGetSecurityGroupRuleFilterArrayOutputWithContext

func (i GetSecurityGroupRuleFilterArray) ToGetSecurityGroupRuleFilterArrayOutputWithContext(ctx context.Context) GetSecurityGroupRuleFilterArrayOutput

type GetSecurityGroupRuleFilterArrayInput

type GetSecurityGroupRuleFilterArrayInput interface {
	pulumi.Input

	ToGetSecurityGroupRuleFilterArrayOutput() GetSecurityGroupRuleFilterArrayOutput
	ToGetSecurityGroupRuleFilterArrayOutputWithContext(context.Context) GetSecurityGroupRuleFilterArrayOutput
}

GetSecurityGroupRuleFilterArrayInput is an input type that accepts GetSecurityGroupRuleFilterArray and GetSecurityGroupRuleFilterArrayOutput values. You can construct a concrete instance of `GetSecurityGroupRuleFilterArrayInput` via:

GetSecurityGroupRuleFilterArray{ GetSecurityGroupRuleFilterArgs{...} }

type GetSecurityGroupRuleFilterArrayOutput

type GetSecurityGroupRuleFilterArrayOutput struct{ *pulumi.OutputState }

func (GetSecurityGroupRuleFilterArrayOutput) ElementType

func (GetSecurityGroupRuleFilterArrayOutput) Index

func (GetSecurityGroupRuleFilterArrayOutput) ToGetSecurityGroupRuleFilterArrayOutput

func (o GetSecurityGroupRuleFilterArrayOutput) ToGetSecurityGroupRuleFilterArrayOutput() GetSecurityGroupRuleFilterArrayOutput

func (GetSecurityGroupRuleFilterArrayOutput) ToGetSecurityGroupRuleFilterArrayOutputWithContext

func (o GetSecurityGroupRuleFilterArrayOutput) ToGetSecurityGroupRuleFilterArrayOutputWithContext(ctx context.Context) GetSecurityGroupRuleFilterArrayOutput

type GetSecurityGroupRuleFilterInput

type GetSecurityGroupRuleFilterInput interface {
	pulumi.Input

	ToGetSecurityGroupRuleFilterOutput() GetSecurityGroupRuleFilterOutput
	ToGetSecurityGroupRuleFilterOutputWithContext(context.Context) GetSecurityGroupRuleFilterOutput
}

GetSecurityGroupRuleFilterInput is an input type that accepts GetSecurityGroupRuleFilterArgs and GetSecurityGroupRuleFilterOutput values. You can construct a concrete instance of `GetSecurityGroupRuleFilterInput` via:

GetSecurityGroupRuleFilterArgs{...}

type GetSecurityGroupRuleFilterOutput

type GetSecurityGroupRuleFilterOutput struct{ *pulumi.OutputState }

func (GetSecurityGroupRuleFilterOutput) ElementType

func (GetSecurityGroupRuleFilterOutput) Name

Name of the filter field. Valid values can be found in the EC2 [`DescribeSecurityGroupRules`](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroupRules.html) API Reference.

func (GetSecurityGroupRuleFilterOutput) ToGetSecurityGroupRuleFilterOutput

func (o GetSecurityGroupRuleFilterOutput) ToGetSecurityGroupRuleFilterOutput() GetSecurityGroupRuleFilterOutput

func (GetSecurityGroupRuleFilterOutput) ToGetSecurityGroupRuleFilterOutputWithContext

func (o GetSecurityGroupRuleFilterOutput) ToGetSecurityGroupRuleFilterOutputWithContext(ctx context.Context) GetSecurityGroupRuleFilterOutput

func (GetSecurityGroupRuleFilterOutput) Values

Set of values that are accepted for the given filter field. Results will be selected if any given value matches.

type GetSecurityGroupRuleOutputArgs

type GetSecurityGroupRuleOutputArgs struct {
	// Configuration block(s) for filtering. Detailed below.
	Filters GetSecurityGroupRuleFilterArrayInput `pulumi:"filters"`
	// ID of the security group rule to select.
	SecurityGroupRuleId pulumi.StringPtrInput `pulumi:"securityGroupRuleId"`
}

A collection of arguments for invoking getSecurityGroupRule.

func (GetSecurityGroupRuleOutputArgs) ElementType

type GetSecurityGroupRuleResult

type GetSecurityGroupRuleResult struct {
	// The Amazon Resource Name (ARN) of the security group rule.
	Arn string `pulumi:"arn"`
	// The destination IPv4 CIDR range.
	CidrIpv4 string `pulumi:"cidrIpv4"`
	// The destination IPv6 CIDR range.
	CidrIpv6 string `pulumi:"cidrIpv6"`
	// The security group rule description.
	Description string                       `pulumi:"description"`
	Filters     []GetSecurityGroupRuleFilter `pulumi:"filters"`
	// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.
	FromPort int    `pulumi:"fromPort"`
	Id       string `pulumi:"id"`
	// The IP protocol name or number. Use `-1` to specify all protocols.
	IpProtocol string `pulumi:"ipProtocol"`
	// Indicates whether the security group rule is an outbound rule.
	IsEgress bool `pulumi:"isEgress"`
	// The ID of the destination prefix list.
	PrefixListId string `pulumi:"prefixListId"`
	// The destination security group that is referenced in the rule.
	ReferencedSecurityGroupId string `pulumi:"referencedSecurityGroupId"`
	// The ID of the security group.
	SecurityGroupId     string `pulumi:"securityGroupId"`
	SecurityGroupRuleId string `pulumi:"securityGroupRuleId"`
	// A map of tags assigned to the resource.
	Tags map[string]string `pulumi:"tags"`
	// (Optional) The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
	ToPort int `pulumi:"toPort"`
}

A collection of values returned by getSecurityGroupRule.

func GetSecurityGroupRule

func GetSecurityGroupRule(ctx *pulumi.Context, args *GetSecurityGroupRuleArgs, opts ...pulumi.InvokeOption) (*GetSecurityGroupRuleResult, error)

`vpc.getSecurityGroupRule` provides details about a specific security group rule.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := vpc.GetSecurityGroupRule(ctx, &vpc.GetSecurityGroupRuleArgs{
			SecurityGroupRuleId: pulumi.StringRef(securityGroupRuleId),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetSecurityGroupRuleResultOutput

type GetSecurityGroupRuleResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSecurityGroupRule.

func (GetSecurityGroupRuleResultOutput) Arn

The Amazon Resource Name (ARN) of the security group rule.

func (GetSecurityGroupRuleResultOutput) CidrIpv4

The destination IPv4 CIDR range.

func (GetSecurityGroupRuleResultOutput) CidrIpv6

The destination IPv6 CIDR range.

func (GetSecurityGroupRuleResultOutput) Description

The security group rule description.

func (GetSecurityGroupRuleResultOutput) ElementType

func (GetSecurityGroupRuleResultOutput) Filters

func (GetSecurityGroupRuleResultOutput) FromPort

The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.

func (GetSecurityGroupRuleResultOutput) Id

func (GetSecurityGroupRuleResultOutput) IpProtocol

The IP protocol name or number. Use `-1` to specify all protocols.

func (GetSecurityGroupRuleResultOutput) IsEgress

Indicates whether the security group rule is an outbound rule.

func (GetSecurityGroupRuleResultOutput) PrefixListId

The ID of the destination prefix list.

func (GetSecurityGroupRuleResultOutput) ReferencedSecurityGroupId

func (o GetSecurityGroupRuleResultOutput) ReferencedSecurityGroupId() pulumi.StringOutput

The destination security group that is referenced in the rule.

func (GetSecurityGroupRuleResultOutput) SecurityGroupId

The ID of the security group.

func (GetSecurityGroupRuleResultOutput) SecurityGroupRuleId

func (o GetSecurityGroupRuleResultOutput) SecurityGroupRuleId() pulumi.StringOutput

func (GetSecurityGroupRuleResultOutput) Tags

A map of tags assigned to the resource.

func (GetSecurityGroupRuleResultOutput) ToGetSecurityGroupRuleResultOutput

func (o GetSecurityGroupRuleResultOutput) ToGetSecurityGroupRuleResultOutput() GetSecurityGroupRuleResultOutput

func (GetSecurityGroupRuleResultOutput) ToGetSecurityGroupRuleResultOutputWithContext

func (o GetSecurityGroupRuleResultOutput) ToGetSecurityGroupRuleResultOutputWithContext(ctx context.Context) GetSecurityGroupRuleResultOutput

func (GetSecurityGroupRuleResultOutput) ToPort

(Optional) The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.

type GetSecurityGroupRulesArgs

type GetSecurityGroupRulesArgs struct {
	// Custom filter block as described below.
	Filters []GetSecurityGroupRulesFilter `pulumi:"filters"`
	// Map of tags, each pair of which must exactly match
	// a pair on the desired security group rule.
	//
	// More complex filters can be expressed using one or more `filter` sub-blocks,
	// which take the following arguments:
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getSecurityGroupRules.

type GetSecurityGroupRulesFilter

type GetSecurityGroupRulesFilter struct {
	// Name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroupRules.html).
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// Security group rule IDs will be selected if any one of the given values match.
	Values []string `pulumi:"values"`
}

type GetSecurityGroupRulesFilterArgs

type GetSecurityGroupRulesFilterArgs struct {
	// Name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroupRules.html).
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// Security group rule IDs will be selected if any one of the given values match.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetSecurityGroupRulesFilterArgs) ElementType

func (GetSecurityGroupRulesFilterArgs) ToGetSecurityGroupRulesFilterOutput

func (i GetSecurityGroupRulesFilterArgs) ToGetSecurityGroupRulesFilterOutput() GetSecurityGroupRulesFilterOutput

func (GetSecurityGroupRulesFilterArgs) ToGetSecurityGroupRulesFilterOutputWithContext

func (i GetSecurityGroupRulesFilterArgs) ToGetSecurityGroupRulesFilterOutputWithContext(ctx context.Context) GetSecurityGroupRulesFilterOutput

type GetSecurityGroupRulesFilterArray

type GetSecurityGroupRulesFilterArray []GetSecurityGroupRulesFilterInput

func (GetSecurityGroupRulesFilterArray) ElementType

func (GetSecurityGroupRulesFilterArray) ToGetSecurityGroupRulesFilterArrayOutput

func (i GetSecurityGroupRulesFilterArray) ToGetSecurityGroupRulesFilterArrayOutput() GetSecurityGroupRulesFilterArrayOutput

func (GetSecurityGroupRulesFilterArray) ToGetSecurityGroupRulesFilterArrayOutputWithContext

func (i GetSecurityGroupRulesFilterArray) ToGetSecurityGroupRulesFilterArrayOutputWithContext(ctx context.Context) GetSecurityGroupRulesFilterArrayOutput

type GetSecurityGroupRulesFilterArrayInput

type GetSecurityGroupRulesFilterArrayInput interface {
	pulumi.Input

	ToGetSecurityGroupRulesFilterArrayOutput() GetSecurityGroupRulesFilterArrayOutput
	ToGetSecurityGroupRulesFilterArrayOutputWithContext(context.Context) GetSecurityGroupRulesFilterArrayOutput
}

GetSecurityGroupRulesFilterArrayInput is an input type that accepts GetSecurityGroupRulesFilterArray and GetSecurityGroupRulesFilterArrayOutput values. You can construct a concrete instance of `GetSecurityGroupRulesFilterArrayInput` via:

GetSecurityGroupRulesFilterArray{ GetSecurityGroupRulesFilterArgs{...} }

type GetSecurityGroupRulesFilterArrayOutput

type GetSecurityGroupRulesFilterArrayOutput struct{ *pulumi.OutputState }

func (GetSecurityGroupRulesFilterArrayOutput) ElementType

func (GetSecurityGroupRulesFilterArrayOutput) Index

func (GetSecurityGroupRulesFilterArrayOutput) ToGetSecurityGroupRulesFilterArrayOutput

func (o GetSecurityGroupRulesFilterArrayOutput) ToGetSecurityGroupRulesFilterArrayOutput() GetSecurityGroupRulesFilterArrayOutput

func (GetSecurityGroupRulesFilterArrayOutput) ToGetSecurityGroupRulesFilterArrayOutputWithContext

func (o GetSecurityGroupRulesFilterArrayOutput) ToGetSecurityGroupRulesFilterArrayOutputWithContext(ctx context.Context) GetSecurityGroupRulesFilterArrayOutput

type GetSecurityGroupRulesFilterInput

type GetSecurityGroupRulesFilterInput interface {
	pulumi.Input

	ToGetSecurityGroupRulesFilterOutput() GetSecurityGroupRulesFilterOutput
	ToGetSecurityGroupRulesFilterOutputWithContext(context.Context) GetSecurityGroupRulesFilterOutput
}

GetSecurityGroupRulesFilterInput is an input type that accepts GetSecurityGroupRulesFilterArgs and GetSecurityGroupRulesFilterOutput values. You can construct a concrete instance of `GetSecurityGroupRulesFilterInput` via:

GetSecurityGroupRulesFilterArgs{...}

type GetSecurityGroupRulesFilterOutput

type GetSecurityGroupRulesFilterOutput struct{ *pulumi.OutputState }

func (GetSecurityGroupRulesFilterOutput) ElementType

func (GetSecurityGroupRulesFilterOutput) Name

Name of the field to filter by, as defined by [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroupRules.html).

func (GetSecurityGroupRulesFilterOutput) ToGetSecurityGroupRulesFilterOutput

func (o GetSecurityGroupRulesFilterOutput) ToGetSecurityGroupRulesFilterOutput() GetSecurityGroupRulesFilterOutput

func (GetSecurityGroupRulesFilterOutput) ToGetSecurityGroupRulesFilterOutputWithContext

func (o GetSecurityGroupRulesFilterOutput) ToGetSecurityGroupRulesFilterOutputWithContext(ctx context.Context) GetSecurityGroupRulesFilterOutput

func (GetSecurityGroupRulesFilterOutput) Values

Set of values that are accepted for the given field. Security group rule IDs will be selected if any one of the given values match.

type GetSecurityGroupRulesOutputArgs

type GetSecurityGroupRulesOutputArgs struct {
	// Custom filter block as described below.
	Filters GetSecurityGroupRulesFilterArrayInput `pulumi:"filters"`
	// Map of tags, each pair of which must exactly match
	// a pair on the desired security group rule.
	//
	// More complex filters can be expressed using one or more `filter` sub-blocks,
	// which take the following arguments:
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getSecurityGroupRules.

func (GetSecurityGroupRulesOutputArgs) ElementType

type GetSecurityGroupRulesResult

type GetSecurityGroupRulesResult struct {
	Filters []GetSecurityGroupRulesFilter `pulumi:"filters"`
	Id      string                        `pulumi:"id"`
	// List of all the security group rule IDs found.
	Ids  []string          `pulumi:"ids"`
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getSecurityGroupRules.

func GetSecurityGroupRules

func GetSecurityGroupRules(ctx *pulumi.Context, args *GetSecurityGroupRulesArgs, opts ...pulumi.InvokeOption) (*GetSecurityGroupRulesResult, error)

This resource can be useful for getting back a set of security group rule IDs.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

) func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := vpc.GetSecurityGroupRules(ctx, &vpc.GetSecurityGroupRulesArgs{ Filters: []vpc.GetSecurityGroupRulesFilter{ { Name: "group-id", Values: interface{}{ securityGroupId, }, }, }, }, nil); if err != nil { return err } return nil }) } ```

type GetSecurityGroupRulesResultOutput

type GetSecurityGroupRulesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getSecurityGroupRules.

func (GetSecurityGroupRulesResultOutput) ElementType

func (GetSecurityGroupRulesResultOutput) Filters

func (GetSecurityGroupRulesResultOutput) Id

func (GetSecurityGroupRulesResultOutput) Ids

List of all the security group rule IDs found.

func (GetSecurityGroupRulesResultOutput) Tags

func (GetSecurityGroupRulesResultOutput) ToGetSecurityGroupRulesResultOutput

func (o GetSecurityGroupRulesResultOutput) ToGetSecurityGroupRulesResultOutput() GetSecurityGroupRulesResultOutput

func (GetSecurityGroupRulesResultOutput) ToGetSecurityGroupRulesResultOutputWithContext

func (o GetSecurityGroupRulesResultOutput) ToGetSecurityGroupRulesResultOutputWithContext(ctx context.Context) GetSecurityGroupRulesResultOutput

type SecurityGroupEgressRule

type SecurityGroupEgressRule struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) of the security group rule.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The destination IPv4 CIDR range.
	CidrIpv4 pulumi.StringPtrOutput `pulumi:"cidrIpv4"`
	// The destination IPv6 CIDR range.
	CidrIpv6 pulumi.StringPtrOutput `pulumi:"cidrIpv6"`
	// The security group rule description.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.
	FromPort pulumi.IntPtrOutput `pulumi:"fromPort"`
	// The IP protocol name or number. Use `-1` to specify all protocols. Note that if `ipProtocol` is set to `-1`, it translates to all protocols, all port ranges, and `fromPort` and `toPort` values should not be defined.
	IpProtocol pulumi.StringOutput `pulumi:"ipProtocol"`
	// The ID of the destination prefix list.
	PrefixListId pulumi.StringPtrOutput `pulumi:"prefixListId"`
	// The destination security group that is referenced in the rule.
	ReferencedSecurityGroupId pulumi.StringPtrOutput `pulumi:"referencedSecurityGroupId"`
	// The ID of the security group.
	SecurityGroupId pulumi.StringOutput `pulumi:"securityGroupId"`
	// The ID of the security group rule.
	SecurityGroupRuleId pulumi.StringOutput `pulumi:"securityGroupRuleId"`
	// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
	ToPort pulumi.IntPtrOutput `pulumi:"toPort"`
}

Manages an outbound (egress) rule for a security group.

When specifying an outbound rule for your security group in a VPC, the configuration must include a destination for the traffic.

> **NOTE on Security Groups and Security Group Rules:** this provider currently provides a Security Group resource with `ingress` and `egress` rules defined in-line and a Security Group Rule resource which manages one or more `ingress` or `egress` rules. Both of these resource were added before AWS assigned a [security group rule unique ID](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-rules.html), and they do not work well in all scenarios using the`description` and `tags` attributes, which rely on the unique ID. The `vpc.SecurityGroupEgressRule` resource has been added to address these limitations and should be used for all new security group rules. You should not use the `vpc.SecurityGroupEgressRule` resource in conjunction with an `ec2.SecurityGroup` resource with in-line rules or with `ec2.SecurityGroupRule` resources defined for the same Security Group, as rule conflicts may occur and rules will be overwritten.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := vpc.NewSecurityGroupEgressRule(ctx, "example", &vpc.SecurityGroupEgressRuleArgs{
			SecurityGroupId: pulumi.Any(exampleAwsSecurityGroup.Id),
			CidrIpv4:        pulumi.String("10.0.0.0/8"),
			FromPort:        pulumi.Int(80),
			IpProtocol:      pulumi.String("tcp"),
			ToPort:          pulumi.Int(80),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import security group egress rules using the `security_group_rule_id`. For example:

```sh

$ pulumi import aws:vpc/securityGroupEgressRule:SecurityGroupEgressRule example sgr-02108b27edd666983

```

func GetSecurityGroupEgressRule

func GetSecurityGroupEgressRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SecurityGroupEgressRuleState, opts ...pulumi.ResourceOption) (*SecurityGroupEgressRule, error)

GetSecurityGroupEgressRule gets an existing SecurityGroupEgressRule resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSecurityGroupEgressRule

func NewSecurityGroupEgressRule(ctx *pulumi.Context,
	name string, args *SecurityGroupEgressRuleArgs, opts ...pulumi.ResourceOption) (*SecurityGroupEgressRule, error)

NewSecurityGroupEgressRule registers a new resource with the given unique name, arguments, and options.

func (*SecurityGroupEgressRule) ElementType

func (*SecurityGroupEgressRule) ElementType() reflect.Type

func (*SecurityGroupEgressRule) ToSecurityGroupEgressRuleOutput

func (i *SecurityGroupEgressRule) ToSecurityGroupEgressRuleOutput() SecurityGroupEgressRuleOutput

func (*SecurityGroupEgressRule) ToSecurityGroupEgressRuleOutputWithContext

func (i *SecurityGroupEgressRule) ToSecurityGroupEgressRuleOutputWithContext(ctx context.Context) SecurityGroupEgressRuleOutput

type SecurityGroupEgressRuleArgs

type SecurityGroupEgressRuleArgs struct {
	// The destination IPv4 CIDR range.
	CidrIpv4 pulumi.StringPtrInput
	// The destination IPv6 CIDR range.
	CidrIpv6 pulumi.StringPtrInput
	// The security group rule description.
	Description pulumi.StringPtrInput
	// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.
	FromPort pulumi.IntPtrInput
	// The IP protocol name or number. Use `-1` to specify all protocols. Note that if `ipProtocol` is set to `-1`, it translates to all protocols, all port ranges, and `fromPort` and `toPort` values should not be defined.
	IpProtocol pulumi.StringInput
	// The ID of the destination prefix list.
	PrefixListId pulumi.StringPtrInput
	// The destination security group that is referenced in the rule.
	ReferencedSecurityGroupId pulumi.StringPtrInput
	// The ID of the security group.
	SecurityGroupId pulumi.StringInput
	// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
	ToPort pulumi.IntPtrInput
}

The set of arguments for constructing a SecurityGroupEgressRule resource.

func (SecurityGroupEgressRuleArgs) ElementType

type SecurityGroupEgressRuleArray

type SecurityGroupEgressRuleArray []SecurityGroupEgressRuleInput

func (SecurityGroupEgressRuleArray) ElementType

func (SecurityGroupEgressRuleArray) ToSecurityGroupEgressRuleArrayOutput

func (i SecurityGroupEgressRuleArray) ToSecurityGroupEgressRuleArrayOutput() SecurityGroupEgressRuleArrayOutput

func (SecurityGroupEgressRuleArray) ToSecurityGroupEgressRuleArrayOutputWithContext

func (i SecurityGroupEgressRuleArray) ToSecurityGroupEgressRuleArrayOutputWithContext(ctx context.Context) SecurityGroupEgressRuleArrayOutput

type SecurityGroupEgressRuleArrayInput

type SecurityGroupEgressRuleArrayInput interface {
	pulumi.Input

	ToSecurityGroupEgressRuleArrayOutput() SecurityGroupEgressRuleArrayOutput
	ToSecurityGroupEgressRuleArrayOutputWithContext(context.Context) SecurityGroupEgressRuleArrayOutput
}

SecurityGroupEgressRuleArrayInput is an input type that accepts SecurityGroupEgressRuleArray and SecurityGroupEgressRuleArrayOutput values. You can construct a concrete instance of `SecurityGroupEgressRuleArrayInput` via:

SecurityGroupEgressRuleArray{ SecurityGroupEgressRuleArgs{...} }

type SecurityGroupEgressRuleArrayOutput

type SecurityGroupEgressRuleArrayOutput struct{ *pulumi.OutputState }

func (SecurityGroupEgressRuleArrayOutput) ElementType

func (SecurityGroupEgressRuleArrayOutput) Index

func (SecurityGroupEgressRuleArrayOutput) ToSecurityGroupEgressRuleArrayOutput

func (o SecurityGroupEgressRuleArrayOutput) ToSecurityGroupEgressRuleArrayOutput() SecurityGroupEgressRuleArrayOutput

func (SecurityGroupEgressRuleArrayOutput) ToSecurityGroupEgressRuleArrayOutputWithContext

func (o SecurityGroupEgressRuleArrayOutput) ToSecurityGroupEgressRuleArrayOutputWithContext(ctx context.Context) SecurityGroupEgressRuleArrayOutput

type SecurityGroupEgressRuleInput

type SecurityGroupEgressRuleInput interface {
	pulumi.Input

	ToSecurityGroupEgressRuleOutput() SecurityGroupEgressRuleOutput
	ToSecurityGroupEgressRuleOutputWithContext(ctx context.Context) SecurityGroupEgressRuleOutput
}

type SecurityGroupEgressRuleMap

type SecurityGroupEgressRuleMap map[string]SecurityGroupEgressRuleInput

func (SecurityGroupEgressRuleMap) ElementType

func (SecurityGroupEgressRuleMap) ElementType() reflect.Type

func (SecurityGroupEgressRuleMap) ToSecurityGroupEgressRuleMapOutput

func (i SecurityGroupEgressRuleMap) ToSecurityGroupEgressRuleMapOutput() SecurityGroupEgressRuleMapOutput

func (SecurityGroupEgressRuleMap) ToSecurityGroupEgressRuleMapOutputWithContext

func (i SecurityGroupEgressRuleMap) ToSecurityGroupEgressRuleMapOutputWithContext(ctx context.Context) SecurityGroupEgressRuleMapOutput

type SecurityGroupEgressRuleMapInput

type SecurityGroupEgressRuleMapInput interface {
	pulumi.Input

	ToSecurityGroupEgressRuleMapOutput() SecurityGroupEgressRuleMapOutput
	ToSecurityGroupEgressRuleMapOutputWithContext(context.Context) SecurityGroupEgressRuleMapOutput
}

SecurityGroupEgressRuleMapInput is an input type that accepts SecurityGroupEgressRuleMap and SecurityGroupEgressRuleMapOutput values. You can construct a concrete instance of `SecurityGroupEgressRuleMapInput` via:

SecurityGroupEgressRuleMap{ "key": SecurityGroupEgressRuleArgs{...} }

type SecurityGroupEgressRuleMapOutput

type SecurityGroupEgressRuleMapOutput struct{ *pulumi.OutputState }

func (SecurityGroupEgressRuleMapOutput) ElementType

func (SecurityGroupEgressRuleMapOutput) MapIndex

func (SecurityGroupEgressRuleMapOutput) ToSecurityGroupEgressRuleMapOutput

func (o SecurityGroupEgressRuleMapOutput) ToSecurityGroupEgressRuleMapOutput() SecurityGroupEgressRuleMapOutput

func (SecurityGroupEgressRuleMapOutput) ToSecurityGroupEgressRuleMapOutputWithContext

func (o SecurityGroupEgressRuleMapOutput) ToSecurityGroupEgressRuleMapOutputWithContext(ctx context.Context) SecurityGroupEgressRuleMapOutput

type SecurityGroupEgressRuleOutput

type SecurityGroupEgressRuleOutput struct{ *pulumi.OutputState }

func (SecurityGroupEgressRuleOutput) Arn

The Amazon Resource Name (ARN) of the security group rule.

func (SecurityGroupEgressRuleOutput) CidrIpv4

The destination IPv4 CIDR range.

func (SecurityGroupEgressRuleOutput) CidrIpv6

The destination IPv6 CIDR range.

func (SecurityGroupEgressRuleOutput) Description

The security group rule description.

func (SecurityGroupEgressRuleOutput) ElementType

func (SecurityGroupEgressRuleOutput) FromPort

The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.

func (SecurityGroupEgressRuleOutput) IpProtocol

The IP protocol name or number. Use `-1` to specify all protocols. Note that if `ipProtocol` is set to `-1`, it translates to all protocols, all port ranges, and `fromPort` and `toPort` values should not be defined.

func (SecurityGroupEgressRuleOutput) PrefixListId

The ID of the destination prefix list.

func (SecurityGroupEgressRuleOutput) ReferencedSecurityGroupId

func (o SecurityGroupEgressRuleOutput) ReferencedSecurityGroupId() pulumi.StringPtrOutput

The destination security group that is referenced in the rule.

func (SecurityGroupEgressRuleOutput) SecurityGroupId

The ID of the security group.

func (SecurityGroupEgressRuleOutput) SecurityGroupRuleId

func (o SecurityGroupEgressRuleOutput) SecurityGroupRuleId() pulumi.StringOutput

The ID of the security group rule.

func (SecurityGroupEgressRuleOutput) Tags

A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (SecurityGroupEgressRuleOutput) TagsAll deprecated

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

Deprecated: Please use `tags` instead.

func (SecurityGroupEgressRuleOutput) ToPort

The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.

func (SecurityGroupEgressRuleOutput) ToSecurityGroupEgressRuleOutput

func (o SecurityGroupEgressRuleOutput) ToSecurityGroupEgressRuleOutput() SecurityGroupEgressRuleOutput

func (SecurityGroupEgressRuleOutput) ToSecurityGroupEgressRuleOutputWithContext

func (o SecurityGroupEgressRuleOutput) ToSecurityGroupEgressRuleOutputWithContext(ctx context.Context) SecurityGroupEgressRuleOutput

type SecurityGroupEgressRuleState

type SecurityGroupEgressRuleState struct {
	// The Amazon Resource Name (ARN) of the security group rule.
	Arn pulumi.StringPtrInput
	// The destination IPv4 CIDR range.
	CidrIpv4 pulumi.StringPtrInput
	// The destination IPv6 CIDR range.
	CidrIpv6 pulumi.StringPtrInput
	// The security group rule description.
	Description pulumi.StringPtrInput
	// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.
	FromPort pulumi.IntPtrInput
	// The IP protocol name or number. Use `-1` to specify all protocols. Note that if `ipProtocol` is set to `-1`, it translates to all protocols, all port ranges, and `fromPort` and `toPort` values should not be defined.
	IpProtocol pulumi.StringPtrInput
	// The ID of the destination prefix list.
	PrefixListId pulumi.StringPtrInput
	// The destination security group that is referenced in the rule.
	ReferencedSecurityGroupId pulumi.StringPtrInput
	// The ID of the security group.
	SecurityGroupId pulumi.StringPtrInput
	// The ID of the security group rule.
	SecurityGroupRuleId pulumi.StringPtrInput
	// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
	// The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
	ToPort pulumi.IntPtrInput
}

func (SecurityGroupEgressRuleState) ElementType

type SecurityGroupIngressRule

type SecurityGroupIngressRule struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) of the security group rule.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The source IPv4 CIDR range.
	CidrIpv4 pulumi.StringPtrOutput `pulumi:"cidrIpv4"`
	// The source IPv6 CIDR range.
	CidrIpv6 pulumi.StringPtrOutput `pulumi:"cidrIpv6"`
	// The security group rule description.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.
	FromPort pulumi.IntPtrOutput `pulumi:"fromPort"`
	// The IP protocol name or number. Use `-1` to specify all protocols. Note that if `ipProtocol` is set to `-1`, it translates to all protocols, all port ranges, and `fromPort` and `toPort` values should not be defined.
	IpProtocol pulumi.StringOutput `pulumi:"ipProtocol"`
	// The ID of the source prefix list.
	PrefixListId pulumi.StringPtrOutput `pulumi:"prefixListId"`
	// The source security group that is referenced in the rule.
	ReferencedSecurityGroupId pulumi.StringPtrOutput `pulumi:"referencedSecurityGroupId"`
	// The ID of the security group.
	SecurityGroupId pulumi.StringOutput `pulumi:"securityGroupId"`
	// The ID of the security group rule.
	SecurityGroupRuleId pulumi.StringOutput `pulumi:"securityGroupRuleId"`
	// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
	ToPort pulumi.IntPtrOutput `pulumi:"toPort"`
}

Manages an inbound (ingress) rule for a security group.

When specifying an inbound rule for your security group in a VPC, the configuration must include a source for the traffic.

> **NOTE on Security Groups and Security Group Rules:** this provider currently provides a Security Group resource with `ingress` and `egress` rules defined in-line and a Security Group Rule resource which manages one or more `ingress` or `egress` rules. Both of these resource were added before AWS assigned a [security group rule unique ID](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-rules.html), and they do not work well in all scenarios using the`description` and `tags` attributes, which rely on the unique ID. The `vpc.SecurityGroupIngressRule` resource has been added to address these limitations and should be used for all new security group rules. You should not use the `vpc.SecurityGroupIngressRule` resource in conjunction with an `ec2.SecurityGroup` resource with in-line rules or with `ec2.SecurityGroupRule` resources defined for the same Security Group, as rule conflicts may occur and rules will be overwritten.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ec2.NewSecurityGroup(ctx, "example", &ec2.SecurityGroupArgs{
			Name:        pulumi.String("example"),
			Description: pulumi.String("example"),
			VpcId:       pulumi.Any(main.Id),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("example"),
			},
		})
		if err != nil {
			return err
		}
		_, err = vpc.NewSecurityGroupIngressRule(ctx, "example", &vpc.SecurityGroupIngressRuleArgs{
			SecurityGroupId: example.ID(),
			CidrIpv4:        pulumi.String("10.0.0.0/8"),
			FromPort:        pulumi.Int(80),
			IpProtocol:      pulumi.String("tcp"),
			ToPort:          pulumi.Int(80),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import security group ingress rules using the `security_group_rule_id`. For example:

```sh

$ pulumi import aws:vpc/securityGroupIngressRule:SecurityGroupIngressRule example sgr-02108b27edd666983

```

func GetSecurityGroupIngressRule

func GetSecurityGroupIngressRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SecurityGroupIngressRuleState, opts ...pulumi.ResourceOption) (*SecurityGroupIngressRule, error)

GetSecurityGroupIngressRule gets an existing SecurityGroupIngressRule resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSecurityGroupIngressRule

func NewSecurityGroupIngressRule(ctx *pulumi.Context,
	name string, args *SecurityGroupIngressRuleArgs, opts ...pulumi.ResourceOption) (*SecurityGroupIngressRule, error)

NewSecurityGroupIngressRule registers a new resource with the given unique name, arguments, and options.

func (*SecurityGroupIngressRule) ElementType

func (*SecurityGroupIngressRule) ElementType() reflect.Type

func (*SecurityGroupIngressRule) ToSecurityGroupIngressRuleOutput

func (i *SecurityGroupIngressRule) ToSecurityGroupIngressRuleOutput() SecurityGroupIngressRuleOutput

func (*SecurityGroupIngressRule) ToSecurityGroupIngressRuleOutputWithContext

func (i *SecurityGroupIngressRule) ToSecurityGroupIngressRuleOutputWithContext(ctx context.Context) SecurityGroupIngressRuleOutput

type SecurityGroupIngressRuleArgs

type SecurityGroupIngressRuleArgs struct {
	// The source IPv4 CIDR range.
	CidrIpv4 pulumi.StringPtrInput
	// The source IPv6 CIDR range.
	CidrIpv6 pulumi.StringPtrInput
	// The security group rule description.
	Description pulumi.StringPtrInput
	// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.
	FromPort pulumi.IntPtrInput
	// The IP protocol name or number. Use `-1` to specify all protocols. Note that if `ipProtocol` is set to `-1`, it translates to all protocols, all port ranges, and `fromPort` and `toPort` values should not be defined.
	IpProtocol pulumi.StringInput
	// The ID of the source prefix list.
	PrefixListId pulumi.StringPtrInput
	// The source security group that is referenced in the rule.
	ReferencedSecurityGroupId pulumi.StringPtrInput
	// The ID of the security group.
	SecurityGroupId pulumi.StringInput
	// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
	ToPort pulumi.IntPtrInput
}

The set of arguments for constructing a SecurityGroupIngressRule resource.

func (SecurityGroupIngressRuleArgs) ElementType

type SecurityGroupIngressRuleArray

type SecurityGroupIngressRuleArray []SecurityGroupIngressRuleInput

func (SecurityGroupIngressRuleArray) ElementType

func (SecurityGroupIngressRuleArray) ToSecurityGroupIngressRuleArrayOutput

func (i SecurityGroupIngressRuleArray) ToSecurityGroupIngressRuleArrayOutput() SecurityGroupIngressRuleArrayOutput

func (SecurityGroupIngressRuleArray) ToSecurityGroupIngressRuleArrayOutputWithContext

func (i SecurityGroupIngressRuleArray) ToSecurityGroupIngressRuleArrayOutputWithContext(ctx context.Context) SecurityGroupIngressRuleArrayOutput

type SecurityGroupIngressRuleArrayInput

type SecurityGroupIngressRuleArrayInput interface {
	pulumi.Input

	ToSecurityGroupIngressRuleArrayOutput() SecurityGroupIngressRuleArrayOutput
	ToSecurityGroupIngressRuleArrayOutputWithContext(context.Context) SecurityGroupIngressRuleArrayOutput
}

SecurityGroupIngressRuleArrayInput is an input type that accepts SecurityGroupIngressRuleArray and SecurityGroupIngressRuleArrayOutput values. You can construct a concrete instance of `SecurityGroupIngressRuleArrayInput` via:

SecurityGroupIngressRuleArray{ SecurityGroupIngressRuleArgs{...} }

type SecurityGroupIngressRuleArrayOutput

type SecurityGroupIngressRuleArrayOutput struct{ *pulumi.OutputState }

func (SecurityGroupIngressRuleArrayOutput) ElementType

func (SecurityGroupIngressRuleArrayOutput) Index

func (SecurityGroupIngressRuleArrayOutput) ToSecurityGroupIngressRuleArrayOutput

func (o SecurityGroupIngressRuleArrayOutput) ToSecurityGroupIngressRuleArrayOutput() SecurityGroupIngressRuleArrayOutput

func (SecurityGroupIngressRuleArrayOutput) ToSecurityGroupIngressRuleArrayOutputWithContext

func (o SecurityGroupIngressRuleArrayOutput) ToSecurityGroupIngressRuleArrayOutputWithContext(ctx context.Context) SecurityGroupIngressRuleArrayOutput

type SecurityGroupIngressRuleInput

type SecurityGroupIngressRuleInput interface {
	pulumi.Input

	ToSecurityGroupIngressRuleOutput() SecurityGroupIngressRuleOutput
	ToSecurityGroupIngressRuleOutputWithContext(ctx context.Context) SecurityGroupIngressRuleOutput
}

type SecurityGroupIngressRuleMap

type SecurityGroupIngressRuleMap map[string]SecurityGroupIngressRuleInput

func (SecurityGroupIngressRuleMap) ElementType

func (SecurityGroupIngressRuleMap) ToSecurityGroupIngressRuleMapOutput

func (i SecurityGroupIngressRuleMap) ToSecurityGroupIngressRuleMapOutput() SecurityGroupIngressRuleMapOutput

func (SecurityGroupIngressRuleMap) ToSecurityGroupIngressRuleMapOutputWithContext

func (i SecurityGroupIngressRuleMap) ToSecurityGroupIngressRuleMapOutputWithContext(ctx context.Context) SecurityGroupIngressRuleMapOutput

type SecurityGroupIngressRuleMapInput

type SecurityGroupIngressRuleMapInput interface {
	pulumi.Input

	ToSecurityGroupIngressRuleMapOutput() SecurityGroupIngressRuleMapOutput
	ToSecurityGroupIngressRuleMapOutputWithContext(context.Context) SecurityGroupIngressRuleMapOutput
}

SecurityGroupIngressRuleMapInput is an input type that accepts SecurityGroupIngressRuleMap and SecurityGroupIngressRuleMapOutput values. You can construct a concrete instance of `SecurityGroupIngressRuleMapInput` via:

SecurityGroupIngressRuleMap{ "key": SecurityGroupIngressRuleArgs{...} }

type SecurityGroupIngressRuleMapOutput

type SecurityGroupIngressRuleMapOutput struct{ *pulumi.OutputState }

func (SecurityGroupIngressRuleMapOutput) ElementType

func (SecurityGroupIngressRuleMapOutput) MapIndex

func (SecurityGroupIngressRuleMapOutput) ToSecurityGroupIngressRuleMapOutput

func (o SecurityGroupIngressRuleMapOutput) ToSecurityGroupIngressRuleMapOutput() SecurityGroupIngressRuleMapOutput

func (SecurityGroupIngressRuleMapOutput) ToSecurityGroupIngressRuleMapOutputWithContext

func (o SecurityGroupIngressRuleMapOutput) ToSecurityGroupIngressRuleMapOutputWithContext(ctx context.Context) SecurityGroupIngressRuleMapOutput

type SecurityGroupIngressRuleOutput

type SecurityGroupIngressRuleOutput struct{ *pulumi.OutputState }

func (SecurityGroupIngressRuleOutput) Arn

The Amazon Resource Name (ARN) of the security group rule.

func (SecurityGroupIngressRuleOutput) CidrIpv4

The source IPv4 CIDR range.

func (SecurityGroupIngressRuleOutput) CidrIpv6

The source IPv6 CIDR range.

func (SecurityGroupIngressRuleOutput) Description

The security group rule description.

func (SecurityGroupIngressRuleOutput) ElementType

func (SecurityGroupIngressRuleOutput) FromPort

The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.

func (SecurityGroupIngressRuleOutput) IpProtocol

The IP protocol name or number. Use `-1` to specify all protocols. Note that if `ipProtocol` is set to `-1`, it translates to all protocols, all port ranges, and `fromPort` and `toPort` values should not be defined.

func (SecurityGroupIngressRuleOutput) PrefixListId

The ID of the source prefix list.

func (SecurityGroupIngressRuleOutput) ReferencedSecurityGroupId

func (o SecurityGroupIngressRuleOutput) ReferencedSecurityGroupId() pulumi.StringPtrOutput

The source security group that is referenced in the rule.

func (SecurityGroupIngressRuleOutput) SecurityGroupId

The ID of the security group.

func (SecurityGroupIngressRuleOutput) SecurityGroupRuleId

func (o SecurityGroupIngressRuleOutput) SecurityGroupRuleId() pulumi.StringOutput

The ID of the security group rule.

func (SecurityGroupIngressRuleOutput) Tags

A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (SecurityGroupIngressRuleOutput) TagsAll deprecated

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

Deprecated: Please use `tags` instead.

func (SecurityGroupIngressRuleOutput) ToPort

The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.

func (SecurityGroupIngressRuleOutput) ToSecurityGroupIngressRuleOutput

func (o SecurityGroupIngressRuleOutput) ToSecurityGroupIngressRuleOutput() SecurityGroupIngressRuleOutput

func (SecurityGroupIngressRuleOutput) ToSecurityGroupIngressRuleOutputWithContext

func (o SecurityGroupIngressRuleOutput) ToSecurityGroupIngressRuleOutputWithContext(ctx context.Context) SecurityGroupIngressRuleOutput

type SecurityGroupIngressRuleState

type SecurityGroupIngressRuleState struct {
	// The Amazon Resource Name (ARN) of the security group rule.
	Arn pulumi.StringPtrInput
	// The source IPv4 CIDR range.
	CidrIpv4 pulumi.StringPtrInput
	// The source IPv6 CIDR range.
	CidrIpv6 pulumi.StringPtrInput
	// The security group rule description.
	Description pulumi.StringPtrInput
	// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type.
	FromPort pulumi.IntPtrInput
	// The IP protocol name or number. Use `-1` to specify all protocols. Note that if `ipProtocol` is set to `-1`, it translates to all protocols, all port ranges, and `fromPort` and `toPort` values should not be defined.
	IpProtocol pulumi.StringPtrInput
	// The ID of the source prefix list.
	PrefixListId pulumi.StringPtrInput
	// The source security group that is referenced in the rule.
	ReferencedSecurityGroupId pulumi.StringPtrInput
	// The ID of the security group.
	SecurityGroupId pulumi.StringPtrInput
	// The ID of the security group rule.
	SecurityGroupRuleId pulumi.StringPtrInput
	// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
	// The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
	ToPort pulumi.IntPtrInput
}

func (SecurityGroupIngressRuleState) ElementType

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL