amazonka-ec2-1.6.1: 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.RevokeSecurityGroupIngress

Contents

Description

Removes one or more ingress rules from a security group. To remove a rule, the values that you specify (for example, ports) must match the existing rule's values exactly.

Each rule consists of the protocol and the CIDR range or source security group. For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code. If the security group rule has a description, you do not have to specify the description to revoke the rule.

Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.

Synopsis

Creating a Request

revokeSecurityGroupIngress :: RevokeSecurityGroupIngress Source #

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

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

  • rsgiFromPort - The start of port range for the TCP and UDP protocols, or an ICMP type number. For the ICMP type number, use -1 to specify all ICMP types.
  • rsgiIPPermissions - One or more sets of IP permissions. You can't specify a source security group and a CIDR IP address range in the same set of permissions.
  • rsgiIPProtocol - The IP protocol name (tcp , udp , icmp ) or number (see Protocol Numbers ). Use -1 to specify all.
  • rsgiGroupId - The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.
  • rsgiToPort - The end of port range for the TCP and UDP protocols, or an ICMP code number. For the ICMP code number, use -1 to specify all ICMP codes for the ICMP type.
  • rsgiCidrIP - The CIDR IP address range. You can't specify this parameter when specifying a source security group.
  • rsgiSourceSecurityGroupOwnerId - [EC2-Classic] The AWS account ID of the source security group, if the source security group is in a different account. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the IP protocol, the start of the port range, and the end of the port range. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.
  • rsgiGroupName - [EC2-Classic, default VPC] The name of the security group. You must specify either the security group ID or the security group name in the request.
  • rsgiSourceSecurityGroupName - [EC2-Classic, default VPC] The name of the source security group. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the start of the port range, the IP protocol, and the end of the port range. For EC2-VPC, the source security group must be in the same VPC. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.
  • rsgiDryRun - 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 RevokeSecurityGroupIngress Source #

Contains the parameters for RevokeSecurityGroupIngress.

See: revokeSecurityGroupIngress smart constructor.

Instances
Eq RevokeSecurityGroupIngress Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

Data RevokeSecurityGroupIngress Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

Methods

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

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

toConstr :: RevokeSecurityGroupIngress -> Constr #

dataTypeOf :: RevokeSecurityGroupIngress -> DataType #

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

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

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

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

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

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

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

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

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

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

Read RevokeSecurityGroupIngress Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

Show RevokeSecurityGroupIngress Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

Generic RevokeSecurityGroupIngress Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

Associated Types

type Rep RevokeSecurityGroupIngress :: Type -> Type #

Hashable RevokeSecurityGroupIngress Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

AWSRequest RevokeSecurityGroupIngress Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

Associated Types

type Rs RevokeSecurityGroupIngress :: Type #

ToHeaders RevokeSecurityGroupIngress Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

ToPath RevokeSecurityGroupIngress Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

ToQuery RevokeSecurityGroupIngress Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

NFData RevokeSecurityGroupIngress Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

type Rep RevokeSecurityGroupIngress Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

type Rep RevokeSecurityGroupIngress = D1 (MetaData "RevokeSecurityGroupIngress" "Network.AWS.EC2.RevokeSecurityGroupIngress" "amazonka-ec2-1.6.1-GgG1M0FWcBrE5I5IM2QktE" False) (C1 (MetaCons "RevokeSecurityGroupIngress'" PrefixI True) (((S1 (MetaSel (Just "_rsgiFromPort") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Int)) :*: S1 (MetaSel (Just "_rsgiIPPermissions") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe [IPPermission]))) :*: (S1 (MetaSel (Just "_rsgiIPProtocol") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: (S1 (MetaSel (Just "_rsgiGroupId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "_rsgiToPort") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Int))))) :*: ((S1 (MetaSel (Just "_rsgiCidrIP") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "_rsgiSourceSecurityGroupOwnerId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 (MetaSel (Just "_rsgiGroupName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: (S1 (MetaSel (Just "_rsgiSourceSecurityGroupName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "_rsgiDryRun") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Bool)))))))
type Rs RevokeSecurityGroupIngress Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

Request Lenses

rsgiFromPort :: Lens' RevokeSecurityGroupIngress (Maybe Int) Source #

The start of port range for the TCP and UDP protocols, or an ICMP type number. For the ICMP type number, use -1 to specify all ICMP types.

rsgiIPPermissions :: Lens' RevokeSecurityGroupIngress [IPPermission] Source #

One or more sets of IP permissions. You can't specify a source security group and a CIDR IP address range in the same set of permissions.

rsgiIPProtocol :: Lens' RevokeSecurityGroupIngress (Maybe Text) Source #

The IP protocol name (tcp , udp , icmp ) or number (see Protocol Numbers ). Use -1 to specify all.

rsgiGroupId :: Lens' RevokeSecurityGroupIngress (Maybe Text) Source #

The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.

rsgiToPort :: Lens' RevokeSecurityGroupIngress (Maybe Int) Source #

The end of port range for the TCP and UDP protocols, or an ICMP code number. For the ICMP code number, use -1 to specify all ICMP codes for the ICMP type.

rsgiCidrIP :: Lens' RevokeSecurityGroupIngress (Maybe Text) Source #

The CIDR IP address range. You can't specify this parameter when specifying a source security group.

rsgiSourceSecurityGroupOwnerId :: Lens' RevokeSecurityGroupIngress (Maybe Text) Source #

EC2-Classic
The AWS account ID of the source security group, if the source security group is in a different account. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the IP protocol, the start of the port range, and the end of the port range. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.

rsgiGroupName :: Lens' RevokeSecurityGroupIngress (Maybe Text) Source #

EC2-Classic, default VPC
The name of the security group. You must specify either the security group ID or the security group name in the request.

rsgiSourceSecurityGroupName :: Lens' RevokeSecurityGroupIngress (Maybe Text) Source #

EC2-Classic, default VPC
The name of the source security group. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the start of the port range, the IP protocol, and the end of the port range. For EC2-VPC, the source security group must be in the same VPC. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.

rsgiDryRun :: Lens' RevokeSecurityGroupIngress (Maybe Bool) Source #

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

revokeSecurityGroupIngressResponse :: RevokeSecurityGroupIngressResponse Source #

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

data RevokeSecurityGroupIngressResponse Source #

See: revokeSecurityGroupIngressResponse smart constructor.

Instances
Eq RevokeSecurityGroupIngressResponse Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

Data RevokeSecurityGroupIngressResponse Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

Methods

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

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

toConstr :: RevokeSecurityGroupIngressResponse -> Constr #

dataTypeOf :: RevokeSecurityGroupIngressResponse -> DataType #

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

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

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

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

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

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

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

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

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

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

Read RevokeSecurityGroupIngressResponse Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

Show RevokeSecurityGroupIngressResponse Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

Generic RevokeSecurityGroupIngressResponse Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

Associated Types

type Rep RevokeSecurityGroupIngressResponse :: Type -> Type #

NFData RevokeSecurityGroupIngressResponse Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

type Rep RevokeSecurityGroupIngressResponse Source # 
Instance details

Defined in Network.AWS.EC2.RevokeSecurityGroupIngress

type Rep RevokeSecurityGroupIngressResponse = D1 (MetaData "RevokeSecurityGroupIngressResponse" "Network.AWS.EC2.RevokeSecurityGroupIngress" "amazonka-ec2-1.6.1-GgG1M0FWcBrE5I5IM2QktE" False) (C1 (MetaCons "RevokeSecurityGroupIngressResponse'" PrefixI False) (U1 :: Type -> Type))