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

Amazonka.Shield.CreateProtectionGroup

Description

Creates a grouping of protected resources so they can be handled as a collective. This resource grouping improves the accuracy of detection and reduces false positives.

Synopsis

Creating a Request

data CreateProtectionGroup Source #

See: newCreateProtectionGroup smart constructor.

Constructors

CreateProtectionGroup' 

Fields

  • resourceType :: Maybe ProtectedResourceType

    The resource type to include in the protection group. All protected resources of this type are included in the protection group. Newly protected resources of this type are automatically added to the group. You must set this when you set Pattern to BY_RESOURCE_TYPE and you must not set it for any other Pattern setting.

  • members :: Maybe [Text]

    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.

  • tags :: Maybe [Tag]

    One or more tag key-value pairs for the protection group.

  • protectionGroupId :: Text

    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.

  • aggregation :: ProtectionGroupAggregation

    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 and origin resources for CloudFront distributions.
  • pattern' :: ProtectionGroupPattern

    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.

Instances

Instances details
Eq CreateProtectionGroup Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

Read CreateProtectionGroup Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

Show CreateProtectionGroup Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

Generic CreateProtectionGroup Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

Associated Types

type Rep CreateProtectionGroup :: Type -> Type #

NFData CreateProtectionGroup Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

Methods

rnf :: CreateProtectionGroup -> () #

Hashable CreateProtectionGroup Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

ToJSON CreateProtectionGroup Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

AWSRequest CreateProtectionGroup Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

Associated Types

type AWSResponse CreateProtectionGroup #

ToHeaders CreateProtectionGroup Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

ToPath CreateProtectionGroup Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

ToQuery CreateProtectionGroup Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

type Rep CreateProtectionGroup Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

type AWSResponse CreateProtectionGroup Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

newCreateProtectionGroup Source #

Create a value of CreateProtectionGroup 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:CreateProtectionGroup', createProtectionGroup_resourceType - The resource type to include in the protection group. All protected resources of this type are included in the protection group. Newly protected resources of this type are automatically added to the 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:members:CreateProtectionGroup', createProtectionGroup_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.

$sel:tags:CreateProtectionGroup', createProtectionGroup_tags - One or more tag key-value pairs for the protection group.

$sel:protectionGroupId:CreateProtectionGroup', createProtectionGroup_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:CreateProtectionGroup', createProtectionGroup_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 and origin resources for CloudFront distributions.

$sel:pattern':CreateProtectionGroup', createProtectionGroup_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.

Request Lenses

createProtectionGroup_resourceType :: Lens' CreateProtectionGroup (Maybe ProtectedResourceType) Source #

The resource type to include in the protection group. All protected resources of this type are included in the protection group. Newly protected resources of this type are automatically added to the group. You must set this when you set Pattern to BY_RESOURCE_TYPE and you must not set it for any other Pattern setting.

createProtectionGroup_members :: Lens' CreateProtectionGroup (Maybe [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.

createProtectionGroup_tags :: Lens' CreateProtectionGroup (Maybe [Tag]) Source #

One or more tag key-value pairs for the protection group.

createProtectionGroup_protectionGroupId :: Lens' CreateProtectionGroup 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.

createProtectionGroup_aggregation :: Lens' CreateProtectionGroup 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 and origin resources for CloudFront distributions.

createProtectionGroup_pattern :: Lens' CreateProtectionGroup 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.

Destructuring the Response

data CreateProtectionGroupResponse Source #

See: newCreateProtectionGroupResponse smart constructor.

Constructors

CreateProtectionGroupResponse' 

Fields

Instances

Instances details
Eq CreateProtectionGroupResponse Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

Read CreateProtectionGroupResponse Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

Show CreateProtectionGroupResponse Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

Generic CreateProtectionGroupResponse Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

Associated Types

type Rep CreateProtectionGroupResponse :: Type -> Type #

NFData CreateProtectionGroupResponse Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

type Rep CreateProtectionGroupResponse Source # 
Instance details

Defined in Amazonka.Shield.CreateProtectionGroup

type Rep CreateProtectionGroupResponse = D1 ('MetaData "CreateProtectionGroupResponse" "Amazonka.Shield.CreateProtectionGroup" "libZSservicesZSamazonka-shieldZSamazonka-shield" 'False) (C1 ('MetaCons "CreateProtectionGroupResponse'" 'PrefixI 'True) (S1 ('MetaSel ('Just "httpStatus") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int)))

newCreateProtectionGroupResponse Source #

Create a value of CreateProtectionGroupResponse 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:httpStatus:CreateProtectionGroupResponse', createProtectionGroupResponse_httpStatus - The response's http status code.

Response Lenses