amazonka-ec2-1.6.0: Amazon Elastic Compute Cloud SDK.

Copyright(c) 2013-2018 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay+amazonka@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.AWS.EC2.DescribeSecurityGroups

Contents

Description

Describes one or more of your security groups.

A security group is for use with instances either in the EC2-Classic platform or in a specific VPC. For more information, see Amazon EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide and Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide .

This operation returns paginated results.

Synopsis

Creating a Request

describeSecurityGroups :: DescribeSecurityGroups #

Creates a value of DescribeSecurityGroups with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • dsgsFilters - One or more filters. If using multiple filters for rules, the results include security groups for which any combination of rules - not necessarily a single rule - match all filters. * description - The description of the security group. * egress.ip-permission.cidr - An IPv4 CIDR block for an outbound security group rule. * egress.ip-permission.from-port - For an outbound rule, the start of port range for the TCP and UDP protocols, or an ICMP type number. * egress.ip-permission.group-id - The ID of a security group that has been referenced in an outbound security group rule. * egress.ip-permission.group-name - The name of a security group that has been referenced in an outbound security group rule. * egress.ip-permission.ipv6-cidr - An IPv6 CIDR block for an outbound security group rule. * egress.ip-permission.prefix-list-id - The ID (prefix) of the AWS service to which a security group rule allows outbound access. * egress.ip-permission.protocol - The IP protocol for an outbound security group rule (tcp | udp | icmp or a protocol number). * egress.ip-permission.to-port - For an outbound rule, the end of port range for the TCP and UDP protocols, or an ICMP code. * egress.ip-permission.user-id - The ID of an AWS account that has been referenced in an outbound security group rule. * group-id - The ID of the security group. * group-name - The name of the security group. * ip-permission.cidr - An IPv4 CIDR block for an inbound security group rule. * ip-permission.from-port - For an inbound rule, the start of port range for the TCP and UDP protocols, or an ICMP type number. * ip-permission.group-id - The ID of a security group that has been referenced in an inbound security group rule. * ip-permission.group-name - The name of a security group that has been referenced in an inbound security group rule. * ip-permission.ipv6-cidr - An IPv6 CIDR block for an inbound security group rule. * ip-permission.prefix-list-id - The ID (prefix) of the AWS service from which a security group rule allows inbound access. * ip-permission.protocol - The IP protocol for an inbound security group rule (tcp | udp | icmp or a protocol number). * ip-permission.to-port - For an inbound rule, the end of port range for the TCP and UDP protocols, or an ICMP code. * ip-permission.user-id - The ID of an AWS account that has been referenced in an inbound security group rule. * owner-id - The AWS account ID of the owner of the security group. * tag-key - The key of a tag assigned to the security group. * tag-value - The value of a tag assigned to the security group. * vpc-id - The ID of the VPC specified when the security group was created.
  • dsgsGroupNames - [EC2-Classic and default VPC only] One or more security group names. You can specify either the security group name or the security group ID. For security groups in a nondefault VPC, use the group-name filter to describe security groups by name. Default: Describes all your security groups.
  • dsgsGroupIds - One or more security group IDs. Required for security groups in a nondefault VPC. Default: Describes all your security groups.
  • dsgsNextToken - The token to request the next page of results.
  • dsgsDryRun - Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation . Otherwise, it is UnauthorizedOperation .
  • dsgsMaxResults - The maximum number of results to return in a single call. To retrieve the remaining results, make another request with the returned NextToken value. This value can be between 5 and 1000. If this parameter is not specified, then all results are returned.

data DescribeSecurityGroups #

Contains the parameters for DescribeSecurityGroups.

See: describeSecurityGroups smart constructor.

Instances

Eq DescribeSecurityGroups # 
Data DescribeSecurityGroups # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DescribeSecurityGroups -> c DescribeSecurityGroups #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DescribeSecurityGroups #

toConstr :: DescribeSecurityGroups -> Constr #

dataTypeOf :: DescribeSecurityGroups -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c DescribeSecurityGroups) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DescribeSecurityGroups) #

gmapT :: (forall b. Data b => b -> b) -> DescribeSecurityGroups -> DescribeSecurityGroups #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DescribeSecurityGroups -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DescribeSecurityGroups -> r #

gmapQ :: (forall d. Data d => d -> u) -> DescribeSecurityGroups -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> DescribeSecurityGroups -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> DescribeSecurityGroups -> m DescribeSecurityGroups #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DescribeSecurityGroups -> m DescribeSecurityGroups #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DescribeSecurityGroups -> m DescribeSecurityGroups #

Read DescribeSecurityGroups # 
Show DescribeSecurityGroups # 
Generic DescribeSecurityGroups # 
Hashable DescribeSecurityGroups # 
NFData DescribeSecurityGroups # 

Methods

rnf :: DescribeSecurityGroups -> () #

AWSPager DescribeSecurityGroups # 
AWSRequest DescribeSecurityGroups # 
ToHeaders DescribeSecurityGroups # 
ToPath DescribeSecurityGroups # 
ToQuery DescribeSecurityGroups # 
type Rep DescribeSecurityGroups # 
type Rep DescribeSecurityGroups = D1 * (MetaData "DescribeSecurityGroups" "Network.AWS.EC2.DescribeSecurityGroups" "amazonka-ec2-1.6.0-Dm9BQRbqSOK72xbfLZMG4m" False) (C1 * (MetaCons "DescribeSecurityGroups'" PrefixI True) ((:*:) * ((:*:) * (S1 * (MetaSel (Just Symbol "_dsgsFilters") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * (Maybe [Filter]))) ((:*:) * (S1 * (MetaSel (Just Symbol "_dsgsGroupNames") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * (Maybe [Text]))) (S1 * (MetaSel (Just Symbol "_dsgsGroupIds") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * (Maybe [Text]))))) ((:*:) * (S1 * (MetaSel (Just Symbol "_dsgsNextToken") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * (Maybe Text))) ((:*:) * (S1 * (MetaSel (Just Symbol "_dsgsDryRun") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * (Maybe Bool))) (S1 * (MetaSel (Just Symbol "_dsgsMaxResults") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * (Maybe Int)))))))
type Rs DescribeSecurityGroups # 

Request Lenses

dsgsFilters :: Lens' DescribeSecurityGroups [Filter] #

One or more filters. If using multiple filters for rules, the results include security groups for which any combination of rules - not necessarily a single rule - match all filters. * description - The description of the security group. * egress.ip-permission.cidr - An IPv4 CIDR block for an outbound security group rule. * egress.ip-permission.from-port - For an outbound rule, the start of port range for the TCP and UDP protocols, or an ICMP type number. * egress.ip-permission.group-id - The ID of a security group that has been referenced in an outbound security group rule. * egress.ip-permission.group-name - The name of a security group that has been referenced in an outbound security group rule. * egress.ip-permission.ipv6-cidr - An IPv6 CIDR block for an outbound security group rule. * egress.ip-permission.prefix-list-id - The ID (prefix) of the AWS service to which a security group rule allows outbound access. * egress.ip-permission.protocol - The IP protocol for an outbound security group rule (tcp | udp | icmp or a protocol number). * egress.ip-permission.to-port - For an outbound rule, the end of port range for the TCP and UDP protocols, or an ICMP code. * egress.ip-permission.user-id - The ID of an AWS account that has been referenced in an outbound security group rule. * group-id - The ID of the security group. * group-name - The name of the security group. * ip-permission.cidr - An IPv4 CIDR block for an inbound security group rule. * ip-permission.from-port - For an inbound rule, the start of port range for the TCP and UDP protocols, or an ICMP type number. * ip-permission.group-id - The ID of a security group that has been referenced in an inbound security group rule. * ip-permission.group-name - The name of a security group that has been referenced in an inbound security group rule. * ip-permission.ipv6-cidr - An IPv6 CIDR block for an inbound security group rule. * ip-permission.prefix-list-id - The ID (prefix) of the AWS service from which a security group rule allows inbound access. * ip-permission.protocol - The IP protocol for an inbound security group rule (tcp | udp | icmp or a protocol number). * ip-permission.to-port - For an inbound rule, the end of port range for the TCP and UDP protocols, or an ICMP code. * ip-permission.user-id - The ID of an AWS account that has been referenced in an inbound security group rule. * owner-id - The AWS account ID of the owner of the security group. * tag-key - The key of a tag assigned to the security group. * tag-value - The value of a tag assigned to the security group. * vpc-id - The ID of the VPC specified when the security group was created.

dsgsGroupNames :: Lens' DescribeSecurityGroups [Text] #

EC2-Classic and default VPC only
One or more security group names. You can specify either the security group name or the security group ID. For security groups in a nondefault VPC, use the group-name filter to describe security groups by name. Default: Describes all your security groups.

dsgsGroupIds :: Lens' DescribeSecurityGroups [Text] #

One or more security group IDs. Required for security groups in a nondefault VPC. Default: Describes all your security groups.

dsgsNextToken :: Lens' DescribeSecurityGroups (Maybe Text) #

The token to request the next page of results.

dsgsDryRun :: Lens' DescribeSecurityGroups (Maybe Bool) #

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation . Otherwise, it is UnauthorizedOperation .

dsgsMaxResults :: Lens' DescribeSecurityGroups (Maybe Int) #

The maximum number of results to return in a single call. To retrieve the remaining results, make another request with the returned NextToken value. This value can be between 5 and 1000. If this parameter is not specified, then all results are returned.

Destructuring the Response

describeSecurityGroupsResponse #

Creates a value of DescribeSecurityGroupsResponse with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

data DescribeSecurityGroupsResponse #

Contains the output of DescribeSecurityGroups.

See: describeSecurityGroupsResponse smart constructor.

Instances

Eq DescribeSecurityGroupsResponse # 
Data DescribeSecurityGroupsResponse # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DescribeSecurityGroupsResponse -> c DescribeSecurityGroupsResponse #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DescribeSecurityGroupsResponse #

toConstr :: DescribeSecurityGroupsResponse -> Constr #

dataTypeOf :: DescribeSecurityGroupsResponse -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c DescribeSecurityGroupsResponse) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DescribeSecurityGroupsResponse) #

gmapT :: (forall b. Data b => b -> b) -> DescribeSecurityGroupsResponse -> DescribeSecurityGroupsResponse #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DescribeSecurityGroupsResponse -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DescribeSecurityGroupsResponse -> r #

gmapQ :: (forall d. Data d => d -> u) -> DescribeSecurityGroupsResponse -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> DescribeSecurityGroupsResponse -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> DescribeSecurityGroupsResponse -> m DescribeSecurityGroupsResponse #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DescribeSecurityGroupsResponse -> m DescribeSecurityGroupsResponse #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DescribeSecurityGroupsResponse -> m DescribeSecurityGroupsResponse #

Read DescribeSecurityGroupsResponse # 
Show DescribeSecurityGroupsResponse # 
Generic DescribeSecurityGroupsResponse # 
NFData DescribeSecurityGroupsResponse # 
type Rep DescribeSecurityGroupsResponse # 
type Rep DescribeSecurityGroupsResponse = D1 * (MetaData "DescribeSecurityGroupsResponse" "Network.AWS.EC2.DescribeSecurityGroups" "amazonka-ec2-1.6.0-Dm9BQRbqSOK72xbfLZMG4m" False) (C1 * (MetaCons "DescribeSecurityGroupsResponse'" PrefixI True) ((:*:) * (S1 * (MetaSel (Just Symbol "_dsgrsSecurityGroups") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * (Maybe [SecurityGroup]))) ((:*:) * (S1 * (MetaSel (Just Symbol "_dsgrsNextToken") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * (Maybe Text))) (S1 * (MetaSel (Just Symbol "_dsgrsResponseStatus") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 * Int)))))

Response Lenses

dsgrsSecurityGroups :: Lens' DescribeSecurityGroupsResponse [SecurityGroup] #

Information about one or more security groups.

dsgrsNextToken :: Lens' DescribeSecurityGroupsResponse (Maybe Text) #

The token to use to retrieve the next page of results. This value is null when there are no more results to return.