Copyright | (c) 2013-2021 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 |
- Service Configuration
- Errors
- AttackLayer
- AttackPropertyIdentifier
- AutoRenew
- ProactiveEngagementStatus
- ProtectedResourceType
- ProtectionGroupAggregation
- ProtectionGroupPattern
- SubResourceType
- SubscriptionState
- Unit
- AttackDetail
- AttackProperty
- AttackStatisticsDataItem
- AttackSummary
- AttackVectorDescription
- AttackVolume
- AttackVolumeStatistics
- Contributor
- EmergencyContact
- Limit
- Mitigation
- Protection
- ProtectionGroup
- ProtectionGroupArbitraryPatternLimits
- ProtectionGroupLimits
- ProtectionGroupPatternTypeLimits
- ProtectionLimits
- SubResourceSummary
- Subscription
- SubscriptionLimits
- SummarizedAttackVector
- SummarizedCounter
- Tag
- TimeRange
Synopsis
- defaultService :: Service
- _InvalidResourceException :: AsError a => Getting (First ServiceError) a ServiceError
- _AccessDeniedException :: 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
- _NoAssociatedRoleException :: AsError a => Getting (First ServiceError) a ServiceError
- _AccessDeniedForDependencyException :: 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
- _InvalidPaginationTokenException :: AsError a => Getting (First ServiceError) a ServiceError
- newtype AttackLayer where
- AttackLayer' { }
- pattern AttackLayer_APPLICATION :: AttackLayer
- pattern AttackLayer_NETWORK :: AttackLayer
- newtype AttackPropertyIdentifier where
- AttackPropertyIdentifier' { }
- pattern AttackPropertyIdentifier_DESTINATION_URL :: AttackPropertyIdentifier
- pattern AttackPropertyIdentifier_REFERRER :: AttackPropertyIdentifier
- pattern AttackPropertyIdentifier_SOURCE_ASN :: AttackPropertyIdentifier
- pattern AttackPropertyIdentifier_SOURCE_COUNTRY :: AttackPropertyIdentifier
- pattern AttackPropertyIdentifier_SOURCE_IP_ADDRESS :: AttackPropertyIdentifier
- pattern AttackPropertyIdentifier_SOURCE_USER_AGENT :: AttackPropertyIdentifier
- pattern AttackPropertyIdentifier_WORDPRESS_PINGBACK_REFLECTOR :: AttackPropertyIdentifier
- pattern AttackPropertyIdentifier_WORDPRESS_PINGBACK_SOURCE :: AttackPropertyIdentifier
- newtype AutoRenew where
- AutoRenew' { }
- pattern AutoRenew_DISABLED :: AutoRenew
- pattern AutoRenew_ENABLED :: AutoRenew
- newtype ProactiveEngagementStatus where
- newtype ProtectedResourceType where
- ProtectedResourceType' { }
- pattern ProtectedResourceType_APPLICATION_LOAD_BALANCER :: ProtectedResourceType
- pattern ProtectedResourceType_CLASSIC_LOAD_BALANCER :: ProtectedResourceType
- pattern ProtectedResourceType_CLOUDFRONT_DISTRIBUTION :: ProtectedResourceType
- pattern ProtectedResourceType_ELASTIC_IP_ALLOCATION :: ProtectedResourceType
- pattern ProtectedResourceType_GLOBAL_ACCELERATOR :: ProtectedResourceType
- pattern ProtectedResourceType_ROUTE_53_HOSTED_ZONE :: ProtectedResourceType
- newtype ProtectionGroupAggregation where
- newtype ProtectionGroupPattern where
- newtype SubResourceType where
- SubResourceType' { }
- pattern SubResourceType_IP :: SubResourceType
- pattern SubResourceType_URL :: SubResourceType
- newtype SubscriptionState where
- SubscriptionState' { }
- pattern SubscriptionState_ACTIVE :: SubscriptionState
- pattern SubscriptionState_INACTIVE :: SubscriptionState
- newtype Unit where
- Unit' { }
- pattern Unit_BITS :: Unit
- pattern Unit_BYTES :: Unit
- pattern Unit_PACKETS :: Unit
- pattern Unit_REQUESTS :: Unit
- data AttackDetail = AttackDetail' {}
- newAttackDetail :: AttackDetail
- attackDetail_attackId :: Lens' AttackDetail (Maybe Text)
- attackDetail_startTime :: Lens' AttackDetail (Maybe UTCTime)
- attackDetail_subResources :: Lens' AttackDetail (Maybe [SubResourceSummary])
- attackDetail_mitigations :: Lens' AttackDetail (Maybe [Mitigation])
- attackDetail_attackProperties :: Lens' AttackDetail (Maybe [AttackProperty])
- attackDetail_attackCounters :: Lens' AttackDetail (Maybe [SummarizedCounter])
- attackDetail_resourceArn :: Lens' AttackDetail (Maybe Text)
- attackDetail_endTime :: Lens' AttackDetail (Maybe UTCTime)
- data AttackProperty = AttackProperty' {}
- newAttackProperty :: AttackProperty
- attackProperty_attackLayer :: Lens' AttackProperty (Maybe AttackLayer)
- attackProperty_topContributors :: Lens' AttackProperty (Maybe [Contributor])
- attackProperty_attackPropertyIdentifier :: Lens' AttackProperty (Maybe AttackPropertyIdentifier)
- attackProperty_total :: Lens' AttackProperty (Maybe Integer)
- attackProperty_unit :: Lens' AttackProperty (Maybe Unit)
- data AttackStatisticsDataItem = AttackStatisticsDataItem' {}
- newAttackStatisticsDataItem :: Integer -> AttackStatisticsDataItem
- attackStatisticsDataItem_attackVolume :: Lens' AttackStatisticsDataItem (Maybe AttackVolume)
- attackStatisticsDataItem_attackCount :: Lens' AttackStatisticsDataItem Integer
- data AttackSummary = AttackSummary' {}
- newAttackSummary :: AttackSummary
- attackSummary_attackVectors :: Lens' AttackSummary (Maybe [AttackVectorDescription])
- attackSummary_attackId :: Lens' AttackSummary (Maybe Text)
- attackSummary_startTime :: Lens' AttackSummary (Maybe UTCTime)
- attackSummary_resourceArn :: Lens' AttackSummary (Maybe Text)
- attackSummary_endTime :: Lens' AttackSummary (Maybe UTCTime)
- data AttackVectorDescription = AttackVectorDescription' {
- vectorType :: Text
- newAttackVectorDescription :: Text -> AttackVectorDescription
- attackVectorDescription_vectorType :: Lens' AttackVectorDescription Text
- data AttackVolume = AttackVolume' {}
- newAttackVolume :: AttackVolume
- attackVolume_packetsPerSecond :: Lens' AttackVolume (Maybe AttackVolumeStatistics)
- attackVolume_requestsPerSecond :: Lens' AttackVolume (Maybe AttackVolumeStatistics)
- attackVolume_bitsPerSecond :: Lens' AttackVolume (Maybe AttackVolumeStatistics)
- data AttackVolumeStatistics = AttackVolumeStatistics' {}
- newAttackVolumeStatistics :: Double -> AttackVolumeStatistics
- attackVolumeStatistics_max :: Lens' AttackVolumeStatistics Double
- data Contributor = Contributor' {}
- newContributor :: Contributor
- contributor_value :: Lens' Contributor (Maybe Integer)
- contributor_name :: Lens' Contributor (Maybe Text)
- data EmergencyContact = EmergencyContact' {}
- newEmergencyContact :: Text -> EmergencyContact
- emergencyContact_phoneNumber :: Lens' EmergencyContact (Maybe Text)
- emergencyContact_contactNotes :: Lens' EmergencyContact (Maybe Text)
- emergencyContact_emailAddress :: Lens' EmergencyContact Text
- data Limit = Limit' {}
- newLimit :: Limit
- limit_max :: Lens' Limit (Maybe Integer)
- limit_type :: Lens' Limit (Maybe Text)
- data Mitigation = Mitigation' {}
- newMitigation :: Mitigation
- mitigation_mitigationName :: Lens' Mitigation (Maybe Text)
- data Protection = Protection' {
- protectionArn :: Maybe Text
- healthCheckIds :: Maybe [Text]
- resourceArn :: Maybe Text
- name :: Maybe Text
- id :: Maybe Text
- newProtection :: Protection
- protection_protectionArn :: Lens' Protection (Maybe Text)
- protection_healthCheckIds :: Lens' Protection (Maybe [Text])
- protection_resourceArn :: Lens' Protection (Maybe Text)
- protection_name :: Lens' Protection (Maybe Text)
- protection_id :: Lens' Protection (Maybe Text)
- data ProtectionGroup = ProtectionGroup' {}
- newProtectionGroup :: Text -> ProtectionGroupAggregation -> ProtectionGroupPattern -> ProtectionGroup
- protectionGroup_resourceType :: Lens' ProtectionGroup (Maybe ProtectedResourceType)
- protectionGroup_protectionGroupArn :: Lens' ProtectionGroup (Maybe Text)
- protectionGroup_protectionGroupId :: Lens' ProtectionGroup Text
- protectionGroup_aggregation :: Lens' ProtectionGroup ProtectionGroupAggregation
- protectionGroup_pattern :: Lens' ProtectionGroup ProtectionGroupPattern
- protectionGroup_members :: Lens' ProtectionGroup [Text]
- data ProtectionGroupArbitraryPatternLimits = ProtectionGroupArbitraryPatternLimits' {}
- newProtectionGroupArbitraryPatternLimits :: Integer -> ProtectionGroupArbitraryPatternLimits
- protectionGroupArbitraryPatternLimits_maxMembers :: Lens' ProtectionGroupArbitraryPatternLimits Integer
- data ProtectionGroupLimits = ProtectionGroupLimits' {}
- newProtectionGroupLimits :: Integer -> ProtectionGroupPatternTypeLimits -> ProtectionGroupLimits
- protectionGroupLimits_maxProtectionGroups :: Lens' ProtectionGroupLimits Integer
- protectionGroupLimits_patternTypeLimits :: Lens' ProtectionGroupLimits ProtectionGroupPatternTypeLimits
- data ProtectionGroupPatternTypeLimits = ProtectionGroupPatternTypeLimits' {}
- newProtectionGroupPatternTypeLimits :: ProtectionGroupArbitraryPatternLimits -> ProtectionGroupPatternTypeLimits
- protectionGroupPatternTypeLimits_arbitraryPatternLimits :: Lens' ProtectionGroupPatternTypeLimits ProtectionGroupArbitraryPatternLimits
- data ProtectionLimits = ProtectionLimits' {}
- newProtectionLimits :: ProtectionLimits
- protectionLimits_protectedResourceTypeLimits :: Lens' ProtectionLimits [Limit]
- data SubResourceSummary = SubResourceSummary' {}
- newSubResourceSummary :: SubResourceSummary
- subResourceSummary_counters :: Lens' SubResourceSummary (Maybe [SummarizedCounter])
- subResourceSummary_attackVectors :: Lens' SubResourceSummary (Maybe [SummarizedAttackVector])
- subResourceSummary_id :: Lens' SubResourceSummary (Maybe Text)
- subResourceSummary_type :: Lens' SubResourceSummary (Maybe SubResourceType)
- data Subscription = Subscription' {}
- newSubscription :: SubscriptionLimits -> Subscription
- subscription_timeCommitmentInSeconds :: Lens' Subscription (Maybe Natural)
- subscription_startTime :: Lens' Subscription (Maybe UTCTime)
- subscription_limits :: Lens' Subscription (Maybe [Limit])
- subscription_autoRenew :: Lens' Subscription (Maybe AutoRenew)
- subscription_endTime :: Lens' Subscription (Maybe UTCTime)
- subscription_proactiveEngagementStatus :: Lens' Subscription (Maybe ProactiveEngagementStatus)
- subscription_subscriptionArn :: Lens' Subscription (Maybe Text)
- subscription_subscriptionLimits :: Lens' Subscription SubscriptionLimits
- data SubscriptionLimits = SubscriptionLimits' {}
- newSubscriptionLimits :: ProtectionLimits -> ProtectionGroupLimits -> SubscriptionLimits
- subscriptionLimits_protectionLimits :: Lens' SubscriptionLimits ProtectionLimits
- subscriptionLimits_protectionGroupLimits :: Lens' SubscriptionLimits ProtectionGroupLimits
- data SummarizedAttackVector = SummarizedAttackVector' {}
- newSummarizedAttackVector :: Text -> SummarizedAttackVector
- summarizedAttackVector_vectorCounters :: Lens' SummarizedAttackVector (Maybe [SummarizedCounter])
- summarizedAttackVector_vectorType :: Lens' SummarizedAttackVector Text
- data SummarizedCounter = SummarizedCounter' {}
- newSummarizedCounter :: SummarizedCounter
- summarizedCounter_max :: Lens' SummarizedCounter (Maybe Double)
- summarizedCounter_average :: Lens' SummarizedCounter (Maybe Double)
- summarizedCounter_n :: Lens' SummarizedCounter (Maybe Int)
- summarizedCounter_name :: Lens' SummarizedCounter (Maybe Text)
- summarizedCounter_sum :: Lens' SummarizedCounter (Maybe Double)
- summarizedCounter_unit :: Lens' SummarizedCounter (Maybe Text)
- data Tag = Tag' {}
- newTag :: Tag
- tag_value :: Lens' Tag (Maybe Text)
- tag_key :: Lens' Tag (Maybe Text)
- data TimeRange = TimeRange' {}
- newTimeRange :: TimeRange
- timeRange_fromInclusive :: Lens' TimeRange (Maybe UTCTime)
- timeRange_toExclusive :: Lens' TimeRange (Maybe UTCTime)
Service Configuration
defaultService :: Service Source #
API version 2016-06-02
of the Amazon Shield SDK 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.
_AccessDeniedException :: AsError a => Getting (First ServiceError) a ServiceError Source #
Exception that indicates the specified AttackId
does not exist, or the
requester does not have the appropriate permissions to access the
AttackId
.
_InvalidParameterException :: AsError a => Getting (First ServiceError) a ServiceError Source #
Exception that indicates that the parameters passed to the API are invalid. If available, this exception includes details in additional properties.
_LimitsExceededException :: AsError a => Getting (First ServiceError) a ServiceError Source #
Exception that indicates that the operation would exceed a limit.
_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. If available, this exception includes details in additional properties.
_OptimisticLockException :: AsError a => Getting (First ServiceError) a ServiceError Source #
Exception that indicates that the resource state has been modified by another client. Retrieve the resource and then retry your request.
_NoAssociatedRoleException :: AsError a => Getting (First ServiceError) a ServiceError Source #
The ARN of the role that you specifed does not exist.
_AccessDeniedForDependencyException :: AsError a => Getting (First ServiceError) a ServiceError Source #
In order to grant the necessary access to the Shield Response Team (SRT)
the user submitting the request must have the iam:PassRole
permission.
This error indicates the user did not have the appropriate permissions.
For more information, see
Granting a User Permissions to Pass a Role to an Amazon Web Services Service.
_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 #
You are trying to update a subscription that has not yet completed the
1-year commitment. You can change the AutoRenew
parameter during the
last 30 days of your subscription. This exception indicates that you are
attempting to change AutoRenew
prior to that period.
_ResourceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError Source #
Exception indicating the specified resource does not exist. If available, this exception includes details in additional properties.
_InvalidPaginationTokenException :: AsError a => Getting (First ServiceError) a ServiceError Source #
Exception that indicates that the NextToken specified in the request is invalid. Submit the request using the NextToken value that was returned in the response.
AttackLayer
newtype AttackLayer Source #
pattern AttackLayer_APPLICATION :: AttackLayer | |
pattern AttackLayer_NETWORK :: AttackLayer |
Instances
AttackPropertyIdentifier
newtype AttackPropertyIdentifier Source #
Instances
AutoRenew
pattern AutoRenew_DISABLED :: AutoRenew | |
pattern AutoRenew_ENABLED :: AutoRenew |
Instances
ProactiveEngagementStatus
newtype ProactiveEngagementStatus Source #
Instances
ProtectedResourceType
newtype ProtectedResourceType Source #
Instances
ProtectionGroupAggregation
newtype ProtectionGroupAggregation Source #
Instances
ProtectionGroupPattern
newtype ProtectionGroupPattern Source #
Instances
SubResourceType
newtype SubResourceType Source #
pattern SubResourceType_IP :: SubResourceType | |
pattern SubResourceType_URL :: SubResourceType |
Instances
SubscriptionState
newtype SubscriptionState Source #
pattern SubscriptionState_ACTIVE :: SubscriptionState | |
pattern SubscriptionState_INACTIVE :: SubscriptionState |
Instances
Unit
pattern Unit_BITS :: Unit | |
pattern Unit_BYTES :: Unit | |
pattern Unit_PACKETS :: Unit | |
pattern Unit_REQUESTS :: Unit |
Instances
AttackDetail
data AttackDetail Source #
The details of a DDoS attack.
See: newAttackDetail
smart constructor.
AttackDetail' | |
|
Instances
newAttackDetail :: AttackDetail Source #
Create a value of AttackDetail
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:attackId:AttackDetail'
, attackDetail_attackId
- The unique identifier (ID) of the attack.
$sel:startTime:AttackDetail'
, attackDetail_startTime
- The time the attack started, in Unix time in seconds. For more
information see
timestamp.
$sel:subResources:AttackDetail'
, attackDetail_subResources
- If applicable, additional detail about the resource being attacked, for
example, IP address or URL.
$sel:mitigations:AttackDetail'
, attackDetail_mitigations
- List of mitigation actions taken for the attack.
$sel:attackProperties:AttackDetail'
, attackDetail_attackProperties
- The array of objects that provide details of the Shield event.
For infrastructure layer events (L3 and L4 events) after January 25, 2021, you can view metrics for top contributors in Amazon CloudWatch metrics. For more information, see Shield metrics and alarms in the WAF Developer Guide.
$sel:attackCounters:AttackDetail'
, attackDetail_attackCounters
- List of counters that describe the attack for the specified time period.
$sel:resourceArn:AttackDetail'
, attackDetail_resourceArn
- The ARN (Amazon Resource Name) of the resource that was attacked.
$sel:endTime:AttackDetail'
, attackDetail_endTime
- The time the attack ended, in Unix time in seconds. For more information
see
timestamp.
attackDetail_attackId :: Lens' AttackDetail (Maybe Text) Source #
The unique identifier (ID) of the attack.
attackDetail_startTime :: Lens' AttackDetail (Maybe UTCTime) Source #
The time the attack started, in Unix time in seconds. For more information see timestamp.
attackDetail_subResources :: Lens' AttackDetail (Maybe [SubResourceSummary]) Source #
If applicable, additional detail about the resource being attacked, for example, IP address or URL.
attackDetail_mitigations :: Lens' AttackDetail (Maybe [Mitigation]) Source #
List of mitigation actions taken for the attack.
attackDetail_attackProperties :: Lens' AttackDetail (Maybe [AttackProperty]) Source #
The array of objects that provide details of the Shield event.
For infrastructure layer events (L3 and L4 events) after January 25, 2021, you can view metrics for top contributors in Amazon CloudWatch metrics. For more information, see Shield metrics and alarms in the WAF Developer Guide.
attackDetail_attackCounters :: Lens' AttackDetail (Maybe [SummarizedCounter]) Source #
List of counters that describe the attack for the specified time period.
attackDetail_resourceArn :: Lens' AttackDetail (Maybe Text) Source #
The ARN (Amazon Resource Name) of the resource that was attacked.
attackDetail_endTime :: 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 a Shield event. This is provided as part of an AttackDetail.
See: newAttackProperty
smart constructor.
AttackProperty' | |
|
Instances
newAttackProperty :: AttackProperty Source #
Create a value of AttackProperty
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:attackLayer:AttackProperty'
, attackProperty_attackLayer
- The type of Shield event that was observed. NETWORK
indicates layer 3
and layer 4 events and APPLICATION
indicates layer 7 events.
For infrastructure layer events (L3 and L4 events) after January 25, 2021, you can view metrics for top contributors in Amazon CloudWatch metrics. For more information, see Shield metrics and alarms in the WAF Developer Guide.
$sel:topContributors:AttackProperty'
, attackProperty_topContributors
- Contributor objects for the top five contributors to a Shield event.
$sel:attackPropertyIdentifier:AttackProperty'
, attackProperty_attackPropertyIdentifier
- Defines the Shield event property information that is provided. The
WORDPRESS_PINGBACK_REFLECTOR
and WORDPRESS_PINGBACK_SOURCE
values
are valid only for WordPress reflective pingback events.
$sel:total:AttackProperty'
, attackProperty_total
- The total contributions made to this Shield event by all contributors.
$sel:unit:AttackProperty'
, attackProperty_unit
- The unit used for the Contributor
Value
property.
attackProperty_attackLayer :: Lens' AttackProperty (Maybe AttackLayer) Source #
The type of Shield event that was observed. NETWORK
indicates layer 3
and layer 4 events and APPLICATION
indicates layer 7 events.
For infrastructure layer events (L3 and L4 events) after January 25, 2021, you can view metrics for top contributors in Amazon CloudWatch metrics. For more information, see Shield metrics and alarms in the WAF Developer Guide.
attackProperty_topContributors :: Lens' AttackProperty (Maybe [Contributor]) Source #
Contributor objects for the top five contributors to a Shield event.
attackProperty_attackPropertyIdentifier :: Lens' AttackProperty (Maybe AttackPropertyIdentifier) Source #
Defines the Shield event property information that is provided. The
WORDPRESS_PINGBACK_REFLECTOR
and WORDPRESS_PINGBACK_SOURCE
values
are valid only for WordPress reflective pingback events.
attackProperty_total :: Lens' AttackProperty (Maybe Integer) Source #
The total contributions made to this Shield event by all contributors.
attackProperty_unit :: Lens' AttackProperty (Maybe Unit) Source #
The unit used for the Contributor
Value
property.
AttackStatisticsDataItem
data AttackStatisticsDataItem Source #
A single attack statistics data record. This is returned by DescribeAttackStatistics along with a time range indicating the time period that the attack statistics apply to.
See: newAttackStatisticsDataItem
smart constructor.
AttackStatisticsDataItem' | |
|
Instances
newAttackStatisticsDataItem Source #
Create a value of AttackStatisticsDataItem
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:attackVolume:AttackStatisticsDataItem'
, attackStatisticsDataItem_attackVolume
- Information about the volume of attacks during the time period. If the
accompanying AttackCount
is zero, this setting might be empty.
$sel:attackCount:AttackStatisticsDataItem'
, attackStatisticsDataItem_attackCount
- The number of attacks detected during the time period. This is always
present, but might be zero.
attackStatisticsDataItem_attackVolume :: Lens' AttackStatisticsDataItem (Maybe AttackVolume) Source #
Information about the volume of attacks during the time period. If the
accompanying AttackCount
is zero, this setting might be empty.
attackStatisticsDataItem_attackCount :: Lens' AttackStatisticsDataItem Integer Source #
The number of attacks detected during the time period. This is always present, but might be zero.
AttackSummary
data AttackSummary Source #
Summarizes all DDoS attacks for a specified time period.
See: newAttackSummary
smart constructor.
AttackSummary' | |
|
Instances
newAttackSummary :: AttackSummary Source #
Create a value of AttackSummary
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:attackVectors:AttackSummary'
, attackSummary_attackVectors
- The list of attacks for a specified time period.
$sel:attackId:AttackSummary'
, attackSummary_attackId
- The unique identifier (ID) of the attack.
$sel:startTime:AttackSummary'
, attackSummary_startTime
- The start time of the attack, in Unix time in seconds. For more
information see
timestamp.
$sel:resourceArn:AttackSummary'
, attackSummary_resourceArn
- The ARN (Amazon Resource Name) of the resource that was attacked.
$sel:endTime:AttackSummary'
, attackSummary_endTime
- The end time of the attack, in Unix time in seconds. For more
information see
timestamp.
attackSummary_attackVectors :: Lens' AttackSummary (Maybe [AttackVectorDescription]) Source #
The list of attacks for a specified time period.
attackSummary_attackId :: Lens' AttackSummary (Maybe Text) Source #
The unique identifier (ID) of the attack.
attackSummary_startTime :: Lens' AttackSummary (Maybe UTCTime) Source #
The start time of the attack, in Unix time in seconds. For more information see timestamp.
attackSummary_resourceArn :: Lens' AttackSummary (Maybe Text) Source #
The ARN (Amazon Resource Name) of the resource that was attacked.
attackSummary_endTime :: 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: newAttackVectorDescription
smart constructor.
AttackVectorDescription' | |
|
Instances
newAttackVectorDescription Source #
Create a value of AttackVectorDescription
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:vectorType:AttackVectorDescription'
, attackVectorDescription_vectorType
- 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
- HTTP_REFLECTION
- UDS_REFLECTION
- MEMCACHED_REFLECTION
attackVectorDescription_vectorType :: 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
- HTTP_REFLECTION
- UDS_REFLECTION
- MEMCACHED_REFLECTION
AttackVolume
data AttackVolume Source #
Information about the volume of attacks during the time period, included
in an AttackStatisticsDataItem. If the accompanying AttackCount
in the
statistics object is zero, this setting might be empty.
See: newAttackVolume
smart constructor.
AttackVolume' | |
|
Instances
newAttackVolume :: AttackVolume Source #
Create a value of AttackVolume
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:packetsPerSecond:AttackVolume'
, attackVolume_packetsPerSecond
- A statistics object that uses packets per second as the unit. This is
included for network level attacks.
$sel:requestsPerSecond:AttackVolume'
, attackVolume_requestsPerSecond
- A statistics object that uses requests per second as the unit. This is
included for application level attacks, and is only available for
accounts that are subscribed to Shield Advanced.
$sel:bitsPerSecond:AttackVolume'
, attackVolume_bitsPerSecond
- A statistics object that uses bits per second as the unit. This is
included for network level attacks.
attackVolume_packetsPerSecond :: Lens' AttackVolume (Maybe AttackVolumeStatistics) Source #
A statistics object that uses packets per second as the unit. This is included for network level attacks.
attackVolume_requestsPerSecond :: Lens' AttackVolume (Maybe AttackVolumeStatistics) Source #
A statistics object that uses requests per second as the unit. This is included for application level attacks, and is only available for accounts that are subscribed to Shield Advanced.
attackVolume_bitsPerSecond :: Lens' AttackVolume (Maybe AttackVolumeStatistics) Source #
A statistics object that uses bits per second as the unit. This is included for network level attacks.
AttackVolumeStatistics
data AttackVolumeStatistics Source #
Statistics objects for the various data types in AttackVolume.
See: newAttackVolumeStatistics
smart constructor.
Instances
newAttackVolumeStatistics Source #
Create a value of AttackVolumeStatistics
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:max:AttackVolumeStatistics'
, attackVolumeStatistics_max
- The maximum attack volume observed for the given unit.
attackVolumeStatistics_max :: Lens' AttackVolumeStatistics Double Source #
The maximum attack volume observed for the given unit.
Contributor
data Contributor Source #
A contributor to the attack and their contribution.
See: newContributor
smart constructor.
Contributor' | |
|
Instances
newContributor :: Contributor Source #
Create a value of Contributor
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:value:Contributor'
, contributor_value
- The contribution of this contributor expressed in Protection units. For
example 10,000
.
$sel:name:Contributor'
, contributor_name
- 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
.
contributor_value :: Lens' Contributor (Maybe Integer) Source #
The contribution of this contributor expressed in Protection units. For
example 10,000
.
contributor_name :: 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
.
EmergencyContact
data EmergencyContact Source #
Contact information that the SRT can use to contact you if you have proactive engagement enabled, for escalations to the SRT and to initiate proactive customer support.
See: newEmergencyContact
smart constructor.
EmergencyContact' | |
|
Instances
Create a value of EmergencyContact
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:phoneNumber:EmergencyContact'
, emergencyContact_phoneNumber
- The phone number for the contact.
$sel:contactNotes:EmergencyContact'
, emergencyContact_contactNotes
- Additional notes regarding the contact.
$sel:emailAddress:EmergencyContact'
, emergencyContact_emailAddress
- The email address for the contact.
emergencyContact_phoneNumber :: Lens' EmergencyContact (Maybe Text) Source #
The phone number for the contact.
emergencyContact_contactNotes :: Lens' EmergencyContact (Maybe Text) Source #
Additional notes regarding the contact.
emergencyContact_emailAddress :: Lens' EmergencyContact Text Source #
The email address for the contact.
Limit
Specifies how many protections of a given type you can create.
See: newLimit
smart constructor.
Instances
Eq Limit Source # | |
Read Limit Source # | |
Show Limit Source # | |
Generic Limit Source # | |
NFData Limit Source # | |
Defined in Amazonka.Shield.Types.Limit | |
Hashable Limit Source # | |
Defined in Amazonka.Shield.Types.Limit | |
FromJSON Limit Source # | |
type Rep Limit Source # | |
Defined in Amazonka.Shield.Types.Limit type Rep Limit = D1 ('MetaData "Limit" "Amazonka.Shield.Types.Limit" "libZSservicesZSamazonka-shieldZSamazonka-shield" 'False) (C1 ('MetaCons "Limit'" 'PrefixI 'True) (S1 ('MetaSel ('Just "max") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Integer)) :*: S1 ('MetaSel ('Just "type'") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)))) |
Create a value of Limit
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:max:Limit'
, limit_max
- The maximum number of protections that can be created for the specified
Type
.
$sel:type':Limit'
, limit_type
- The type of protection.
limit_max :: Lens' Limit (Maybe Integer) Source #
The maximum number of protections that can be created for the specified
Type
.
Mitigation
data Mitigation Source #
The mitigation applied to a DDoS attack.
See: newMitigation
smart constructor.
Mitigation' | |
|
Instances
newMitigation :: Mitigation Source #
Create a value of Mitigation
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:mitigationName:Mitigation'
, mitigation_mitigationName
- The name of the mitigation taken for this attack.
mitigation_mitigationName :: 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: newProtection
smart constructor.
Protection' | |
|
Instances
newProtection :: Protection Source #
Create a value of Protection
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:protectionArn:Protection'
, protection_protectionArn
- The ARN (Amazon Resource Name) of the protection.
$sel:healthCheckIds:Protection'
, protection_healthCheckIds
- The unique identifier (ID) for the Route 53 health check that's
associated with the protection.
$sel:resourceArn:Protection'
, protection_resourceArn
- The ARN (Amazon Resource Name) of the Amazon Web Services resource that
is protected.
$sel:name:Protection'
, protection_name
- The name of the protection. For example, My CloudFront distributions
.
$sel:id:Protection'
, protection_id
- The unique identifier (ID) of the protection.
protection_protectionArn :: Lens' Protection (Maybe Text) Source #
The ARN (Amazon Resource Name) of the protection.
protection_healthCheckIds :: Lens' Protection (Maybe [Text]) Source #
The unique identifier (ID) for the Route 53 health check that's associated with the protection.
protection_resourceArn :: Lens' Protection (Maybe Text) Source #
The ARN (Amazon Resource Name) of the Amazon Web Services resource that is protected.
protection_name :: Lens' Protection (Maybe Text) Source #
The name of the protection. For example, My CloudFront distributions
.
protection_id :: Lens' Protection (Maybe Text) Source #
The unique identifier (ID) of the protection.
ProtectionGroup
data ProtectionGroup Source #
A grouping of protected resources that you and Shield Advanced can monitor as a collective. This resource grouping improves the accuracy of detection and reduces false positives.
See: newProtectionGroup
smart constructor.
ProtectionGroup' | |
|
Instances
Create a value of ProtectionGroup
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:resourceType:ProtectionGroup'
, protectionGroup_resourceType
- The resource type to include in the protection group. All protected
resources of this type are included in the protection group. You must
set this when you set Pattern
to BY_RESOURCE_TYPE
and you must not
set it for any other Pattern
setting.
$sel:protectionGroupArn:ProtectionGroup'
, protectionGroup_protectionGroupArn
- The ARN (Amazon Resource Name) of the protection group.
$sel:protectionGroupId:ProtectionGroup'
, protectionGroup_protectionGroupId
- The name of the protection group. You use this to identify the
protection group in lists and to manage the protection group, for
example to update, delete, or describe it.
$sel:aggregation:ProtectionGroup'
, protectionGroup_aggregation
- Defines how Shield combines resource data for the group in order to
detect, mitigate, and report events.
- Sum - Use the total traffic across the group. This is a good choice for most cases. Examples include Elastic IP addresses for EC2 instances that scale manually or automatically.
- Mean - Use the average of the traffic across the group. This is a good choice for resources that share traffic uniformly. Examples include accelerators and load balancers.
- Max - Use the highest traffic from each resource. This is useful for resources that don't share traffic and for resources that share that traffic in a non-uniform way. Examples include Amazon CloudFront distributions and origin resources for CloudFront distributions.
$sel:pattern':ProtectionGroup'
, protectionGroup_pattern
- The criteria to use to choose the protected resources for inclusion in
the group. You can include all resources that have protections, provide
a list of resource Amazon Resource Names (ARNs), or include all
resources of a specified resource type.
$sel:members:ProtectionGroup'
, protectionGroup_members
- The Amazon Resource Names (ARNs) of the resources to include in the
protection group. You must set this when you set Pattern
to
ARBITRARY
and you must not set it for any other Pattern
setting.
protectionGroup_resourceType :: Lens' ProtectionGroup (Maybe ProtectedResourceType) Source #
The resource type to include in the protection group. All protected
resources of this type are included in the protection group. You must
set this when you set Pattern
to BY_RESOURCE_TYPE
and you must not
set it for any other Pattern
setting.
protectionGroup_protectionGroupArn :: Lens' ProtectionGroup (Maybe Text) Source #
The ARN (Amazon Resource Name) of the protection group.
protectionGroup_protectionGroupId :: Lens' ProtectionGroup Text Source #
The name of the protection group. You use this to identify the protection group in lists and to manage the protection group, for example to update, delete, or describe it.
protectionGroup_aggregation :: Lens' ProtectionGroup ProtectionGroupAggregation Source #
Defines how Shield combines resource data for the group in order to detect, mitigate, and report events.
- Sum - Use the total traffic across the group. This is a good choice for most cases. Examples include Elastic IP addresses for EC2 instances that scale manually or automatically.
- Mean - Use the average of the traffic across the group. This is a good choice for resources that share traffic uniformly. Examples include accelerators and load balancers.
- Max - Use the highest traffic from each resource. This is useful for resources that don't share traffic and for resources that share that traffic in a non-uniform way. Examples include Amazon CloudFront distributions and origin resources for CloudFront distributions.
protectionGroup_pattern :: Lens' ProtectionGroup ProtectionGroupPattern Source #
The criteria to use to choose the protected resources for inclusion in the group. You can include all resources that have protections, provide a list of resource Amazon Resource Names (ARNs), or include all resources of a specified resource type.
protectionGroup_members :: Lens' ProtectionGroup [Text] Source #
The Amazon Resource Names (ARNs) of the resources to include in the
protection group. You must set this when you set Pattern
to
ARBITRARY
and you must not set it for any other Pattern
setting.
ProtectionGroupArbitraryPatternLimits
data ProtectionGroupArbitraryPatternLimits Source #
Limits settings on protection groups with arbitrary pattern type.
See: newProtectionGroupArbitraryPatternLimits
smart constructor.
ProtectionGroupArbitraryPatternLimits' | |
|
Instances
newProtectionGroupArbitraryPatternLimits Source #
Create a value of ProtectionGroupArbitraryPatternLimits
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:maxMembers:ProtectionGroupArbitraryPatternLimits'
, protectionGroupArbitraryPatternLimits_maxMembers
- The maximum number of resources you can specify for a single arbitrary
pattern in a protection group.
protectionGroupArbitraryPatternLimits_maxMembers :: Lens' ProtectionGroupArbitraryPatternLimits Integer Source #
The maximum number of resources you can specify for a single arbitrary pattern in a protection group.
ProtectionGroupLimits
data ProtectionGroupLimits Source #
Limits settings on protection groups for your subscription.
See: newProtectionGroupLimits
smart constructor.
ProtectionGroupLimits' | |
|
Instances
newProtectionGroupLimits Source #
Create a value of ProtectionGroupLimits
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:maxProtectionGroups:ProtectionGroupLimits'
, protectionGroupLimits_maxProtectionGroups
- The maximum number of protection groups that you can have at one time.
$sel:patternTypeLimits:ProtectionGroupLimits'
, protectionGroupLimits_patternTypeLimits
- Limits settings by pattern type in the protection groups for your
subscription.
protectionGroupLimits_maxProtectionGroups :: Lens' ProtectionGroupLimits Integer Source #
The maximum number of protection groups that you can have at one time.
protectionGroupLimits_patternTypeLimits :: Lens' ProtectionGroupLimits ProtectionGroupPatternTypeLimits Source #
Limits settings by pattern type in the protection groups for your subscription.
ProtectionGroupPatternTypeLimits
data ProtectionGroupPatternTypeLimits Source #
Limits settings by pattern type in the protection groups for your subscription.
See: newProtectionGroupPatternTypeLimits
smart constructor.
ProtectionGroupPatternTypeLimits' | |
|
Instances
Eq ProtectionGroupPatternTypeLimits Source # | |
Read ProtectionGroupPatternTypeLimits Source # | |
Show ProtectionGroupPatternTypeLimits Source # | |
Generic ProtectionGroupPatternTypeLimits Source # | |
NFData ProtectionGroupPatternTypeLimits Source # | |
Defined in Amazonka.Shield.Types.ProtectionGroupPatternTypeLimits rnf :: ProtectionGroupPatternTypeLimits -> () # | |
Hashable ProtectionGroupPatternTypeLimits Source # | |
FromJSON ProtectionGroupPatternTypeLimits Source # | |
type Rep ProtectionGroupPatternTypeLimits Source # | |
Defined in Amazonka.Shield.Types.ProtectionGroupPatternTypeLimits type Rep ProtectionGroupPatternTypeLimits = D1 ('MetaData "ProtectionGroupPatternTypeLimits" "Amazonka.Shield.Types.ProtectionGroupPatternTypeLimits" "libZSservicesZSamazonka-shieldZSamazonka-shield" 'False) (C1 ('MetaCons "ProtectionGroupPatternTypeLimits'" 'PrefixI 'True) (S1 ('MetaSel ('Just "arbitraryPatternLimits") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 ProtectionGroupArbitraryPatternLimits))) |
newProtectionGroupPatternTypeLimits Source #
:: ProtectionGroupArbitraryPatternLimits |
|
-> ProtectionGroupPatternTypeLimits |
Create a value of ProtectionGroupPatternTypeLimits
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:arbitraryPatternLimits:ProtectionGroupPatternTypeLimits'
, protectionGroupPatternTypeLimits_arbitraryPatternLimits
- Limits settings on protection groups with arbitrary pattern type.
protectionGroupPatternTypeLimits_arbitraryPatternLimits :: Lens' ProtectionGroupPatternTypeLimits ProtectionGroupArbitraryPatternLimits Source #
Limits settings on protection groups with arbitrary pattern type.
ProtectionLimits
data ProtectionLimits Source #
Limits settings on protections for your subscription.
See: newProtectionLimits
smart constructor.
ProtectionLimits' | |
|
Instances
newProtectionLimits :: ProtectionLimits Source #
Create a value of ProtectionLimits
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:protectedResourceTypeLimits:ProtectionLimits'
, protectionLimits_protectedResourceTypeLimits
- The maximum number of resource types that you can specify in a
protection.
protectionLimits_protectedResourceTypeLimits :: Lens' ProtectionLimits [Limit] Source #
The maximum number of resource types that you can specify in a protection.
SubResourceSummary
data SubResourceSummary Source #
The attack information for the specified SubResource.
See: newSubResourceSummary
smart constructor.
SubResourceSummary' | |
|
Instances
newSubResourceSummary :: SubResourceSummary Source #
Create a value of SubResourceSummary
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:counters:SubResourceSummary'
, subResourceSummary_counters
- The counters that describe the details of the attack.
$sel:attackVectors:SubResourceSummary'
, subResourceSummary_attackVectors
- The list of attack types and associated counters.
$sel:id:SubResourceSummary'
, subResourceSummary_id
- The unique identifier (ID) of the SubResource
.
$sel:type':SubResourceSummary'
, subResourceSummary_type
- The SubResource
type.
subResourceSummary_counters :: Lens' SubResourceSummary (Maybe [SummarizedCounter]) Source #
The counters that describe the details of the attack.
subResourceSummary_attackVectors :: Lens' SubResourceSummary (Maybe [SummarizedAttackVector]) Source #
The list of attack types and associated counters.
subResourceSummary_id :: Lens' SubResourceSummary (Maybe Text) Source #
The unique identifier (ID) of the SubResource
.
subResourceSummary_type :: Lens' SubResourceSummary (Maybe SubResourceType) Source #
The SubResource
type.
Subscription
data Subscription Source #
Information about the Shield Advanced subscription for an account.
See: newSubscription
smart constructor.
Subscription' | |
|
Instances
Create a value of Subscription
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:timeCommitmentInSeconds:Subscription'
, subscription_timeCommitmentInSeconds
- The length, in seconds, of the Shield Advanced subscription for the
account.
$sel:startTime:Subscription'
, subscription_startTime
- The start time of the subscription, in Unix time in seconds. For more
information see
timestamp.
$sel:limits:Subscription'
, subscription_limits
- Specifies how many protections of a given type you can create.
$sel:autoRenew:Subscription'
, subscription_autoRenew
- If ENABLED
, the subscription will be automatically renewed at the end
of the existing subscription period.
When you initally create a subscription, AutoRenew
is set to
ENABLED
. You can change this by submitting an UpdateSubscription
request. If the UpdateSubscription
request does not included a value
for AutoRenew
, the existing value for AutoRenew
remains unchanged.
$sel:endTime:Subscription'
, subscription_endTime
- The date and time your subscription will end.
$sel:proactiveEngagementStatus:Subscription'
, subscription_proactiveEngagementStatus
- If ENABLED
, the Shield Response Team (SRT) will use email and phone to
notify contacts about escalations to the SRT and to initiate proactive
customer support.
If PENDING
, you have requested proactive engagement and the request is
pending. The status changes to ENABLED
when your request is fully
processed.
If DISABLED
, the SRT will not proactively notify contacts about
escalations or to initiate proactive customer support.
$sel:subscriptionArn:Subscription'
, subscription_subscriptionArn
- The ARN (Amazon Resource Name) of the subscription.
$sel:subscriptionLimits:Subscription'
, subscription_subscriptionLimits
- Limits settings for your subscription.
subscription_timeCommitmentInSeconds :: Lens' Subscription (Maybe Natural) Source #
The length, in seconds, of the Shield Advanced subscription for the account.
subscription_startTime :: Lens' Subscription (Maybe UTCTime) Source #
The start time of the subscription, in Unix time in seconds. For more information see timestamp.
subscription_limits :: Lens' Subscription (Maybe [Limit]) Source #
Specifies how many protections of a given type you can create.
subscription_autoRenew :: Lens' Subscription (Maybe AutoRenew) Source #
If ENABLED
, the subscription will be automatically renewed at the end
of the existing subscription period.
When you initally create a subscription, AutoRenew
is set to
ENABLED
. You can change this by submitting an UpdateSubscription
request. If the UpdateSubscription
request does not included a value
for AutoRenew
, the existing value for AutoRenew
remains unchanged.
subscription_endTime :: Lens' Subscription (Maybe UTCTime) Source #
The date and time your subscription will end.
subscription_proactiveEngagementStatus :: Lens' Subscription (Maybe ProactiveEngagementStatus) Source #
If ENABLED
, the Shield Response Team (SRT) will use email and phone to
notify contacts about escalations to the SRT and to initiate proactive
customer support.
If PENDING
, you have requested proactive engagement and the request is
pending. The status changes to ENABLED
when your request is fully
processed.
If DISABLED
, the SRT will not proactively notify contacts about
escalations or to initiate proactive customer support.
subscription_subscriptionArn :: Lens' Subscription (Maybe Text) Source #
The ARN (Amazon Resource Name) of the subscription.
subscription_subscriptionLimits :: Lens' Subscription SubscriptionLimits Source #
Limits settings for your subscription.
SubscriptionLimits
data SubscriptionLimits Source #
Limits settings for your subscription.
See: newSubscriptionLimits
smart constructor.
SubscriptionLimits' | |
|
Instances
newSubscriptionLimits Source #
Create a value of SubscriptionLimits
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:protectionLimits:SubscriptionLimits'
, subscriptionLimits_protectionLimits
- Limits settings on protections for your subscription.
$sel:protectionGroupLimits:SubscriptionLimits'
, subscriptionLimits_protectionGroupLimits
- Limits settings on protection groups for your subscription.
subscriptionLimits_protectionLimits :: Lens' SubscriptionLimits ProtectionLimits Source #
Limits settings on protections for your subscription.
subscriptionLimits_protectionGroupLimits :: Lens' SubscriptionLimits ProtectionGroupLimits Source #
Limits settings on protection groups for your subscription.
SummarizedAttackVector
data SummarizedAttackVector Source #
A summary of information about the attack.
See: newSummarizedAttackVector
smart constructor.
SummarizedAttackVector' | |
|
Instances
newSummarizedAttackVector Source #
Create a value of SummarizedAttackVector
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:vectorCounters:SummarizedAttackVector'
, summarizedAttackVector_vectorCounters
- The list of counters that describe the details of the attack.
$sel:vectorType:SummarizedAttackVector'
, summarizedAttackVector_vectorType
- The attack type, for example, SNMP reflection or SYN flood.
summarizedAttackVector_vectorCounters :: Lens' SummarizedAttackVector (Maybe [SummarizedCounter]) Source #
The list of counters that describe the details of the attack.
summarizedAttackVector_vectorType :: 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: newSummarizedCounter
smart constructor.
SummarizedCounter' | |
|
Instances
newSummarizedCounter :: SummarizedCounter Source #
Create a value of SummarizedCounter
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:max:SummarizedCounter'
, summarizedCounter_max
- The maximum value of the counter for a specified time period.
$sel:average:SummarizedCounter'
, summarizedCounter_average
- The average value of the counter for a specified time period.
$sel:n:SummarizedCounter'
, summarizedCounter_n
- The number of counters for a specified time period.
$sel:name:SummarizedCounter'
, summarizedCounter_name
- The counter name.
$sel:sum:SummarizedCounter'
, summarizedCounter_sum
- The total of counter values for a specified time period.
$sel:unit:SummarizedCounter'
, summarizedCounter_unit
- The unit of the counters.
summarizedCounter_max :: Lens' SummarizedCounter (Maybe Double) Source #
The maximum value of the counter for a specified time period.
summarizedCounter_average :: Lens' SummarizedCounter (Maybe Double) Source #
The average value of the counter for a specified time period.
summarizedCounter_n :: Lens' SummarizedCounter (Maybe Int) Source #
The number of counters for a specified time period.
summarizedCounter_name :: Lens' SummarizedCounter (Maybe Text) Source #
The counter name.
summarizedCounter_sum :: Lens' SummarizedCounter (Maybe Double) Source #
The total of counter values for a specified time period.
summarizedCounter_unit :: Lens' SummarizedCounter (Maybe Text) Source #
The unit of the counters.
Tag
A tag associated with an Amazon Web Services resource. Tags are key:value pairs that you can use to categorize and manage your resources, for purposes like billing or other management. Typically, the tag key represents a category, such as "environment", and the tag value represents a specific value within that category, such as "test," "development," or "production". Or you might set the tag key to "customer" and the value to the customer name or ID. You can specify one or more tags to add to each Amazon Web Services resource, up to 50 tags for a resource.
See: newTag
smart constructor.
Tag' | |
|
Instances
Eq Tag Source # | |
Read Tag Source # | |
Show Tag Source # | |
Generic Tag Source # | |
NFData Tag Source # | |
Defined in Amazonka.Shield.Types.Tag | |
Hashable Tag Source # | |
Defined in Amazonka.Shield.Types.Tag | |
ToJSON Tag Source # | |
Defined in Amazonka.Shield.Types.Tag | |
FromJSON Tag Source # | |
type Rep Tag Source # | |
Defined in Amazonka.Shield.Types.Tag type Rep Tag = D1 ('MetaData "Tag" "Amazonka.Shield.Types.Tag" "libZSservicesZSamazonka-shieldZSamazonka-shield" 'False) (C1 ('MetaCons "Tag'" 'PrefixI 'True) (S1 ('MetaSel ('Just "value") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "key") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)))) |
Create a value of Tag
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:value:Tag'
, tag_value
- Part of the key:value pair that defines a tag. You can use a tag value
to describe a specific value within a category, such as "companyA" or
"companyB." Tag values are case-sensitive.
$sel:key:Tag'
, tag_key
- Part of the key:value pair that defines a tag. You can use a tag key to
describe a category of information, such as "customer." Tag keys are
case-sensitive.
tag_value :: Lens' Tag (Maybe Text) Source #
Part of the key:value pair that defines a tag. You can use a tag value to describe a specific value within a category, such as "companyA" or "companyB." Tag values are case-sensitive.
tag_key :: Lens' Tag (Maybe Text) Source #
Part of the key:value pair that defines a tag. You can use a tag key to describe a category of information, such as "customer." Tag keys are case-sensitive.
TimeRange
The time range.
See: newTimeRange
smart constructor.
TimeRange' | |
|
Instances
Eq TimeRange Source # | |
Read TimeRange Source # | |
Show TimeRange Source # | |
Generic TimeRange Source # | |
NFData TimeRange Source # | |
Defined in Amazonka.Shield.Types.TimeRange | |
Hashable TimeRange Source # | |
Defined in Amazonka.Shield.Types.TimeRange | |
ToJSON TimeRange Source # | |
Defined in Amazonka.Shield.Types.TimeRange | |
FromJSON TimeRange Source # | |
type Rep TimeRange Source # | |
Defined in Amazonka.Shield.Types.TimeRange type Rep TimeRange = D1 ('MetaData "TimeRange" "Amazonka.Shield.Types.TimeRange" "libZSservicesZSamazonka-shieldZSamazonka-shield" 'False) (C1 ('MetaCons "TimeRange'" 'PrefixI 'True) (S1 ('MetaSel ('Just "fromInclusive") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe POSIX)) :*: S1 ('MetaSel ('Just "toExclusive") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe POSIX)))) |
newTimeRange :: TimeRange Source #
Create a value of TimeRange
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:fromInclusive:TimeRange'
, timeRange_fromInclusive
- The start time, in Unix time in seconds. For more information see
timestamp.
$sel:toExclusive:TimeRange'
, timeRange_toExclusive
- The end time, in Unix time in seconds. For more information see
timestamp.