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

Copyright(c) 2013-2016 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay@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 .

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.prefix-list-id - The ID (prefix) of the AWS service to which the security group allows access. * group-id - The ID of the security group. * group-name - The name of the security group. * ip-permission.cidr - An IPv4 CIDR range that has been granted permission in a security group rule. * ip-permission.from-port - 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 granted permission. * ip-permission.group-name - The name of a security group that has been granted permission. * ip-permission.ipv6-cidr - An IPv6 CIDR range that has been granted permission in a security group rule. * ip-permission.protocol - The IP protocol for the permission (tcp | udp | icmp or a protocol number). * ip-permission.to-port - 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 granted permission. * 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.
  • 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 .

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 -> () #

AWSRequest DescribeSecurityGroups # 
ToQuery DescribeSecurityGroups # 
ToPath DescribeSecurityGroups # 
ToHeaders DescribeSecurityGroups # 
type Rep DescribeSecurityGroups # 
type Rep DescribeSecurityGroups = D1 (MetaData "DescribeSecurityGroups" "Network.AWS.EC2.DescribeSecurityGroups" "amazonka-ec2-1.4.5-C4CR35JggG2GhWFrIiKGhu" 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 "_dsgsDryRun") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Bool))))))
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.prefix-list-id - The ID (prefix) of the AWS service to which the security group allows access. * group-id - The ID of the security group. * group-name - The name of the security group. * ip-permission.cidr - An IPv4 CIDR range that has been granted permission in a security group rule. * ip-permission.from-port - 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 granted permission. * ip-permission.group-name - The name of a security group that has been granted permission. * ip-permission.ipv6-cidr - An IPv6 CIDR range that has been granted permission in a security group rule. * ip-permission.protocol - The IP protocol for the permission (tcp | udp | icmp or a protocol number). * ip-permission.to-port - 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 granted permission. * 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.

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 .

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.4.5-C4CR35JggG2GhWFrIiKGhu" False) (C1 (MetaCons "DescribeSecurityGroupsResponse'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_dsgrsSecurityGroups") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe [SecurityGroup]))) (S1 (MetaSel (Just Symbol "_dsgrsResponseStatus") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Int))))

Response Lenses

dsgrsSecurityGroups :: Lens' DescribeSecurityGroupsResponse [SecurityGroup] #

Information about one or more security groups.