Copyright | (c) 2013-2018 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay <brendan.g.hay+amazonka@gmail.com> |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Language | Haskell2010 |
Synopsis
- shield :: Service
- _InvalidResourceException :: AsError a => Getting (First ServiceError) a ServiceError
- _InvalidParameterException :: AsError a => Getting (First ServiceError) a ServiceError
- _LimitsExceededException :: AsError a => Getting (First ServiceError) a ServiceError
- _InternalErrorException :: AsError a => Getting (First ServiceError) a ServiceError
- _ResourceAlreadyExistsException :: AsError a => Getting (First ServiceError) a ServiceError
- _OptimisticLockException :: AsError a => Getting (First ServiceError) a ServiceError
- _InvalidOperationException :: AsError a => Getting (First ServiceError) a ServiceError
- _LockedSubscriptionException :: AsError a => Getting (First ServiceError) a ServiceError
- _ResourceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
- data AttackLayer
- data AttackPropertyIdentifier
- data SubResourceType
- data SubscriptionState
- data Unit
- data AttackDetail
- attackDetail :: AttackDetail
- adAttackId :: Lens' AttackDetail (Maybe Text)
- adStartTime :: Lens' AttackDetail (Maybe UTCTime)
- adSubResources :: Lens' AttackDetail [SubResourceSummary]
- adMitigations :: Lens' AttackDetail [Mitigation]
- adAttackProperties :: Lens' AttackDetail [AttackProperty]
- adAttackCounters :: Lens' AttackDetail [SummarizedCounter]
- adResourceARN :: Lens' AttackDetail (Maybe Text)
- adEndTime :: Lens' AttackDetail (Maybe UTCTime)
- data AttackProperty
- attackProperty :: AttackProperty
- apAttackLayer :: Lens' AttackProperty (Maybe AttackLayer)
- apTopContributors :: Lens' AttackProperty [Contributor]
- apAttackPropertyIdentifier :: Lens' AttackProperty (Maybe AttackPropertyIdentifier)
- apTotal :: Lens' AttackProperty (Maybe Integer)
- apUnit :: Lens' AttackProperty (Maybe Unit)
- data AttackSummary
- attackSummary :: AttackSummary
- asAttackVectors :: Lens' AttackSummary [AttackVectorDescription]
- asAttackId :: Lens' AttackSummary (Maybe Text)
- asStartTime :: Lens' AttackSummary (Maybe UTCTime)
- asResourceARN :: Lens' AttackSummary (Maybe Text)
- asEndTime :: Lens' AttackSummary (Maybe UTCTime)
- data AttackVectorDescription
- attackVectorDescription :: Text -> AttackVectorDescription
- avdVectorType :: Lens' AttackVectorDescription Text
- data Contributor
- contributor :: Contributor
- cValue :: Lens' Contributor (Maybe Integer)
- cName :: Lens' Contributor (Maybe Text)
- data Mitigation
- mitigation :: Mitigation
- mMitigationName :: Lens' Mitigation (Maybe Text)
- data Protection
- protection :: Protection
- pResourceARN :: Lens' Protection (Maybe Text)
- pName :: Lens' Protection (Maybe Text)
- pId :: Lens' Protection (Maybe Text)
- data SubResourceSummary
- subResourceSummary :: SubResourceSummary
- srsCounters :: Lens' SubResourceSummary [SummarizedCounter]
- srsAttackVectors :: Lens' SubResourceSummary [SummarizedAttackVector]
- srsId :: Lens' SubResourceSummary (Maybe Text)
- srsType :: Lens' SubResourceSummary (Maybe SubResourceType)
- data Subscription
- subscription :: Subscription
- sTimeCommitmentInSeconds :: Lens' Subscription (Maybe Natural)
- sStartTime :: Lens' Subscription (Maybe UTCTime)
- data SummarizedAttackVector
- summarizedAttackVector :: Text -> SummarizedAttackVector
- savVectorCounters :: Lens' SummarizedAttackVector [SummarizedCounter]
- savVectorType :: Lens' SummarizedAttackVector Text
- data SummarizedCounter
- summarizedCounter :: SummarizedCounter
- scMax :: Lens' SummarizedCounter (Maybe Double)
- scAverage :: Lens' SummarizedCounter (Maybe Double)
- scN :: Lens' SummarizedCounter (Maybe Int)
- scName :: Lens' SummarizedCounter (Maybe Text)
- scSum :: Lens' SummarizedCounter (Maybe Double)
- scUnit :: Lens' SummarizedCounter (Maybe Text)
- data TimeRange
- timeRange :: TimeRange
- trFromInclusive :: Lens' TimeRange (Maybe UTCTime)
- trToExclusive :: Lens' TimeRange (Maybe UTCTime)
Service Configuration
Errors
_InvalidResourceException :: AsError a => Getting (First ServiceError) a ServiceError Source #
Exception that indicates that the resource is invalid. You might not have access to the resource, or the resource might not exist.
_InvalidParameterException :: AsError a => Getting (First ServiceError) a ServiceError Source #
Exception that indicates that the parameters passed to the API are invalid.
_LimitsExceededException :: AsError a => Getting (First ServiceError) a ServiceError Source #
Exception that indicates that the operation would exceed a limit.
Type
is the type of limit that would be exceeded.
Limit
is the threshold that would be exceeded.
_InternalErrorException :: AsError a => Getting (First ServiceError) a ServiceError Source #
Exception that indicates that a problem occurred with the service infrastructure. You can retry the request.
_ResourceAlreadyExistsException :: AsError a => Getting (First ServiceError) a ServiceError Source #
Exception indicating the specified resource already exists.
_OptimisticLockException :: AsError a => Getting (First ServiceError) a ServiceError Source #
Exception that indicates that the protection state has been modified by another client. You can retry the request.
_InvalidOperationException :: AsError a => Getting (First ServiceError) a ServiceError Source #
Exception that indicates that the operation would not cause any change to occur.
_LockedSubscriptionException :: AsError a => Getting (First ServiceError) a ServiceError Source #
Exception that indicates that the subscription you are trying to delete has not yet completed the 1-year commitment. You cannot delete this subscription.
_ResourceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError Source #
Exception indicating the specified resource does not exist.
AttackLayer
data AttackLayer Source #
Instances
AttackPropertyIdentifier
data AttackPropertyIdentifier Source #
Instances
SubResourceType
data SubResourceType Source #
Instances
SubscriptionState
data SubscriptionState Source #
Instances
Unit
Instances
Bounded Unit Source # | |
Enum Unit Source # | |
Eq Unit Source # | |
Data Unit Source # | |
Defined in Network.AWS.Shield.Types.Sum gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Unit -> c Unit # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Unit # dataTypeOf :: Unit -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Unit) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Unit) # gmapT :: (forall b. Data b => b -> b) -> Unit -> Unit # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Unit -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Unit -> r # gmapQ :: (forall d. Data d => d -> u) -> Unit -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Unit -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Unit -> m Unit # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Unit -> m Unit # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Unit -> m Unit # | |
Ord Unit Source # | |
Read Unit Source # | |
Show Unit Source # | |
Generic Unit Source # | |
Hashable Unit Source # | |
Defined in Network.AWS.Shield.Types.Sum | |
FromJSON Unit Source # | |
ToHeader Unit Source # | |
Defined in Network.AWS.Shield.Types.Sum toHeader :: HeaderName -> Unit -> [Header] # | |
ToQuery Unit Source # | |
Defined in Network.AWS.Shield.Types.Sum toQuery :: Unit -> QueryString # | |
ToByteString Unit Source # | |
Defined in Network.AWS.Shield.Types.Sum toBS :: Unit -> ByteString # | |
FromText Unit Source # | |
Defined in Network.AWS.Shield.Types.Sum | |
ToText Unit Source # | |
Defined in Network.AWS.Shield.Types.Sum | |
NFData Unit Source # | |
Defined in Network.AWS.Shield.Types.Sum | |
type Rep Unit Source # | |
Defined in Network.AWS.Shield.Types.Sum type Rep Unit = D1 (MetaData "Unit" "Network.AWS.Shield.Types.Sum" "amazonka-shield-1.6.1-8Y66prV5lhL7KZmytnDDA7" False) ((C1 (MetaCons "Bits" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "Bytes" PrefixI False) (U1 :: Type -> Type)) :+: (C1 (MetaCons "Packets" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "Requests" PrefixI False) (U1 :: Type -> Type))) |
AttackDetail
data AttackDetail Source #
The details of a DDoS attack.
See: attackDetail
smart constructor.
Instances
attackDetail :: AttackDetail Source #
Creates a value of AttackDetail
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
adAttackId
- The unique identifier (ID) of the attack.adStartTime
- The time the attack started, in Unix time in seconds. For more information see timestamp .adSubResources
- If applicable, additional detail about the resource being attacked, for example, IP address or URL.adMitigations
- List of mitigation actions taken for the attack.adAttackProperties
- The array ofAttackProperty
objects.adAttackCounters
- List of counters that describe the attack for the specified time period.adResourceARN
- The ARN (Amazon Resource Name) of the resource that was attacked.adEndTime
- The time the attack ended, in Unix time in seconds. For more information see timestamp .
adAttackId :: Lens' AttackDetail (Maybe Text) Source #
The unique identifier (ID) of the attack.
adStartTime :: Lens' AttackDetail (Maybe UTCTime) Source #
The time the attack started, in Unix time in seconds. For more information see timestamp .
adSubResources :: Lens' AttackDetail [SubResourceSummary] Source #
If applicable, additional detail about the resource being attacked, for example, IP address or URL.
adMitigations :: Lens' AttackDetail [Mitigation] Source #
List of mitigation actions taken for the attack.
adAttackProperties :: Lens' AttackDetail [AttackProperty] Source #
The array of AttackProperty
objects.
adAttackCounters :: Lens' AttackDetail [SummarizedCounter] Source #
List of counters that describe the attack for the specified time period.
adResourceARN :: Lens' AttackDetail (Maybe Text) Source #
The ARN (Amazon Resource Name) of the resource that was attacked.
adEndTime :: Lens' AttackDetail (Maybe UTCTime) Source #
The time the attack ended, in Unix time in seconds. For more information see timestamp .
AttackProperty
data AttackProperty Source #
Details of the described attack.
See: attackProperty
smart constructor.
Instances
attackProperty :: AttackProperty Source #
Creates a value of AttackProperty
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
apAttackLayer
- The type of DDoS event that was observed.NETWORK
indicates layer 3 and layer 4 events andAPPLICATION
indicates layer 7 events.apTopContributors
- The array ofContributor
objects that includes the top five contributors to an attack.apAttackPropertyIdentifier
- Defines the DDoS attack property information that is provided.apTotal
- The total contributions made to this attack by all contributors, not just the five listed in theTopContributors
list.apUnit
- The unit of theValue
of the contributions.
apAttackLayer :: Lens' AttackProperty (Maybe AttackLayer) Source #
The type of DDoS event that was observed. NETWORK
indicates layer 3 and layer 4 events and APPLICATION
indicates layer 7 events.
apTopContributors :: Lens' AttackProperty [Contributor] Source #
The array of Contributor
objects that includes the top five contributors to an attack.
apAttackPropertyIdentifier :: Lens' AttackProperty (Maybe AttackPropertyIdentifier) Source #
Defines the DDoS attack property information that is provided.
apTotal :: Lens' AttackProperty (Maybe Integer) Source #
The total contributions made to this attack by all contributors, not just the five listed in the TopContributors
list.
AttackSummary
data AttackSummary Source #
Summarizes all DDoS attacks for a specified time period.
See: attackSummary
smart constructor.
Instances
attackSummary :: AttackSummary Source #
Creates a value of AttackSummary
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
asAttackVectors
- The list of attacks for a specified time period.asAttackId
- The unique identifier (ID) of the attack.asStartTime
- The start time of the attack, in Unix time in seconds. For more information see timestamp .asResourceARN
- The ARN (Amazon Resource Name) of the resource that was attacked.asEndTime
- The end time of the attack, in Unix time in seconds. For more information see timestamp .
asAttackVectors :: Lens' AttackSummary [AttackVectorDescription] Source #
The list of attacks for a specified time period.
asAttackId :: Lens' AttackSummary (Maybe Text) Source #
The unique identifier (ID) of the attack.
asStartTime :: Lens' AttackSummary (Maybe UTCTime) Source #
The start time of the attack, in Unix time in seconds. For more information see timestamp .
asResourceARN :: Lens' AttackSummary (Maybe Text) Source #
The ARN (Amazon Resource Name) of the resource that was attacked.
asEndTime :: Lens' AttackSummary (Maybe UTCTime) Source #
The end time of the attack, in Unix time in seconds. For more information see timestamp .
AttackVectorDescription
data AttackVectorDescription Source #
Describes the attack.
See: attackVectorDescription
smart constructor.
Instances
attackVectorDescription Source #
Creates a value of AttackVectorDescription
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
avdVectorType
- The attack type. Valid values: * UDP_TRAFFIC * UDP_FRAGMENT * GENERIC_UDP_REFLECTION * DNS_REFLECTION * NTP_REFLECTION * CHARGEN_REFLECTION * SSDP_REFLECTION * PORT_MAPPER * RIP_REFLECTION * SNMP_REFLECTION * MSSQL_REFLECTION * NET_BIOS_REFLECTION * SYN_FLOOD * ACK_FLOOD * REQUEST_FLOOD
avdVectorType :: Lens' AttackVectorDescription Text Source #
The attack type. Valid values: * UDP_TRAFFIC * UDP_FRAGMENT * GENERIC_UDP_REFLECTION * DNS_REFLECTION * NTP_REFLECTION * CHARGEN_REFLECTION * SSDP_REFLECTION * PORT_MAPPER * RIP_REFLECTION * SNMP_REFLECTION * MSSQL_REFLECTION * NET_BIOS_REFLECTION * SYN_FLOOD * ACK_FLOOD * REQUEST_FLOOD
Contributor
data Contributor Source #
A contributor to the attack and their contribution.
See: contributor
smart constructor.
Instances
contributor :: Contributor Source #
Creates a value of Contributor
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
cValue
- The contribution of this contributor expressed inProtection
units. For example10,000
.cName
- The name of the contributor. This is dependent on theAttackPropertyIdentifier
. For example, if theAttackPropertyIdentifier
isSOURCE_COUNTRY
, theName
could beUnited States
.
cValue :: Lens' Contributor (Maybe Integer) Source #
The contribution of this contributor expressed in Protection
units. For example 10,000
.
cName :: Lens' Contributor (Maybe Text) Source #
The name of the contributor. This is dependent on the AttackPropertyIdentifier
. For example, if the AttackPropertyIdentifier
is SOURCE_COUNTRY
, the Name
could be United States
.
Mitigation
data Mitigation Source #
The mitigation applied to a DDoS attack.
See: mitigation
smart constructor.
Instances
mitigation :: Mitigation Source #
Creates a value of Mitigation
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
mMitigationName
- The name of the mitigation taken for this attack.
mMitigationName :: Lens' Mitigation (Maybe Text) Source #
The name of the mitigation taken for this attack.
Protection
data Protection Source #
An object that represents a resource that is under DDoS protection.
See: protection
smart constructor.
Instances
protection :: Protection Source #
Creates a value of Protection
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
pResourceARN
- The ARN (Amazon Resource Name) of the AWS resource that is protected.pName
- The friendly name of the protection. For example,My CloudFront distributions
.pId
- The unique identifier (ID) of the protection.
pResourceARN :: Lens' Protection (Maybe Text) Source #
The ARN (Amazon Resource Name) of the AWS resource that is protected.
pName :: Lens' Protection (Maybe Text) Source #
The friendly name of the protection. For example, My CloudFront distributions
.
SubResourceSummary
data SubResourceSummary Source #
The attack information for the specified SubResource.
See: subResourceSummary
smart constructor.
Instances
subResourceSummary :: SubResourceSummary Source #
Creates a value of SubResourceSummary
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
srsCounters
- The counters that describe the details of the attack.srsAttackVectors
- The list of attack types and associated counters.srsId
- The unique identifier (ID) of theSubResource
.srsType
- TheSubResource
type.
srsCounters :: Lens' SubResourceSummary [SummarizedCounter] Source #
The counters that describe the details of the attack.
srsAttackVectors :: Lens' SubResourceSummary [SummarizedAttackVector] Source #
The list of attack types and associated counters.
srsId :: Lens' SubResourceSummary (Maybe Text) Source #
The unique identifier (ID) of the SubResource
.
srsType :: Lens' SubResourceSummary (Maybe SubResourceType) Source #
The SubResource
type.
Subscription
data Subscription Source #
Information about the AWS Shield Advanced subscription for an account.
See: subscription
smart constructor.
Instances
subscription :: Subscription Source #
Creates a value of Subscription
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
sTimeCommitmentInSeconds
- The length, in seconds, of the AWS Shield Advanced subscription for the account.sStartTime
- The start time of the subscription, in Unix time in seconds. For more information see timestamp .
sTimeCommitmentInSeconds :: Lens' Subscription (Maybe Natural) Source #
The length, in seconds, of the AWS Shield Advanced subscription for the account.
sStartTime :: Lens' Subscription (Maybe UTCTime) Source #
The start time of the subscription, in Unix time in seconds. For more information see timestamp .
SummarizedAttackVector
data SummarizedAttackVector Source #
A summary of information about the attack.
See: summarizedAttackVector
smart constructor.
Instances
summarizedAttackVector Source #
Creates a value of SummarizedAttackVector
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
savVectorCounters
- The list of counters that describe the details of the attack.savVectorType
- The attack type, for example, SNMP reflection or SYN flood.
savVectorCounters :: Lens' SummarizedAttackVector [SummarizedCounter] Source #
The list of counters that describe the details of the attack.
savVectorType :: Lens' SummarizedAttackVector Text Source #
The attack type, for example, SNMP reflection or SYN flood.
SummarizedCounter
data SummarizedCounter Source #
The counter that describes a DDoS attack.
See: summarizedCounter
smart constructor.
Instances
summarizedCounter :: SummarizedCounter Source #
Creates a value of SummarizedCounter
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
scMax
- The maximum value of the counter for a specified time period.scAverage
- The average value of the counter for a specified time period.scN
- The number of counters for a specified time period.scName
- The counter name.scSum
- The total of counter values for a specified time period.scUnit
- The unit of the counters.
scMax :: Lens' SummarizedCounter (Maybe Double) Source #
The maximum value of the counter for a specified time period.
scAverage :: Lens' SummarizedCounter (Maybe Double) Source #
The average value of the counter for a specified time period.
scN :: Lens' SummarizedCounter (Maybe Int) Source #
The number of counters for a specified time period.
scSum :: Lens' SummarizedCounter (Maybe Double) Source #
The total of counter values for a specified time period.
TimeRange
The time range.
See: timeRange
smart constructor.
Instances
Eq TimeRange Source # | |
Data TimeRange Source # | |
Defined in Network.AWS.Shield.Types.Product gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TimeRange -> c TimeRange # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TimeRange # toConstr :: TimeRange -> Constr # dataTypeOf :: TimeRange -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c TimeRange) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TimeRange) # gmapT :: (forall b. Data b => b -> b) -> TimeRange -> TimeRange # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TimeRange -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TimeRange -> r # gmapQ :: (forall d. Data d => d -> u) -> TimeRange -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> TimeRange -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> TimeRange -> m TimeRange # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TimeRange -> m TimeRange # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TimeRange -> m TimeRange # | |
Read TimeRange Source # | |
Show TimeRange Source # | |
Generic TimeRange Source # | |
Hashable TimeRange Source # | |
Defined in Network.AWS.Shield.Types.Product | |
ToJSON TimeRange Source # | |
Defined in Network.AWS.Shield.Types.Product | |
NFData TimeRange Source # | |
Defined in Network.AWS.Shield.Types.Product | |
type Rep TimeRange Source # | |
Defined in Network.AWS.Shield.Types.Product type Rep TimeRange = D1 (MetaData "TimeRange" "Network.AWS.Shield.Types.Product" "amazonka-shield-1.6.1-8Y66prV5lhL7KZmytnDDA7" False) (C1 (MetaCons "TimeRange'" PrefixI True) (S1 (MetaSel (Just "_trFromInclusive") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe POSIX)) :*: S1 (MetaSel (Just "_trToExclusive") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe POSIX)))) |
timeRange :: TimeRange Source #
Creates a value of TimeRange
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
trFromInclusive
- The start time, in Unix time in seconds. For more information see timestamp .trToExclusive
- The end time, in Unix time in seconds. For more information see timestamp .