aws-sdk-securityhub 1.55.0 → 1.59.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +20 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-securityhub/client.rb +325 -5
- data/lib/aws-sdk-securityhub/client_api.rb +284 -0
- data/lib/aws-sdk-securityhub/types.rb +2667 -9
- data/lib/aws-sdk-securityhub.rb +1 -1
- metadata +4 -4
| @@ -1414,6 +1414,27 @@ module Aws::SecurityHub | |
| 1414 1414 | 
             
                  include Aws::Structure
         | 
| 1415 1415 | 
             
                end
         | 
| 1416 1416 |  | 
| 1417 | 
            +
                # An Availability Zone for the automatic scaling group.
         | 
| 1418 | 
            +
                #
         | 
| 1419 | 
            +
                # @note When making an API call, you may pass AwsAutoScalingAutoScalingGroupAvailabilityZonesListDetails
         | 
| 1420 | 
            +
                #   data as a hash:
         | 
| 1421 | 
            +
                #
         | 
| 1422 | 
            +
                #       {
         | 
| 1423 | 
            +
                #         value: "NonEmptyString",
         | 
| 1424 | 
            +
                #       }
         | 
| 1425 | 
            +
                #
         | 
| 1426 | 
            +
                # @!attribute [rw] value
         | 
| 1427 | 
            +
                #   The name of the Availability Zone.
         | 
| 1428 | 
            +
                #   @return [String]
         | 
| 1429 | 
            +
                #
         | 
| 1430 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/AwsAutoScalingAutoScalingGroupAvailabilityZonesListDetails AWS API Documentation
         | 
| 1431 | 
            +
                #
         | 
| 1432 | 
            +
                class AwsAutoScalingAutoScalingGroupAvailabilityZonesListDetails < Struct.new(
         | 
| 1433 | 
            +
                  :value)
         | 
| 1434 | 
            +
                  SENSITIVE = []
         | 
| 1435 | 
            +
                  include Aws::Structure
         | 
| 1436 | 
            +
                end
         | 
| 1437 | 
            +
             | 
| 1417 1438 | 
             
                # Provides details about an auto scaling group.
         | 
| 1418 1439 | 
             
                #
         | 
| 1419 1440 | 
             
                # @note When making an API call, you may pass AwsAutoScalingAutoScalingGroupDetails
         | 
| @@ -1425,6 +1446,34 @@ module Aws::SecurityHub | |
| 1425 1446 | 
             
                #         health_check_type: "NonEmptyString",
         | 
| 1426 1447 | 
             
                #         health_check_grace_period: 1,
         | 
| 1427 1448 | 
             
                #         created_time: "NonEmptyString",
         | 
| 1449 | 
            +
                #         mixed_instances_policy: {
         | 
| 1450 | 
            +
                #           instances_distribution: {
         | 
| 1451 | 
            +
                #             on_demand_allocation_strategy: "NonEmptyString",
         | 
| 1452 | 
            +
                #             on_demand_base_capacity: 1,
         | 
| 1453 | 
            +
                #             on_demand_percentage_above_base_capacity: 1,
         | 
| 1454 | 
            +
                #             spot_allocation_strategy: "NonEmptyString",
         | 
| 1455 | 
            +
                #             spot_instance_pools: 1,
         | 
| 1456 | 
            +
                #             spot_max_price: "NonEmptyString",
         | 
| 1457 | 
            +
                #           },
         | 
| 1458 | 
            +
                #           launch_template: {
         | 
| 1459 | 
            +
                #             launch_template_specification: {
         | 
| 1460 | 
            +
                #               launch_template_id: "NonEmptyString",
         | 
| 1461 | 
            +
                #               launch_template_name: "NonEmptyString",
         | 
| 1462 | 
            +
                #               version: "NonEmptyString",
         | 
| 1463 | 
            +
                #             },
         | 
| 1464 | 
            +
                #             overrides: [
         | 
| 1465 | 
            +
                #               {
         | 
| 1466 | 
            +
                #                 instance_type: "NonEmptyString",
         | 
| 1467 | 
            +
                #                 weighted_capacity: "NonEmptyString",
         | 
| 1468 | 
            +
                #               },
         | 
| 1469 | 
            +
                #             ],
         | 
| 1470 | 
            +
                #           },
         | 
| 1471 | 
            +
                #         },
         | 
| 1472 | 
            +
                #         availability_zones: [
         | 
| 1473 | 
            +
                #           {
         | 
| 1474 | 
            +
                #             value: "NonEmptyString",
         | 
| 1475 | 
            +
                #           },
         | 
| 1476 | 
            +
                #         ],
         | 
| 1428 1477 | 
             
                #       }
         | 
| 1429 1478 | 
             
                #
         | 
| 1430 1479 | 
             
                # @!attribute [rw] launch_configuration_name
         | 
| @@ -1457,6 +1506,14 @@ module Aws::SecurityHub | |
| 1457 1506 | 
             
                #   [1]: https://tools.ietf.org/html/rfc3339#section-5.6
         | 
| 1458 1507 | 
             
                #   @return [String]
         | 
| 1459 1508 | 
             
                #
         | 
| 1509 | 
            +
                # @!attribute [rw] mixed_instances_policy
         | 
| 1510 | 
            +
                #   The mixed instances policy for the automatic scaling group.
         | 
| 1511 | 
            +
                #   @return [Types::AwsAutoScalingAutoScalingGroupMixedInstancesPolicyDetails]
         | 
| 1512 | 
            +
                #
         | 
| 1513 | 
            +
                # @!attribute [rw] availability_zones
         | 
| 1514 | 
            +
                #   The list of Availability Zones for the automatic scaling group.
         | 
| 1515 | 
            +
                #   @return [Array<Types::AwsAutoScalingAutoScalingGroupAvailabilityZonesListDetails>]
         | 
| 1516 | 
            +
                #
         | 
| 1460 1517 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/AwsAutoScalingAutoScalingGroupDetails AWS API Documentation
         | 
| 1461 1518 | 
             
                #
         | 
| 1462 1519 | 
             
                class AwsAutoScalingAutoScalingGroupDetails < Struct.new(
         | 
| @@ -1464,7 +1521,217 @@ module Aws::SecurityHub | |
| 1464 1521 | 
             
                  :load_balancer_names,
         | 
| 1465 1522 | 
             
                  :health_check_type,
         | 
| 1466 1523 | 
             
                  :health_check_grace_period,
         | 
| 1467 | 
            -
                  :created_time | 
| 1524 | 
            +
                  :created_time,
         | 
| 1525 | 
            +
                  :mixed_instances_policy,
         | 
| 1526 | 
            +
                  :availability_zones)
         | 
| 1527 | 
            +
                  SENSITIVE = []
         | 
| 1528 | 
            +
                  include Aws::Structure
         | 
| 1529 | 
            +
                end
         | 
| 1530 | 
            +
             | 
| 1531 | 
            +
                # The mixed instances policy for the automatic scaling group.
         | 
| 1532 | 
            +
                #
         | 
| 1533 | 
            +
                # @note When making an API call, you may pass AwsAutoScalingAutoScalingGroupMixedInstancesPolicyDetails
         | 
| 1534 | 
            +
                #   data as a hash:
         | 
| 1535 | 
            +
                #
         | 
| 1536 | 
            +
                #       {
         | 
| 1537 | 
            +
                #         instances_distribution: {
         | 
| 1538 | 
            +
                #           on_demand_allocation_strategy: "NonEmptyString",
         | 
| 1539 | 
            +
                #           on_demand_base_capacity: 1,
         | 
| 1540 | 
            +
                #           on_demand_percentage_above_base_capacity: 1,
         | 
| 1541 | 
            +
                #           spot_allocation_strategy: "NonEmptyString",
         | 
| 1542 | 
            +
                #           spot_instance_pools: 1,
         | 
| 1543 | 
            +
                #           spot_max_price: "NonEmptyString",
         | 
| 1544 | 
            +
                #         },
         | 
| 1545 | 
            +
                #         launch_template: {
         | 
| 1546 | 
            +
                #           launch_template_specification: {
         | 
| 1547 | 
            +
                #             launch_template_id: "NonEmptyString",
         | 
| 1548 | 
            +
                #             launch_template_name: "NonEmptyString",
         | 
| 1549 | 
            +
                #             version: "NonEmptyString",
         | 
| 1550 | 
            +
                #           },
         | 
| 1551 | 
            +
                #           overrides: [
         | 
| 1552 | 
            +
                #             {
         | 
| 1553 | 
            +
                #               instance_type: "NonEmptyString",
         | 
| 1554 | 
            +
                #               weighted_capacity: "NonEmptyString",
         | 
| 1555 | 
            +
                #             },
         | 
| 1556 | 
            +
                #           ],
         | 
| 1557 | 
            +
                #         },
         | 
| 1558 | 
            +
                #       }
         | 
| 1559 | 
            +
                #
         | 
| 1560 | 
            +
                # @!attribute [rw] instances_distribution
         | 
| 1561 | 
            +
                #   The instances distribution. The instances distribution specifies the
         | 
| 1562 | 
            +
                #   distribution of On-Demand Instances and Spot Instances, the maximum
         | 
| 1563 | 
            +
                #   price to pay for Spot Instances, and how the Auto Scaling group
         | 
| 1564 | 
            +
                #   allocates instance types to fulfill On-Demand and Spot capacity.
         | 
| 1565 | 
            +
                #   @return [Types::AwsAutoScalingAutoScalingGroupMixedInstancesPolicyInstancesDistributionDetails]
         | 
| 1566 | 
            +
                #
         | 
| 1567 | 
            +
                # @!attribute [rw] launch_template
         | 
| 1568 | 
            +
                #   The launch template to use and the instance types (overrides) to use
         | 
| 1569 | 
            +
                #   to provision EC2 instances to fulfill On-Demand and Spot capacities.
         | 
| 1570 | 
            +
                #   @return [Types::AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateDetails]
         | 
| 1571 | 
            +
                #
         | 
| 1572 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/AwsAutoScalingAutoScalingGroupMixedInstancesPolicyDetails AWS API Documentation
         | 
| 1573 | 
            +
                #
         | 
| 1574 | 
            +
                class AwsAutoScalingAutoScalingGroupMixedInstancesPolicyDetails < Struct.new(
         | 
| 1575 | 
            +
                  :instances_distribution,
         | 
| 1576 | 
            +
                  :launch_template)
         | 
| 1577 | 
            +
                  SENSITIVE = []
         | 
| 1578 | 
            +
                  include Aws::Structure
         | 
| 1579 | 
            +
                end
         | 
| 1580 | 
            +
             | 
| 1581 | 
            +
                # Information about the instances distribution.
         | 
| 1582 | 
            +
                #
         | 
| 1583 | 
            +
                # @note When making an API call, you may pass AwsAutoScalingAutoScalingGroupMixedInstancesPolicyInstancesDistributionDetails
         | 
| 1584 | 
            +
                #   data as a hash:
         | 
| 1585 | 
            +
                #
         | 
| 1586 | 
            +
                #       {
         | 
| 1587 | 
            +
                #         on_demand_allocation_strategy: "NonEmptyString",
         | 
| 1588 | 
            +
                #         on_demand_base_capacity: 1,
         | 
| 1589 | 
            +
                #         on_demand_percentage_above_base_capacity: 1,
         | 
| 1590 | 
            +
                #         spot_allocation_strategy: "NonEmptyString",
         | 
| 1591 | 
            +
                #         spot_instance_pools: 1,
         | 
| 1592 | 
            +
                #         spot_max_price: "NonEmptyString",
         | 
| 1593 | 
            +
                #       }
         | 
| 1594 | 
            +
                #
         | 
| 1595 | 
            +
                # @!attribute [rw] on_demand_allocation_strategy
         | 
| 1596 | 
            +
                #   How to allocate instance types to fulfill On-Demand capacity.
         | 
| 1597 | 
            +
                #   @return [String]
         | 
| 1598 | 
            +
                #
         | 
| 1599 | 
            +
                # @!attribute [rw] on_demand_base_capacity
         | 
| 1600 | 
            +
                #   The minimum amount of the Auto Scaling group's capacity that must
         | 
| 1601 | 
            +
                #   be fulfilled by On-Demand Instances.
         | 
| 1602 | 
            +
                #   @return [Integer]
         | 
| 1603 | 
            +
                #
         | 
| 1604 | 
            +
                # @!attribute [rw] on_demand_percentage_above_base_capacity
         | 
| 1605 | 
            +
                #   The percentage of On-Demand Instances and Spot Instances for
         | 
| 1606 | 
            +
                #   additional capacity beyond `OnDemandBaseCapacity`.
         | 
| 1607 | 
            +
                #   @return [Integer]
         | 
| 1608 | 
            +
                #
         | 
| 1609 | 
            +
                # @!attribute [rw] spot_allocation_strategy
         | 
| 1610 | 
            +
                #   How to allocate instances across Spot Instance pools.
         | 
| 1611 | 
            +
                #   @return [String]
         | 
| 1612 | 
            +
                #
         | 
| 1613 | 
            +
                # @!attribute [rw] spot_instance_pools
         | 
| 1614 | 
            +
                #   The number of Spot Instance pools across which to allocate your Spot
         | 
| 1615 | 
            +
                #   Instances.
         | 
| 1616 | 
            +
                #   @return [Integer]
         | 
| 1617 | 
            +
                #
         | 
| 1618 | 
            +
                # @!attribute [rw] spot_max_price
         | 
| 1619 | 
            +
                #   The maximum price per unit hour that you are willing to pay for a
         | 
| 1620 | 
            +
                #   Spot Instance.
         | 
| 1621 | 
            +
                #   @return [String]
         | 
| 1622 | 
            +
                #
         | 
| 1623 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/AwsAutoScalingAutoScalingGroupMixedInstancesPolicyInstancesDistributionDetails AWS API Documentation
         | 
| 1624 | 
            +
                #
         | 
| 1625 | 
            +
                class AwsAutoScalingAutoScalingGroupMixedInstancesPolicyInstancesDistributionDetails < Struct.new(
         | 
| 1626 | 
            +
                  :on_demand_allocation_strategy,
         | 
| 1627 | 
            +
                  :on_demand_base_capacity,
         | 
| 1628 | 
            +
                  :on_demand_percentage_above_base_capacity,
         | 
| 1629 | 
            +
                  :spot_allocation_strategy,
         | 
| 1630 | 
            +
                  :spot_instance_pools,
         | 
| 1631 | 
            +
                  :spot_max_price)
         | 
| 1632 | 
            +
                  SENSITIVE = []
         | 
| 1633 | 
            +
                  include Aws::Structure
         | 
| 1634 | 
            +
                end
         | 
| 1635 | 
            +
             | 
| 1636 | 
            +
                # Describes a launch template and overrides for a mixed instances
         | 
| 1637 | 
            +
                # policy.
         | 
| 1638 | 
            +
                #
         | 
| 1639 | 
            +
                # @note When making an API call, you may pass AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateDetails
         | 
| 1640 | 
            +
                #   data as a hash:
         | 
| 1641 | 
            +
                #
         | 
| 1642 | 
            +
                #       {
         | 
| 1643 | 
            +
                #         launch_template_specification: {
         | 
| 1644 | 
            +
                #           launch_template_id: "NonEmptyString",
         | 
| 1645 | 
            +
                #           launch_template_name: "NonEmptyString",
         | 
| 1646 | 
            +
                #           version: "NonEmptyString",
         | 
| 1647 | 
            +
                #         },
         | 
| 1648 | 
            +
                #         overrides: [
         | 
| 1649 | 
            +
                #           {
         | 
| 1650 | 
            +
                #             instance_type: "NonEmptyString",
         | 
| 1651 | 
            +
                #             weighted_capacity: "NonEmptyString",
         | 
| 1652 | 
            +
                #           },
         | 
| 1653 | 
            +
                #         ],
         | 
| 1654 | 
            +
                #       }
         | 
| 1655 | 
            +
                #
         | 
| 1656 | 
            +
                # @!attribute [rw] launch_template_specification
         | 
| 1657 | 
            +
                #   The launch template to use.
         | 
| 1658 | 
            +
                #   @return [Types::AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecification]
         | 
| 1659 | 
            +
                #
         | 
| 1660 | 
            +
                # @!attribute [rw] overrides
         | 
| 1661 | 
            +
                #   Property values to use to override the values in the launch
         | 
| 1662 | 
            +
                #   template.
         | 
| 1663 | 
            +
                #   @return [Array<Types::AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateOverridesListDetails>]
         | 
| 1664 | 
            +
                #
         | 
| 1665 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateDetails AWS API Documentation
         | 
| 1666 | 
            +
                #
         | 
| 1667 | 
            +
                class AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateDetails < Struct.new(
         | 
| 1668 | 
            +
                  :launch_template_specification,
         | 
| 1669 | 
            +
                  :overrides)
         | 
| 1670 | 
            +
                  SENSITIVE = []
         | 
| 1671 | 
            +
                  include Aws::Structure
         | 
| 1672 | 
            +
                end
         | 
| 1673 | 
            +
             | 
| 1674 | 
            +
                # Details about the launch template to use.
         | 
| 1675 | 
            +
                #
         | 
| 1676 | 
            +
                # @note When making an API call, you may pass AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecification
         | 
| 1677 | 
            +
                #   data as a hash:
         | 
| 1678 | 
            +
                #
         | 
| 1679 | 
            +
                #       {
         | 
| 1680 | 
            +
                #         launch_template_id: "NonEmptyString",
         | 
| 1681 | 
            +
                #         launch_template_name: "NonEmptyString",
         | 
| 1682 | 
            +
                #         version: "NonEmptyString",
         | 
| 1683 | 
            +
                #       }
         | 
| 1684 | 
            +
                #
         | 
| 1685 | 
            +
                # @!attribute [rw] launch_template_id
         | 
| 1686 | 
            +
                #   The identifier of the launch template. You must specify either
         | 
| 1687 | 
            +
                #   `LaunchTemplateId` or `LaunchTemplateName`.
         | 
| 1688 | 
            +
                #   @return [String]
         | 
| 1689 | 
            +
                #
         | 
| 1690 | 
            +
                # @!attribute [rw] launch_template_name
         | 
| 1691 | 
            +
                #   The name of the launch template. You must specify either
         | 
| 1692 | 
            +
                #   `LaunchTemplateId` or `LaunchTemplateName`.
         | 
| 1693 | 
            +
                #   @return [String]
         | 
| 1694 | 
            +
                #
         | 
| 1695 | 
            +
                # @!attribute [rw] version
         | 
| 1696 | 
            +
                #   Identifies the version of the launch template. You can specify a
         | 
| 1697 | 
            +
                #   version identifier, or use the values `$Latest` or `$Default`.
         | 
| 1698 | 
            +
                #   @return [String]
         | 
| 1699 | 
            +
                #
         | 
| 1700 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecification AWS API Documentation
         | 
| 1701 | 
            +
                #
         | 
| 1702 | 
            +
                class AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecification < Struct.new(
         | 
| 1703 | 
            +
                  :launch_template_id,
         | 
| 1704 | 
            +
                  :launch_template_name,
         | 
| 1705 | 
            +
                  :version)
         | 
| 1706 | 
            +
                  SENSITIVE = []
         | 
| 1707 | 
            +
                  include Aws::Structure
         | 
| 1708 | 
            +
                end
         | 
| 1709 | 
            +
             | 
| 1710 | 
            +
                # Property values to use to override the values in the launch template.
         | 
| 1711 | 
            +
                #
         | 
| 1712 | 
            +
                # @note When making an API call, you may pass AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateOverridesListDetails
         | 
| 1713 | 
            +
                #   data as a hash:
         | 
| 1714 | 
            +
                #
         | 
| 1715 | 
            +
                #       {
         | 
| 1716 | 
            +
                #         instance_type: "NonEmptyString",
         | 
| 1717 | 
            +
                #         weighted_capacity: "NonEmptyString",
         | 
| 1718 | 
            +
                #       }
         | 
| 1719 | 
            +
                #
         | 
| 1720 | 
            +
                # @!attribute [rw] instance_type
         | 
| 1721 | 
            +
                #   The instance type. For example, `m3.xlarge`.
         | 
| 1722 | 
            +
                #   @return [String]
         | 
| 1723 | 
            +
                #
         | 
| 1724 | 
            +
                # @!attribute [rw] weighted_capacity
         | 
| 1725 | 
            +
                #   The number of capacity units provided by the specified instance type
         | 
| 1726 | 
            +
                #   in terms of virtual CPUs, memory, storage, throughput, or other
         | 
| 1727 | 
            +
                #   relative performance characteristic.
         | 
| 1728 | 
            +
                #   @return [String]
         | 
| 1729 | 
            +
                #
         | 
| 1730 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateOverridesListDetails AWS API Documentation
         | 
| 1731 | 
            +
                #
         | 
| 1732 | 
            +
                class AwsAutoScalingAutoScalingGroupMixedInstancesPolicyLaunchTemplateOverridesListDetails < Struct.new(
         | 
| 1733 | 
            +
                  :instance_type,
         | 
| 1734 | 
            +
                  :weighted_capacity)
         | 
| 1468 1735 | 
             
                  SENSITIVE = []
         | 
| 1469 1736 | 
             
                  include Aws::Structure
         | 
| 1470 1737 | 
             
                end
         | 
| @@ -1633,6 +1900,11 @@ module Aws::SecurityHub | |
| 1633 1900 | 
             
                #         security_groups: ["NonEmptyString"],
         | 
| 1634 1901 | 
             
                #         spot_price: "NonEmptyString",
         | 
| 1635 1902 | 
             
                #         user_data: "NonEmptyString",
         | 
| 1903 | 
            +
                #         metadata_options: {
         | 
| 1904 | 
            +
                #           http_endpoint: "NonEmptyString",
         | 
| 1905 | 
            +
                #           http_put_response_hop_limit: 1,
         | 
| 1906 | 
            +
                #           http_tokens: "NonEmptyString",
         | 
| 1907 | 
            +
                #         },
         | 
| 1636 1908 | 
             
                #       }
         | 
| 1637 1909 | 
             
                #
         | 
| 1638 1910 | 
             
                # @!attribute [rw] associate_public_ip_address
         | 
| @@ -1725,6 +1997,10 @@ module Aws::SecurityHub | |
| 1725 1997 | 
             
                #   be base64-encoded text.
         | 
| 1726 1998 | 
             
                #   @return [String]
         | 
| 1727 1999 | 
             
                #
         | 
| 2000 | 
            +
                # @!attribute [rw] metadata_options
         | 
| 2001 | 
            +
                #   The metadata options for the instances.
         | 
| 2002 | 
            +
                #   @return [Types::AwsAutoScalingLaunchConfigurationMetadataOptions]
         | 
| 2003 | 
            +
                #
         | 
| 1728 2004 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/AwsAutoScalingLaunchConfigurationDetails AWS API Documentation
         | 
| 1729 2005 | 
             
                #
         | 
| 1730 2006 | 
             
                class AwsAutoScalingLaunchConfigurationDetails < Struct.new(
         | 
| @@ -1745,7 +2021,8 @@ module Aws::SecurityHub | |
| 1745 2021 | 
             
                  :ramdisk_id,
         | 
| 1746 2022 | 
             
                  :security_groups,
         | 
| 1747 2023 | 
             
                  :spot_price,
         | 
| 1748 | 
            -
                  :user_data | 
| 2024 | 
            +
                  :user_data,
         | 
| 2025 | 
            +
                  :metadata_options)
         | 
| 1749 2026 | 
             
                  SENSITIVE = []
         | 
| 1750 2027 | 
             
                  include Aws::Structure
         | 
| 1751 2028 | 
             
                end
         | 
| @@ -1775,6 +2052,43 @@ module Aws::SecurityHub | |
| 1775 2052 | 
             
                  include Aws::Structure
         | 
| 1776 2053 | 
             
                end
         | 
| 1777 2054 |  | 
| 2055 | 
            +
                # The metadata options for the instances.
         | 
| 2056 | 
            +
                #
         | 
| 2057 | 
            +
                # @note When making an API call, you may pass AwsAutoScalingLaunchConfigurationMetadataOptions
         | 
| 2058 | 
            +
                #   data as a hash:
         | 
| 2059 | 
            +
                #
         | 
| 2060 | 
            +
                #       {
         | 
| 2061 | 
            +
                #         http_endpoint: "NonEmptyString",
         | 
| 2062 | 
            +
                #         http_put_response_hop_limit: 1,
         | 
| 2063 | 
            +
                #         http_tokens: "NonEmptyString",
         | 
| 2064 | 
            +
                #       }
         | 
| 2065 | 
            +
                #
         | 
| 2066 | 
            +
                # @!attribute [rw] http_endpoint
         | 
| 2067 | 
            +
                #   Enables or disables the HTTP metadata endpoint on your instances. By
         | 
| 2068 | 
            +
                #   default, the metadata endpoint is enabled.
         | 
| 2069 | 
            +
                #   @return [String]
         | 
| 2070 | 
            +
                #
         | 
| 2071 | 
            +
                # @!attribute [rw] http_put_response_hop_limit
         | 
| 2072 | 
            +
                #   The HTTP `PUT` response hop limit for instance metadata requests.
         | 
| 2073 | 
            +
                #   The larger the number, the further instance metadata requests can
         | 
| 2074 | 
            +
                #   travel.
         | 
| 2075 | 
            +
                #   @return [Integer]
         | 
| 2076 | 
            +
                #
         | 
| 2077 | 
            +
                # @!attribute [rw] http_tokens
         | 
| 2078 | 
            +
                #   Indicates whether token usage is `required` or `optional` for
         | 
| 2079 | 
            +
                #   metadata requests. By default, token usage is `optional`.
         | 
| 2080 | 
            +
                #   @return [String]
         | 
| 2081 | 
            +
                #
         | 
| 2082 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/AwsAutoScalingLaunchConfigurationMetadataOptions AWS API Documentation
         | 
| 2083 | 
            +
                #
         | 
| 2084 | 
            +
                class AwsAutoScalingLaunchConfigurationMetadataOptions < Struct.new(
         | 
| 2085 | 
            +
                  :http_endpoint,
         | 
| 2086 | 
            +
                  :http_put_response_hop_limit,
         | 
| 2087 | 
            +
                  :http_tokens)
         | 
| 2088 | 
            +
                  SENSITIVE = []
         | 
| 2089 | 
            +
                  include Aws::Structure
         | 
| 2090 | 
            +
                end
         | 
| 2091 | 
            +
             | 
| 1778 2092 | 
             
                # Provides details about an Certificate Manager certificate.
         | 
| 1779 2093 | 
             
                #
         | 
| 1780 2094 | 
             
                # @note When making an API call, you may pass AwsCertificateManagerCertificateDetails
         | 
| @@ -12004,6 +12318,340 @@ module Aws::SecurityHub | |
| 12004 12318 | 
             
                  include Aws::Structure
         | 
| 12005 12319 | 
             
                end
         | 
| 12006 12320 |  | 
| 12321 | 
            +
                # Details about an Network Firewall firewall.
         | 
| 12322 | 
            +
                #
         | 
| 12323 | 
            +
                # @note When making an API call, you may pass AwsNetworkFirewallFirewallDetails
         | 
| 12324 | 
            +
                #   data as a hash:
         | 
| 12325 | 
            +
                #
         | 
| 12326 | 
            +
                #       {
         | 
| 12327 | 
            +
                #         delete_protection: false,
         | 
| 12328 | 
            +
                #         description: "NonEmptyString",
         | 
| 12329 | 
            +
                #         firewall_arn: "NonEmptyString",
         | 
| 12330 | 
            +
                #         firewall_id: "NonEmptyString",
         | 
| 12331 | 
            +
                #         firewall_name: "NonEmptyString",
         | 
| 12332 | 
            +
                #         firewall_policy_arn: "NonEmptyString",
         | 
| 12333 | 
            +
                #         firewall_policy_change_protection: false,
         | 
| 12334 | 
            +
                #         subnet_change_protection: false,
         | 
| 12335 | 
            +
                #         subnet_mappings: [
         | 
| 12336 | 
            +
                #           {
         | 
| 12337 | 
            +
                #             subnet_id: "NonEmptyString",
         | 
| 12338 | 
            +
                #           },
         | 
| 12339 | 
            +
                #         ],
         | 
| 12340 | 
            +
                #         vpc_id: "NonEmptyString",
         | 
| 12341 | 
            +
                #       }
         | 
| 12342 | 
            +
                #
         | 
| 12343 | 
            +
                # @!attribute [rw] delete_protection
         | 
| 12344 | 
            +
                #   Whether the firewall is protected from deletion. If set to `true`,
         | 
| 12345 | 
            +
                #   then the firewall cannot be deleted.
         | 
| 12346 | 
            +
                #   @return [Boolean]
         | 
| 12347 | 
            +
                #
         | 
| 12348 | 
            +
                # @!attribute [rw] description
         | 
| 12349 | 
            +
                #   A description of the firewall.
         | 
| 12350 | 
            +
                #   @return [String]
         | 
| 12351 | 
            +
                #
         | 
| 12352 | 
            +
                # @!attribute [rw] firewall_arn
         | 
| 12353 | 
            +
                #   The ARN of the firewall.
         | 
| 12354 | 
            +
                #   @return [String]
         | 
| 12355 | 
            +
                #
         | 
| 12356 | 
            +
                # @!attribute [rw] firewall_id
         | 
| 12357 | 
            +
                #   The identifier of the firewall.
         | 
| 12358 | 
            +
                #   @return [String]
         | 
| 12359 | 
            +
                #
         | 
| 12360 | 
            +
                # @!attribute [rw] firewall_name
         | 
| 12361 | 
            +
                #   A descriptive name of the firewall.
         | 
| 12362 | 
            +
                #   @return [String]
         | 
| 12363 | 
            +
                #
         | 
| 12364 | 
            +
                # @!attribute [rw] firewall_policy_arn
         | 
| 12365 | 
            +
                #   The ARN of the firewall policy.
         | 
| 12366 | 
            +
                #   @return [String]
         | 
| 12367 | 
            +
                #
         | 
| 12368 | 
            +
                # @!attribute [rw] firewall_policy_change_protection
         | 
| 12369 | 
            +
                #   Whether the firewall is protected from a change to the firewall
         | 
| 12370 | 
            +
                #   policy. If set to `true`, you cannot associate a different policy
         | 
| 12371 | 
            +
                #   with the firewall.
         | 
| 12372 | 
            +
                #   @return [Boolean]
         | 
| 12373 | 
            +
                #
         | 
| 12374 | 
            +
                # @!attribute [rw] subnet_change_protection
         | 
| 12375 | 
            +
                #   Whether the firewall is protected from a change to the subnet
         | 
| 12376 | 
            +
                #   associations. If set to `true`, you cannot map different subnets to
         | 
| 12377 | 
            +
                #   the firewall.
         | 
| 12378 | 
            +
                #   @return [Boolean]
         | 
| 12379 | 
            +
                #
         | 
| 12380 | 
            +
                # @!attribute [rw] subnet_mappings
         | 
| 12381 | 
            +
                #   The public subnets that Network Firewall uses for the firewall. Each
         | 
| 12382 | 
            +
                #   subnet must belong to a different Availability Zone.
         | 
| 12383 | 
            +
                #   @return [Array<Types::AwsNetworkFirewallFirewallSubnetMappingsDetails>]
         | 
| 12384 | 
            +
                #
         | 
| 12385 | 
            +
                # @!attribute [rw] vpc_id
         | 
| 12386 | 
            +
                #   The identifier of the VPC where the firewall is used.
         | 
| 12387 | 
            +
                #   @return [String]
         | 
| 12388 | 
            +
                #
         | 
| 12389 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/AwsNetworkFirewallFirewallDetails AWS API Documentation
         | 
| 12390 | 
            +
                #
         | 
| 12391 | 
            +
                class AwsNetworkFirewallFirewallDetails < Struct.new(
         | 
| 12392 | 
            +
                  :delete_protection,
         | 
| 12393 | 
            +
                  :description,
         | 
| 12394 | 
            +
                  :firewall_arn,
         | 
| 12395 | 
            +
                  :firewall_id,
         | 
| 12396 | 
            +
                  :firewall_name,
         | 
| 12397 | 
            +
                  :firewall_policy_arn,
         | 
| 12398 | 
            +
                  :firewall_policy_change_protection,
         | 
| 12399 | 
            +
                  :subnet_change_protection,
         | 
| 12400 | 
            +
                  :subnet_mappings,
         | 
| 12401 | 
            +
                  :vpc_id)
         | 
| 12402 | 
            +
                  SENSITIVE = []
         | 
| 12403 | 
            +
                  include Aws::Structure
         | 
| 12404 | 
            +
                end
         | 
| 12405 | 
            +
             | 
| 12406 | 
            +
                # Details about a firewall policy. A firewall policy defines the
         | 
| 12407 | 
            +
                # behavior of a network firewall.
         | 
| 12408 | 
            +
                #
         | 
| 12409 | 
            +
                # @note When making an API call, you may pass AwsNetworkFirewallFirewallPolicyDetails
         | 
| 12410 | 
            +
                #   data as a hash:
         | 
| 12411 | 
            +
                #
         | 
| 12412 | 
            +
                #       {
         | 
| 12413 | 
            +
                #         firewall_policy: {
         | 
| 12414 | 
            +
                #           stateful_rule_group_references: [
         | 
| 12415 | 
            +
                #             {
         | 
| 12416 | 
            +
                #               resource_arn: "NonEmptyString",
         | 
| 12417 | 
            +
                #             },
         | 
| 12418 | 
            +
                #           ],
         | 
| 12419 | 
            +
                #           stateless_custom_actions: [
         | 
| 12420 | 
            +
                #             {
         | 
| 12421 | 
            +
                #               action_definition: {
         | 
| 12422 | 
            +
                #                 publish_metric_action: {
         | 
| 12423 | 
            +
                #                   dimensions: [
         | 
| 12424 | 
            +
                #                     {
         | 
| 12425 | 
            +
                #                       value: "NonEmptyString",
         | 
| 12426 | 
            +
                #                     },
         | 
| 12427 | 
            +
                #                   ],
         | 
| 12428 | 
            +
                #                 },
         | 
| 12429 | 
            +
                #               },
         | 
| 12430 | 
            +
                #               action_name: "NonEmptyString",
         | 
| 12431 | 
            +
                #             },
         | 
| 12432 | 
            +
                #           ],
         | 
| 12433 | 
            +
                #           stateless_default_actions: ["NonEmptyString"],
         | 
| 12434 | 
            +
                #           stateless_fragment_default_actions: ["NonEmptyString"],
         | 
| 12435 | 
            +
                #           stateless_rule_group_references: [
         | 
| 12436 | 
            +
                #             {
         | 
| 12437 | 
            +
                #               priority: 1,
         | 
| 12438 | 
            +
                #               resource_arn: "NonEmptyString",
         | 
| 12439 | 
            +
                #             },
         | 
| 12440 | 
            +
                #           ],
         | 
| 12441 | 
            +
                #         },
         | 
| 12442 | 
            +
                #         firewall_policy_arn: "NonEmptyString",
         | 
| 12443 | 
            +
                #         firewall_policy_id: "NonEmptyString",
         | 
| 12444 | 
            +
                #         firewall_policy_name: "NonEmptyString",
         | 
| 12445 | 
            +
                #         description: "NonEmptyString",
         | 
| 12446 | 
            +
                #       }
         | 
| 12447 | 
            +
                #
         | 
| 12448 | 
            +
                # @!attribute [rw] firewall_policy
         | 
| 12449 | 
            +
                #   The firewall policy configuration.
         | 
| 12450 | 
            +
                #   @return [Types::FirewallPolicyDetails]
         | 
| 12451 | 
            +
                #
         | 
| 12452 | 
            +
                # @!attribute [rw] firewall_policy_arn
         | 
| 12453 | 
            +
                #   The ARN of the firewall policy.
         | 
| 12454 | 
            +
                #   @return [String]
         | 
| 12455 | 
            +
                #
         | 
| 12456 | 
            +
                # @!attribute [rw] firewall_policy_id
         | 
| 12457 | 
            +
                #   The identifier of the firewall policy.
         | 
| 12458 | 
            +
                #   @return [String]
         | 
| 12459 | 
            +
                #
         | 
| 12460 | 
            +
                # @!attribute [rw] firewall_policy_name
         | 
| 12461 | 
            +
                #   The name of the firewall policy.
         | 
| 12462 | 
            +
                #   @return [String]
         | 
| 12463 | 
            +
                #
         | 
| 12464 | 
            +
                # @!attribute [rw] description
         | 
| 12465 | 
            +
                #   A description of the firewall policy.
         | 
| 12466 | 
            +
                #   @return [String]
         | 
| 12467 | 
            +
                #
         | 
| 12468 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/AwsNetworkFirewallFirewallPolicyDetails AWS API Documentation
         | 
| 12469 | 
            +
                #
         | 
| 12470 | 
            +
                class AwsNetworkFirewallFirewallPolicyDetails < Struct.new(
         | 
| 12471 | 
            +
                  :firewall_policy,
         | 
| 12472 | 
            +
                  :firewall_policy_arn,
         | 
| 12473 | 
            +
                  :firewall_policy_id,
         | 
| 12474 | 
            +
                  :firewall_policy_name,
         | 
| 12475 | 
            +
                  :description)
         | 
| 12476 | 
            +
                  SENSITIVE = []
         | 
| 12477 | 
            +
                  include Aws::Structure
         | 
| 12478 | 
            +
                end
         | 
| 12479 | 
            +
             | 
| 12480 | 
            +
                # A public subnet that Network Firewall uses for the firewall.
         | 
| 12481 | 
            +
                #
         | 
| 12482 | 
            +
                # @note When making an API call, you may pass AwsNetworkFirewallFirewallSubnetMappingsDetails
         | 
| 12483 | 
            +
                #   data as a hash:
         | 
| 12484 | 
            +
                #
         | 
| 12485 | 
            +
                #       {
         | 
| 12486 | 
            +
                #         subnet_id: "NonEmptyString",
         | 
| 12487 | 
            +
                #       }
         | 
| 12488 | 
            +
                #
         | 
| 12489 | 
            +
                # @!attribute [rw] subnet_id
         | 
| 12490 | 
            +
                #   The identifier of the subnet
         | 
| 12491 | 
            +
                #   @return [String]
         | 
| 12492 | 
            +
                #
         | 
| 12493 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/AwsNetworkFirewallFirewallSubnetMappingsDetails AWS API Documentation
         | 
| 12494 | 
            +
                #
         | 
| 12495 | 
            +
                class AwsNetworkFirewallFirewallSubnetMappingsDetails < Struct.new(
         | 
| 12496 | 
            +
                  :subnet_id)
         | 
| 12497 | 
            +
                  SENSITIVE = []
         | 
| 12498 | 
            +
                  include Aws::Structure
         | 
| 12499 | 
            +
                end
         | 
| 12500 | 
            +
             | 
| 12501 | 
            +
                # Details about an Network Firewall rule group. Rule groups are used to
         | 
| 12502 | 
            +
                # inspect and control network traffic. Stateless rule groups apply to
         | 
| 12503 | 
            +
                # individual packets. Stateful rule groups apply to packets in the
         | 
| 12504 | 
            +
                # context of their traffic flow.
         | 
| 12505 | 
            +
                #
         | 
| 12506 | 
            +
                # Rule groups are referenced in firewall policies.
         | 
| 12507 | 
            +
                #
         | 
| 12508 | 
            +
                # @note When making an API call, you may pass AwsNetworkFirewallRuleGroupDetails
         | 
| 12509 | 
            +
                #   data as a hash:
         | 
| 12510 | 
            +
                #
         | 
| 12511 | 
            +
                #       {
         | 
| 12512 | 
            +
                #         capacity: 1,
         | 
| 12513 | 
            +
                #         description: "NonEmptyString",
         | 
| 12514 | 
            +
                #         rule_group: {
         | 
| 12515 | 
            +
                #           rule_variables: {
         | 
| 12516 | 
            +
                #             ip_sets: {
         | 
| 12517 | 
            +
                #               definition: ["NonEmptyString"],
         | 
| 12518 | 
            +
                #             },
         | 
| 12519 | 
            +
                #             port_sets: {
         | 
| 12520 | 
            +
                #               definition: ["NonEmptyString"],
         | 
| 12521 | 
            +
                #             },
         | 
| 12522 | 
            +
                #           },
         | 
| 12523 | 
            +
                #           rules_source: {
         | 
| 12524 | 
            +
                #             rules_source_list: {
         | 
| 12525 | 
            +
                #               generated_rules_type: "NonEmptyString",
         | 
| 12526 | 
            +
                #               target_types: ["NonEmptyString"],
         | 
| 12527 | 
            +
                #               targets: ["NonEmptyString"],
         | 
| 12528 | 
            +
                #             },
         | 
| 12529 | 
            +
                #             rules_string: "NonEmptyString",
         | 
| 12530 | 
            +
                #             stateful_rules: [
         | 
| 12531 | 
            +
                #               {
         | 
| 12532 | 
            +
                #                 action: "NonEmptyString",
         | 
| 12533 | 
            +
                #                 header: {
         | 
| 12534 | 
            +
                #                   destination: "NonEmptyString",
         | 
| 12535 | 
            +
                #                   destination_port: "NonEmptyString",
         | 
| 12536 | 
            +
                #                   direction: "NonEmptyString",
         | 
| 12537 | 
            +
                #                   protocol: "NonEmptyString",
         | 
| 12538 | 
            +
                #                   source: "NonEmptyString",
         | 
| 12539 | 
            +
                #                   source_port: "NonEmptyString",
         | 
| 12540 | 
            +
                #                 },
         | 
| 12541 | 
            +
                #                 rule_options: [
         | 
| 12542 | 
            +
                #                   {
         | 
| 12543 | 
            +
                #                     keyword: "NonEmptyString",
         | 
| 12544 | 
            +
                #                     settings: ["NonEmptyString"],
         | 
| 12545 | 
            +
                #                   },
         | 
| 12546 | 
            +
                #                 ],
         | 
| 12547 | 
            +
                #               },
         | 
| 12548 | 
            +
                #             ],
         | 
| 12549 | 
            +
                #             stateless_rules_and_custom_actions: {
         | 
| 12550 | 
            +
                #               custom_actions: [
         | 
| 12551 | 
            +
                #                 {
         | 
| 12552 | 
            +
                #                   action_definition: {
         | 
| 12553 | 
            +
                #                     publish_metric_action: {
         | 
| 12554 | 
            +
                #                       dimensions: [
         | 
| 12555 | 
            +
                #                         {
         | 
| 12556 | 
            +
                #                           value: "NonEmptyString",
         | 
| 12557 | 
            +
                #                         },
         | 
| 12558 | 
            +
                #                       ],
         | 
| 12559 | 
            +
                #                     },
         | 
| 12560 | 
            +
                #                   },
         | 
| 12561 | 
            +
                #                   action_name: "NonEmptyString",
         | 
| 12562 | 
            +
                #                 },
         | 
| 12563 | 
            +
                #               ],
         | 
| 12564 | 
            +
                #               stateless_rules: [
         | 
| 12565 | 
            +
                #                 {
         | 
| 12566 | 
            +
                #                   priority: 1,
         | 
| 12567 | 
            +
                #                   rule_definition: {
         | 
| 12568 | 
            +
                #                     actions: ["NonEmptyString"],
         | 
| 12569 | 
            +
                #                     match_attributes: {
         | 
| 12570 | 
            +
                #                       destination_ports: [
         | 
| 12571 | 
            +
                #                         {
         | 
| 12572 | 
            +
                #                           from_port: 1,
         | 
| 12573 | 
            +
                #                           to_port: 1,
         | 
| 12574 | 
            +
                #                         },
         | 
| 12575 | 
            +
                #                       ],
         | 
| 12576 | 
            +
                #                       destinations: [
         | 
| 12577 | 
            +
                #                         {
         | 
| 12578 | 
            +
                #                           address_definition: "NonEmptyString",
         | 
| 12579 | 
            +
                #                         },
         | 
| 12580 | 
            +
                #                       ],
         | 
| 12581 | 
            +
                #                       protocols: [1],
         | 
| 12582 | 
            +
                #                       source_ports: [
         | 
| 12583 | 
            +
                #                         {
         | 
| 12584 | 
            +
                #                           from_port: 1,
         | 
| 12585 | 
            +
                #                           to_port: 1,
         | 
| 12586 | 
            +
                #                         },
         | 
| 12587 | 
            +
                #                       ],
         | 
| 12588 | 
            +
                #                       sources: [
         | 
| 12589 | 
            +
                #                         {
         | 
| 12590 | 
            +
                #                           address_definition: "NonEmptyString",
         | 
| 12591 | 
            +
                #                         },
         | 
| 12592 | 
            +
                #                       ],
         | 
| 12593 | 
            +
                #                       tcp_flags: [
         | 
| 12594 | 
            +
                #                         {
         | 
| 12595 | 
            +
                #                           flags: ["NonEmptyString"],
         | 
| 12596 | 
            +
                #                           masks: ["NonEmptyString"],
         | 
| 12597 | 
            +
                #                         },
         | 
| 12598 | 
            +
                #                       ],
         | 
| 12599 | 
            +
                #                     },
         | 
| 12600 | 
            +
                #                   },
         | 
| 12601 | 
            +
                #                 },
         | 
| 12602 | 
            +
                #               ],
         | 
| 12603 | 
            +
                #             },
         | 
| 12604 | 
            +
                #           },
         | 
| 12605 | 
            +
                #         },
         | 
| 12606 | 
            +
                #         rule_group_arn: "NonEmptyString",
         | 
| 12607 | 
            +
                #         rule_group_id: "NonEmptyString",
         | 
| 12608 | 
            +
                #         rule_group_name: "NonEmptyString",
         | 
| 12609 | 
            +
                #         type: "NonEmptyString",
         | 
| 12610 | 
            +
                #       }
         | 
| 12611 | 
            +
                #
         | 
| 12612 | 
            +
                # @!attribute [rw] capacity
         | 
| 12613 | 
            +
                #   The maximum number of operating resources that this rule group can
         | 
| 12614 | 
            +
                #   use.
         | 
| 12615 | 
            +
                #   @return [Integer]
         | 
| 12616 | 
            +
                #
         | 
| 12617 | 
            +
                # @!attribute [rw] description
         | 
| 12618 | 
            +
                #   A description of the rule group.
         | 
| 12619 | 
            +
                #   @return [String]
         | 
| 12620 | 
            +
                #
         | 
| 12621 | 
            +
                # @!attribute [rw] rule_group
         | 
| 12622 | 
            +
                #   Details about the rule group.
         | 
| 12623 | 
            +
                #   @return [Types::RuleGroupDetails]
         | 
| 12624 | 
            +
                #
         | 
| 12625 | 
            +
                # @!attribute [rw] rule_group_arn
         | 
| 12626 | 
            +
                #   The ARN of the rule group.
         | 
| 12627 | 
            +
                #   @return [String]
         | 
| 12628 | 
            +
                #
         | 
| 12629 | 
            +
                # @!attribute [rw] rule_group_id
         | 
| 12630 | 
            +
                #   The identifier of the rule group.
         | 
| 12631 | 
            +
                #   @return [String]
         | 
| 12632 | 
            +
                #
         | 
| 12633 | 
            +
                # @!attribute [rw] rule_group_name
         | 
| 12634 | 
            +
                #   The descriptive name of the rule group.
         | 
| 12635 | 
            +
                #   @return [String]
         | 
| 12636 | 
            +
                #
         | 
| 12637 | 
            +
                # @!attribute [rw] type
         | 
| 12638 | 
            +
                #   The type of rule group. A rule group can be stateful or stateless.
         | 
| 12639 | 
            +
                #   @return [String]
         | 
| 12640 | 
            +
                #
         | 
| 12641 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/AwsNetworkFirewallRuleGroupDetails AWS API Documentation
         | 
| 12642 | 
            +
                #
         | 
| 12643 | 
            +
                class AwsNetworkFirewallRuleGroupDetails < Struct.new(
         | 
| 12644 | 
            +
                  :capacity,
         | 
| 12645 | 
            +
                  :description,
         | 
| 12646 | 
            +
                  :rule_group,
         | 
| 12647 | 
            +
                  :rule_group_arn,
         | 
| 12648 | 
            +
                  :rule_group_id,
         | 
| 12649 | 
            +
                  :rule_group_name,
         | 
| 12650 | 
            +
                  :type)
         | 
| 12651 | 
            +
                  SENSITIVE = []
         | 
| 12652 | 
            +
                  include Aws::Structure
         | 
| 12653 | 
            +
                end
         | 
| 12654 | 
            +
             | 
| 12007 12655 | 
             
                # Details about the configuration of an OpenSearch cluster.
         | 
| 12008 12656 | 
             
                #
         | 
| 12009 12657 | 
             
                # @note When making an API call, you may pass AwsOpenSearchServiceDomainClusterConfigDetails
         | 
| @@ -15965,6 +16613,35 @@ module Aws::SecurityHub | |
| 15965 16613 | 
             
                  include Aws::Structure
         | 
| 15966 16614 | 
             
                end
         | 
| 15967 16615 |  | 
| 16616 | 
            +
                # Describes the versioning state of an S3 bucket.
         | 
| 16617 | 
            +
                #
         | 
| 16618 | 
            +
                # @note When making an API call, you may pass AwsS3BucketBucketVersioningConfiguration
         | 
| 16619 | 
            +
                #   data as a hash:
         | 
| 16620 | 
            +
                #
         | 
| 16621 | 
            +
                #       {
         | 
| 16622 | 
            +
                #         is_mfa_delete_enabled: false,
         | 
| 16623 | 
            +
                #         status: "NonEmptyString",
         | 
| 16624 | 
            +
                #       }
         | 
| 16625 | 
            +
                #
         | 
| 16626 | 
            +
                # @!attribute [rw] is_mfa_delete_enabled
         | 
| 16627 | 
            +
                #   Specifies whether MFA delete is currently enabled in the S3 bucket
         | 
| 16628 | 
            +
                #   versioning configuration. If the S3 bucket was never configured with
         | 
| 16629 | 
            +
                #   MFA delete, then this attribute is not included.
         | 
| 16630 | 
            +
                #   @return [Boolean]
         | 
| 16631 | 
            +
                #
         | 
| 16632 | 
            +
                # @!attribute [rw] status
         | 
| 16633 | 
            +
                #   The versioning status of the S3 bucket.
         | 
| 16634 | 
            +
                #   @return [String]
         | 
| 16635 | 
            +
                #
         | 
| 16636 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/AwsS3BucketBucketVersioningConfiguration AWS API Documentation
         | 
| 16637 | 
            +
                #
         | 
| 16638 | 
            +
                class AwsS3BucketBucketVersioningConfiguration < Struct.new(
         | 
| 16639 | 
            +
                  :is_mfa_delete_enabled,
         | 
| 16640 | 
            +
                  :status)
         | 
| 16641 | 
            +
                  SENSITIVE = []
         | 
| 16642 | 
            +
                  include Aws::Structure
         | 
| 16643 | 
            +
                end
         | 
| 16644 | 
            +
             | 
| 15968 16645 | 
             
                # The details of an Amazon S3 bucket.
         | 
| 15969 16646 | 
             
                #
         | 
| 15970 16647 | 
             
                # @note When making an API call, you may pass AwsS3BucketDetails
         | 
| @@ -16087,6 +16764,10 @@ module Aws::SecurityHub | |
| 16087 16764 | 
             
                #             },
         | 
| 16088 16765 | 
             
                #           ],
         | 
| 16089 16766 | 
             
                #         },
         | 
| 16767 | 
            +
                #         bucket_versioning_configuration: {
         | 
| 16768 | 
            +
                #           is_mfa_delete_enabled: false,
         | 
| 16769 | 
            +
                #           status: "NonEmptyString",
         | 
| 16770 | 
            +
                #         },
         | 
| 16090 16771 | 
             
                #       }
         | 
| 16091 16772 | 
             
                #
         | 
| 16092 16773 | 
             
                # @!attribute [rw] owner_id
         | 
| @@ -16143,6 +16824,10 @@ module Aws::SecurityHub | |
| 16143 16824 | 
             
                #   The notification configuration for the S3 bucket.
         | 
| 16144 16825 | 
             
                #   @return [Types::AwsS3BucketNotificationConfiguration]
         | 
| 16145 16826 | 
             
                #
         | 
| 16827 | 
            +
                # @!attribute [rw] bucket_versioning_configuration
         | 
| 16828 | 
            +
                #   The versioning state of an S3 bucket.
         | 
| 16829 | 
            +
                #   @return [Types::AwsS3BucketBucketVersioningConfiguration]
         | 
| 16830 | 
            +
                #
         | 
| 16146 16831 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/AwsS3BucketDetails AWS API Documentation
         | 
| 16147 16832 | 
             
                #
         | 
| 16148 16833 | 
             
                class AwsS3BucketDetails < Struct.new(
         | 
| @@ -16156,7 +16841,8 @@ module Aws::SecurityHub | |
| 16156 16841 | 
             
                  :access_control_list,
         | 
| 16157 16842 | 
             
                  :bucket_logging_configuration,
         | 
| 16158 16843 | 
             
                  :bucket_website_configuration,
         | 
| 16159 | 
            -
                  :bucket_notification_configuration | 
| 16844 | 
            +
                  :bucket_notification_configuration,
         | 
| 16845 | 
            +
                  :bucket_versioning_configuration)
         | 
| 16160 16846 | 
             
                  SENSITIVE = []
         | 
| 16161 16847 | 
             
                  include Aws::Structure
         | 
| 16162 16848 | 
             
                end
         | 
| @@ -17077,6 +17763,34 @@ module Aws::SecurityHub | |
| 17077 17763 | 
             
                #                 health_check_type: "NonEmptyString",
         | 
| 17078 17764 | 
             
                #                 health_check_grace_period: 1,
         | 
| 17079 17765 | 
             
                #                 created_time: "NonEmptyString",
         | 
| 17766 | 
            +
                #                 mixed_instances_policy: {
         | 
| 17767 | 
            +
                #                   instances_distribution: {
         | 
| 17768 | 
            +
                #                     on_demand_allocation_strategy: "NonEmptyString",
         | 
| 17769 | 
            +
                #                     on_demand_base_capacity: 1,
         | 
| 17770 | 
            +
                #                     on_demand_percentage_above_base_capacity: 1,
         | 
| 17771 | 
            +
                #                     spot_allocation_strategy: "NonEmptyString",
         | 
| 17772 | 
            +
                #                     spot_instance_pools: 1,
         | 
| 17773 | 
            +
                #                     spot_max_price: "NonEmptyString",
         | 
| 17774 | 
            +
                #                   },
         | 
| 17775 | 
            +
                #                   launch_template: {
         | 
| 17776 | 
            +
                #                     launch_template_specification: {
         | 
| 17777 | 
            +
                #                       launch_template_id: "NonEmptyString",
         | 
| 17778 | 
            +
                #                       launch_template_name: "NonEmptyString",
         | 
| 17779 | 
            +
                #                       version: "NonEmptyString",
         | 
| 17780 | 
            +
                #                     },
         | 
| 17781 | 
            +
                #                     overrides: [
         | 
| 17782 | 
            +
                #                       {
         | 
| 17783 | 
            +
                #                         instance_type: "NonEmptyString",
         | 
| 17784 | 
            +
                #                         weighted_capacity: "NonEmptyString",
         | 
| 17785 | 
            +
                #                       },
         | 
| 17786 | 
            +
                #                     ],
         | 
| 17787 | 
            +
                #                   },
         | 
| 17788 | 
            +
                #                 },
         | 
| 17789 | 
            +
                #                 availability_zones: [
         | 
| 17790 | 
            +
                #                   {
         | 
| 17791 | 
            +
                #                     value: "NonEmptyString",
         | 
| 17792 | 
            +
                #                   },
         | 
| 17793 | 
            +
                #                 ],
         | 
| 17080 17794 | 
             
                #               },
         | 
| 17081 17795 | 
             
                #               aws_code_build_project: {
         | 
| 17082 17796 | 
             
                #                 encryption_key: "NonEmptyString",
         | 
| @@ -17647,6 +18361,10 @@ module Aws::SecurityHub | |
| 17647 18361 | 
             
                #                     },
         | 
| 17648 18362 | 
             
                #                   ],
         | 
| 17649 18363 | 
             
                #                 },
         | 
| 18364 | 
            +
                #                 bucket_versioning_configuration: {
         | 
| 18365 | 
            +
                #                   is_mfa_delete_enabled: false,
         | 
| 18366 | 
            +
                #                   status: "NonEmptyString",
         | 
| 18367 | 
            +
                #                 },
         | 
| 17650 18368 | 
             
                #               },
         | 
| 17651 18369 | 
             
                #               aws_s3_account_public_access_block: {
         | 
| 17652 18370 | 
             
                #                 block_public_acls: false,
         | 
| @@ -19061,6 +19779,11 @@ module Aws::SecurityHub | |
| 19061 19779 | 
             
                #                 security_groups: ["NonEmptyString"],
         | 
| 19062 19780 | 
             
                #                 spot_price: "NonEmptyString",
         | 
| 19063 19781 | 
             
                #                 user_data: "NonEmptyString",
         | 
| 19782 | 
            +
                #                 metadata_options: {
         | 
| 19783 | 
            +
                #                   http_endpoint: "NonEmptyString",
         | 
| 19784 | 
            +
                #                   http_put_response_hop_limit: 1,
         | 
| 19785 | 
            +
                #                   http_tokens: "NonEmptyString",
         | 
| 19786 | 
            +
                #                 },
         | 
| 19064 19787 | 
             
                #               },
         | 
| 19065 19788 | 
             
                #               aws_ec2_vpn_connection: {
         | 
| 19066 19789 | 
             
                #                 vpn_connection_id: "NonEmptyString",
         | 
| @@ -19270,6 +19993,157 @@ module Aws::SecurityHub | |
| 19270 19993 | 
             
                #                   ],
         | 
| 19271 19994 | 
             
                #                 },
         | 
| 19272 19995 | 
             
                #               },
         | 
| 19996 | 
            +
                #               aws_network_firewall_firewall_policy: {
         | 
| 19997 | 
            +
                #                 firewall_policy: {
         | 
| 19998 | 
            +
                #                   stateful_rule_group_references: [
         | 
| 19999 | 
            +
                #                     {
         | 
| 20000 | 
            +
                #                       resource_arn: "NonEmptyString",
         | 
| 20001 | 
            +
                #                     },
         | 
| 20002 | 
            +
                #                   ],
         | 
| 20003 | 
            +
                #                   stateless_custom_actions: [
         | 
| 20004 | 
            +
                #                     {
         | 
| 20005 | 
            +
                #                       action_definition: {
         | 
| 20006 | 
            +
                #                         publish_metric_action: {
         | 
| 20007 | 
            +
                #                           dimensions: [
         | 
| 20008 | 
            +
                #                             {
         | 
| 20009 | 
            +
                #                               value: "NonEmptyString",
         | 
| 20010 | 
            +
                #                             },
         | 
| 20011 | 
            +
                #                           ],
         | 
| 20012 | 
            +
                #                         },
         | 
| 20013 | 
            +
                #                       },
         | 
| 20014 | 
            +
                #                       action_name: "NonEmptyString",
         | 
| 20015 | 
            +
                #                     },
         | 
| 20016 | 
            +
                #                   ],
         | 
| 20017 | 
            +
                #                   stateless_default_actions: ["NonEmptyString"],
         | 
| 20018 | 
            +
                #                   stateless_fragment_default_actions: ["NonEmptyString"],
         | 
| 20019 | 
            +
                #                   stateless_rule_group_references: [
         | 
| 20020 | 
            +
                #                     {
         | 
| 20021 | 
            +
                #                       priority: 1,
         | 
| 20022 | 
            +
                #                       resource_arn: "NonEmptyString",
         | 
| 20023 | 
            +
                #                     },
         | 
| 20024 | 
            +
                #                   ],
         | 
| 20025 | 
            +
                #                 },
         | 
| 20026 | 
            +
                #                 firewall_policy_arn: "NonEmptyString",
         | 
| 20027 | 
            +
                #                 firewall_policy_id: "NonEmptyString",
         | 
| 20028 | 
            +
                #                 firewall_policy_name: "NonEmptyString",
         | 
| 20029 | 
            +
                #                 description: "NonEmptyString",
         | 
| 20030 | 
            +
                #               },
         | 
| 20031 | 
            +
                #               aws_network_firewall_firewall: {
         | 
| 20032 | 
            +
                #                 delete_protection: false,
         | 
| 20033 | 
            +
                #                 description: "NonEmptyString",
         | 
| 20034 | 
            +
                #                 firewall_arn: "NonEmptyString",
         | 
| 20035 | 
            +
                #                 firewall_id: "NonEmptyString",
         | 
| 20036 | 
            +
                #                 firewall_name: "NonEmptyString",
         | 
| 20037 | 
            +
                #                 firewall_policy_arn: "NonEmptyString",
         | 
| 20038 | 
            +
                #                 firewall_policy_change_protection: false,
         | 
| 20039 | 
            +
                #                 subnet_change_protection: false,
         | 
| 20040 | 
            +
                #                 subnet_mappings: [
         | 
| 20041 | 
            +
                #                   {
         | 
| 20042 | 
            +
                #                     subnet_id: "NonEmptyString",
         | 
| 20043 | 
            +
                #                   },
         | 
| 20044 | 
            +
                #                 ],
         | 
| 20045 | 
            +
                #                 vpc_id: "NonEmptyString",
         | 
| 20046 | 
            +
                #               },
         | 
| 20047 | 
            +
                #               aws_network_firewall_rule_group: {
         | 
| 20048 | 
            +
                #                 capacity: 1,
         | 
| 20049 | 
            +
                #                 description: "NonEmptyString",
         | 
| 20050 | 
            +
                #                 rule_group: {
         | 
| 20051 | 
            +
                #                   rule_variables: {
         | 
| 20052 | 
            +
                #                     ip_sets: {
         | 
| 20053 | 
            +
                #                       definition: ["NonEmptyString"],
         | 
| 20054 | 
            +
                #                     },
         | 
| 20055 | 
            +
                #                     port_sets: {
         | 
| 20056 | 
            +
                #                       definition: ["NonEmptyString"],
         | 
| 20057 | 
            +
                #                     },
         | 
| 20058 | 
            +
                #                   },
         | 
| 20059 | 
            +
                #                   rules_source: {
         | 
| 20060 | 
            +
                #                     rules_source_list: {
         | 
| 20061 | 
            +
                #                       generated_rules_type: "NonEmptyString",
         | 
| 20062 | 
            +
                #                       target_types: ["NonEmptyString"],
         | 
| 20063 | 
            +
                #                       targets: ["NonEmptyString"],
         | 
| 20064 | 
            +
                #                     },
         | 
| 20065 | 
            +
                #                     rules_string: "NonEmptyString",
         | 
| 20066 | 
            +
                #                     stateful_rules: [
         | 
| 20067 | 
            +
                #                       {
         | 
| 20068 | 
            +
                #                         action: "NonEmptyString",
         | 
| 20069 | 
            +
                #                         header: {
         | 
| 20070 | 
            +
                #                           destination: "NonEmptyString",
         | 
| 20071 | 
            +
                #                           destination_port: "NonEmptyString",
         | 
| 20072 | 
            +
                #                           direction: "NonEmptyString",
         | 
| 20073 | 
            +
                #                           protocol: "NonEmptyString",
         | 
| 20074 | 
            +
                #                           source: "NonEmptyString",
         | 
| 20075 | 
            +
                #                           source_port: "NonEmptyString",
         | 
| 20076 | 
            +
                #                         },
         | 
| 20077 | 
            +
                #                         rule_options: [
         | 
| 20078 | 
            +
                #                           {
         | 
| 20079 | 
            +
                #                             keyword: "NonEmptyString",
         | 
| 20080 | 
            +
                #                             settings: ["NonEmptyString"],
         | 
| 20081 | 
            +
                #                           },
         | 
| 20082 | 
            +
                #                         ],
         | 
| 20083 | 
            +
                #                       },
         | 
| 20084 | 
            +
                #                     ],
         | 
| 20085 | 
            +
                #                     stateless_rules_and_custom_actions: {
         | 
| 20086 | 
            +
                #                       custom_actions: [
         | 
| 20087 | 
            +
                #                         {
         | 
| 20088 | 
            +
                #                           action_definition: {
         | 
| 20089 | 
            +
                #                             publish_metric_action: {
         | 
| 20090 | 
            +
                #                               dimensions: [
         | 
| 20091 | 
            +
                #                                 {
         | 
| 20092 | 
            +
                #                                   value: "NonEmptyString",
         | 
| 20093 | 
            +
                #                                 },
         | 
| 20094 | 
            +
                #                               ],
         | 
| 20095 | 
            +
                #                             },
         | 
| 20096 | 
            +
                #                           },
         | 
| 20097 | 
            +
                #                           action_name: "NonEmptyString",
         | 
| 20098 | 
            +
                #                         },
         | 
| 20099 | 
            +
                #                       ],
         | 
| 20100 | 
            +
                #                       stateless_rules: [
         | 
| 20101 | 
            +
                #                         {
         | 
| 20102 | 
            +
                #                           priority: 1,
         | 
| 20103 | 
            +
                #                           rule_definition: {
         | 
| 20104 | 
            +
                #                             actions: ["NonEmptyString"],
         | 
| 20105 | 
            +
                #                             match_attributes: {
         | 
| 20106 | 
            +
                #                               destination_ports: [
         | 
| 20107 | 
            +
                #                                 {
         | 
| 20108 | 
            +
                #                                   from_port: 1,
         | 
| 20109 | 
            +
                #                                   to_port: 1,
         | 
| 20110 | 
            +
                #                                 },
         | 
| 20111 | 
            +
                #                               ],
         | 
| 20112 | 
            +
                #                               destinations: [
         | 
| 20113 | 
            +
                #                                 {
         | 
| 20114 | 
            +
                #                                   address_definition: "NonEmptyString",
         | 
| 20115 | 
            +
                #                                 },
         | 
| 20116 | 
            +
                #                               ],
         | 
| 20117 | 
            +
                #                               protocols: [1],
         | 
| 20118 | 
            +
                #                               source_ports: [
         | 
| 20119 | 
            +
                #                                 {
         | 
| 20120 | 
            +
                #                                   from_port: 1,
         | 
| 20121 | 
            +
                #                                   to_port: 1,
         | 
| 20122 | 
            +
                #                                 },
         | 
| 20123 | 
            +
                #                               ],
         | 
| 20124 | 
            +
                #                               sources: [
         | 
| 20125 | 
            +
                #                                 {
         | 
| 20126 | 
            +
                #                                   address_definition: "NonEmptyString",
         | 
| 20127 | 
            +
                #                                 },
         | 
| 20128 | 
            +
                #                               ],
         | 
| 20129 | 
            +
                #                               tcp_flags: [
         | 
| 20130 | 
            +
                #                                 {
         | 
| 20131 | 
            +
                #                                   flags: ["NonEmptyString"],
         | 
| 20132 | 
            +
                #                                   masks: ["NonEmptyString"],
         | 
| 20133 | 
            +
                #                                 },
         | 
| 20134 | 
            +
                #                               ],
         | 
| 20135 | 
            +
                #                             },
         | 
| 20136 | 
            +
                #                           },
         | 
| 20137 | 
            +
                #                         },
         | 
| 20138 | 
            +
                #                       ],
         | 
| 20139 | 
            +
                #                     },
         | 
| 20140 | 
            +
                #                   },
         | 
| 20141 | 
            +
                #                 },
         | 
| 20142 | 
            +
                #                 rule_group_arn: "NonEmptyString",
         | 
| 20143 | 
            +
                #                 rule_group_id: "NonEmptyString",
         | 
| 20144 | 
            +
                #                 rule_group_name: "NonEmptyString",
         | 
| 20145 | 
            +
                #                 type: "NonEmptyString",
         | 
| 20146 | 
            +
                #               },
         | 
| 19273 20147 | 
             
                #             },
         | 
| 19274 20148 | 
             
                #           },
         | 
| 19275 20149 | 
             
                #         ],
         | 
| @@ -20805,9 +21679,9 @@ module Aws::SecurityHub | |
| 20805 21679 | 
             
                #     Security Hub also resets the workflow status from `NOTIFIED` or
         | 
| 20806 21680 | 
             
                #     `RESOLVED` to `NEW` in the following cases:
         | 
| 20807 21681 | 
             
                #
         | 
| 20808 | 
            -
                #     *  | 
| 21682 | 
            +
                #     * `RecordState` changes from `ARCHIVED` to `ACTIVE`.
         | 
| 20809 21683 | 
             
                #
         | 
| 20810 | 
            -
                #     *  | 
| 21684 | 
            +
                #     * `Compliance.Status` changes from `PASSED` to either `WARNING`,
         | 
| 20811 21685 | 
             
                #       `FAILED`, or `NOT_AVAILABLE`.
         | 
| 20812 21686 | 
             
                #
         | 
| 20813 21687 | 
             
                #   * `NOTIFIED` - Indicates that the resource owner has been notified
         | 
| @@ -20815,11 +21689,36 @@ module Aws::SecurityHub | |
| 20815 21689 | 
             
                #     the resource owner, and needs intervention from the resource
         | 
| 20816 21690 | 
             
                #     owner.
         | 
| 20817 21691 | 
             
                #
         | 
| 20818 | 
            -
                # | 
| 20819 | 
            -
                #      | 
| 21692 | 
            +
                #     If one of the following occurs, the workflow status is changed
         | 
| 21693 | 
            +
                #     automatically from `NOTIFIED` to `NEW`\:
         | 
| 21694 | 
            +
                #
         | 
| 21695 | 
            +
                #     * `RecordState` changes from `ARCHIVED` to `ACTIVE`.
         | 
| 21696 | 
            +
                #
         | 
| 21697 | 
            +
                #     * `Compliance.Status` changes from `PASSED` to `FAILED`,
         | 
| 21698 | 
            +
                #       `WARNING`, or `NOT_AVAILABLE`.
         | 
| 21699 | 
            +
                #
         | 
| 21700 | 
            +
                #   * `SUPPRESSED` - Indicates that you reviewed the finding and do not
         | 
| 21701 | 
            +
                #     believe that any action is needed.
         | 
| 21702 | 
            +
                #
         | 
| 21703 | 
            +
                #     The workflow status of a `SUPPRESSED` finding does not change if
         | 
| 21704 | 
            +
                #     `RecordState` changes from `ARCHIVED` to `ACTIVE`.
         | 
| 20820 21705 | 
             
                #
         | 
| 20821 21706 | 
             
                #   * `RESOLVED` - The finding was reviewed and remediated and is now
         | 
| 20822 21707 | 
             
                #     considered resolved.
         | 
| 21708 | 
            +
                #
         | 
| 21709 | 
            +
                #     The finding remains `RESOLVED` unless one of the following occurs:
         | 
| 21710 | 
            +
                #
         | 
| 21711 | 
            +
                #     * `RecordState` changes from `ARCHIVED` to `ACTIVE`.
         | 
| 21712 | 
            +
                #
         | 
| 21713 | 
            +
                #     * `Compliance.Status` changes from `PASSED` to `FAILED`,
         | 
| 21714 | 
            +
                #       `WARNING`, or `NOT_AVAILABLE`.
         | 
| 21715 | 
            +
                #
         | 
| 21716 | 
            +
                #     In those cases, the workflow status is automatically reset to
         | 
| 21717 | 
            +
                #     `NEW`.
         | 
| 21718 | 
            +
                #
         | 
| 21719 | 
            +
                #     For findings from controls, if `Compliance.Status` is `PASSED`,
         | 
| 21720 | 
            +
                #     then Security Hub automatically sets the workflow status to
         | 
| 21721 | 
            +
                #     `RESOLVED`.
         | 
| 20823 21722 | 
             
                #   @return [Array<Types::StringFilter>]
         | 
| 20824 21723 | 
             
                #
         | 
| 20825 21724 | 
             
                # @!attribute [rw] record_state
         | 
| @@ -22102,6 +23001,34 @@ module Aws::SecurityHub | |
| 22102 23001 | 
             
                #                     health_check_type: "NonEmptyString",
         | 
| 22103 23002 | 
             
                #                     health_check_grace_period: 1,
         | 
| 22104 23003 | 
             
                #                     created_time: "NonEmptyString",
         | 
| 23004 | 
            +
                #                     mixed_instances_policy: {
         | 
| 23005 | 
            +
                #                       instances_distribution: {
         | 
| 23006 | 
            +
                #                         on_demand_allocation_strategy: "NonEmptyString",
         | 
| 23007 | 
            +
                #                         on_demand_base_capacity: 1,
         | 
| 23008 | 
            +
                #                         on_demand_percentage_above_base_capacity: 1,
         | 
| 23009 | 
            +
                #                         spot_allocation_strategy: "NonEmptyString",
         | 
| 23010 | 
            +
                #                         spot_instance_pools: 1,
         | 
| 23011 | 
            +
                #                         spot_max_price: "NonEmptyString",
         | 
| 23012 | 
            +
                #                       },
         | 
| 23013 | 
            +
                #                       launch_template: {
         | 
| 23014 | 
            +
                #                         launch_template_specification: {
         | 
| 23015 | 
            +
                #                           launch_template_id: "NonEmptyString",
         | 
| 23016 | 
            +
                #                           launch_template_name: "NonEmptyString",
         | 
| 23017 | 
            +
                #                           version: "NonEmptyString",
         | 
| 23018 | 
            +
                #                         },
         | 
| 23019 | 
            +
                #                         overrides: [
         | 
| 23020 | 
            +
                #                           {
         | 
| 23021 | 
            +
                #                             instance_type: "NonEmptyString",
         | 
| 23022 | 
            +
                #                             weighted_capacity: "NonEmptyString",
         | 
| 23023 | 
            +
                #                           },
         | 
| 23024 | 
            +
                #                         ],
         | 
| 23025 | 
            +
                #                       },
         | 
| 23026 | 
            +
                #                     },
         | 
| 23027 | 
            +
                #                     availability_zones: [
         | 
| 23028 | 
            +
                #                       {
         | 
| 23029 | 
            +
                #                         value: "NonEmptyString",
         | 
| 23030 | 
            +
                #                       },
         | 
| 23031 | 
            +
                #                     ],
         | 
| 22105 23032 | 
             
                #                   },
         | 
| 22106 23033 | 
             
                #                   aws_code_build_project: {
         | 
| 22107 23034 | 
             
                #                     encryption_key: "NonEmptyString",
         | 
| @@ -22672,6 +23599,10 @@ module Aws::SecurityHub | |
| 22672 23599 | 
             
                #                         },
         | 
| 22673 23600 | 
             
                #                       ],
         | 
| 22674 23601 | 
             
                #                     },
         | 
| 23602 | 
            +
                #                     bucket_versioning_configuration: {
         | 
| 23603 | 
            +
                #                       is_mfa_delete_enabled: false,
         | 
| 23604 | 
            +
                #                       status: "NonEmptyString",
         | 
| 23605 | 
            +
                #                     },
         | 
| 22675 23606 | 
             
                #                   },
         | 
| 22676 23607 | 
             
                #                   aws_s3_account_public_access_block: {
         | 
| 22677 23608 | 
             
                #                     block_public_acls: false,
         | 
| @@ -24086,6 +25017,11 @@ module Aws::SecurityHub | |
| 24086 25017 | 
             
                #                     security_groups: ["NonEmptyString"],
         | 
| 24087 25018 | 
             
                #                     spot_price: "NonEmptyString",
         | 
| 24088 25019 | 
             
                #                     user_data: "NonEmptyString",
         | 
| 25020 | 
            +
                #                     metadata_options: {
         | 
| 25021 | 
            +
                #                       http_endpoint: "NonEmptyString",
         | 
| 25022 | 
            +
                #                       http_put_response_hop_limit: 1,
         | 
| 25023 | 
            +
                #                       http_tokens: "NonEmptyString",
         | 
| 25024 | 
            +
                #                     },
         | 
| 24089 25025 | 
             
                #                   },
         | 
| 24090 25026 | 
             
                #                   aws_ec2_vpn_connection: {
         | 
| 24091 25027 | 
             
                #                     vpn_connection_id: "NonEmptyString",
         | 
| @@ -24295,6 +25231,157 @@ module Aws::SecurityHub | |
| 24295 25231 | 
             
                #                       ],
         | 
| 24296 25232 | 
             
                #                     },
         | 
| 24297 25233 | 
             
                #                   },
         | 
| 25234 | 
            +
                #                   aws_network_firewall_firewall_policy: {
         | 
| 25235 | 
            +
                #                     firewall_policy: {
         | 
| 25236 | 
            +
                #                       stateful_rule_group_references: [
         | 
| 25237 | 
            +
                #                         {
         | 
| 25238 | 
            +
                #                           resource_arn: "NonEmptyString",
         | 
| 25239 | 
            +
                #                         },
         | 
| 25240 | 
            +
                #                       ],
         | 
| 25241 | 
            +
                #                       stateless_custom_actions: [
         | 
| 25242 | 
            +
                #                         {
         | 
| 25243 | 
            +
                #                           action_definition: {
         | 
| 25244 | 
            +
                #                             publish_metric_action: {
         | 
| 25245 | 
            +
                #                               dimensions: [
         | 
| 25246 | 
            +
                #                                 {
         | 
| 25247 | 
            +
                #                                   value: "NonEmptyString",
         | 
| 25248 | 
            +
                #                                 },
         | 
| 25249 | 
            +
                #                               ],
         | 
| 25250 | 
            +
                #                             },
         | 
| 25251 | 
            +
                #                           },
         | 
| 25252 | 
            +
                #                           action_name: "NonEmptyString",
         | 
| 25253 | 
            +
                #                         },
         | 
| 25254 | 
            +
                #                       ],
         | 
| 25255 | 
            +
                #                       stateless_default_actions: ["NonEmptyString"],
         | 
| 25256 | 
            +
                #                       stateless_fragment_default_actions: ["NonEmptyString"],
         | 
| 25257 | 
            +
                #                       stateless_rule_group_references: [
         | 
| 25258 | 
            +
                #                         {
         | 
| 25259 | 
            +
                #                           priority: 1,
         | 
| 25260 | 
            +
                #                           resource_arn: "NonEmptyString",
         | 
| 25261 | 
            +
                #                         },
         | 
| 25262 | 
            +
                #                       ],
         | 
| 25263 | 
            +
                #                     },
         | 
| 25264 | 
            +
                #                     firewall_policy_arn: "NonEmptyString",
         | 
| 25265 | 
            +
                #                     firewall_policy_id: "NonEmptyString",
         | 
| 25266 | 
            +
                #                     firewall_policy_name: "NonEmptyString",
         | 
| 25267 | 
            +
                #                     description: "NonEmptyString",
         | 
| 25268 | 
            +
                #                   },
         | 
| 25269 | 
            +
                #                   aws_network_firewall_firewall: {
         | 
| 25270 | 
            +
                #                     delete_protection: false,
         | 
| 25271 | 
            +
                #                     description: "NonEmptyString",
         | 
| 25272 | 
            +
                #                     firewall_arn: "NonEmptyString",
         | 
| 25273 | 
            +
                #                     firewall_id: "NonEmptyString",
         | 
| 25274 | 
            +
                #                     firewall_name: "NonEmptyString",
         | 
| 25275 | 
            +
                #                     firewall_policy_arn: "NonEmptyString",
         | 
| 25276 | 
            +
                #                     firewall_policy_change_protection: false,
         | 
| 25277 | 
            +
                #                     subnet_change_protection: false,
         | 
| 25278 | 
            +
                #                     subnet_mappings: [
         | 
| 25279 | 
            +
                #                       {
         | 
| 25280 | 
            +
                #                         subnet_id: "NonEmptyString",
         | 
| 25281 | 
            +
                #                       },
         | 
| 25282 | 
            +
                #                     ],
         | 
| 25283 | 
            +
                #                     vpc_id: "NonEmptyString",
         | 
| 25284 | 
            +
                #                   },
         | 
| 25285 | 
            +
                #                   aws_network_firewall_rule_group: {
         | 
| 25286 | 
            +
                #                     capacity: 1,
         | 
| 25287 | 
            +
                #                     description: "NonEmptyString",
         | 
| 25288 | 
            +
                #                     rule_group: {
         | 
| 25289 | 
            +
                #                       rule_variables: {
         | 
| 25290 | 
            +
                #                         ip_sets: {
         | 
| 25291 | 
            +
                #                           definition: ["NonEmptyString"],
         | 
| 25292 | 
            +
                #                         },
         | 
| 25293 | 
            +
                #                         port_sets: {
         | 
| 25294 | 
            +
                #                           definition: ["NonEmptyString"],
         | 
| 25295 | 
            +
                #                         },
         | 
| 25296 | 
            +
                #                       },
         | 
| 25297 | 
            +
                #                       rules_source: {
         | 
| 25298 | 
            +
                #                         rules_source_list: {
         | 
| 25299 | 
            +
                #                           generated_rules_type: "NonEmptyString",
         | 
| 25300 | 
            +
                #                           target_types: ["NonEmptyString"],
         | 
| 25301 | 
            +
                #                           targets: ["NonEmptyString"],
         | 
| 25302 | 
            +
                #                         },
         | 
| 25303 | 
            +
                #                         rules_string: "NonEmptyString",
         | 
| 25304 | 
            +
                #                         stateful_rules: [
         | 
| 25305 | 
            +
                #                           {
         | 
| 25306 | 
            +
                #                             action: "NonEmptyString",
         | 
| 25307 | 
            +
                #                             header: {
         | 
| 25308 | 
            +
                #                               destination: "NonEmptyString",
         | 
| 25309 | 
            +
                #                               destination_port: "NonEmptyString",
         | 
| 25310 | 
            +
                #                               direction: "NonEmptyString",
         | 
| 25311 | 
            +
                #                               protocol: "NonEmptyString",
         | 
| 25312 | 
            +
                #                               source: "NonEmptyString",
         | 
| 25313 | 
            +
                #                               source_port: "NonEmptyString",
         | 
| 25314 | 
            +
                #                             },
         | 
| 25315 | 
            +
                #                             rule_options: [
         | 
| 25316 | 
            +
                #                               {
         | 
| 25317 | 
            +
                #                                 keyword: "NonEmptyString",
         | 
| 25318 | 
            +
                #                                 settings: ["NonEmptyString"],
         | 
| 25319 | 
            +
                #                               },
         | 
| 25320 | 
            +
                #                             ],
         | 
| 25321 | 
            +
                #                           },
         | 
| 25322 | 
            +
                #                         ],
         | 
| 25323 | 
            +
                #                         stateless_rules_and_custom_actions: {
         | 
| 25324 | 
            +
                #                           custom_actions: [
         | 
| 25325 | 
            +
                #                             {
         | 
| 25326 | 
            +
                #                               action_definition: {
         | 
| 25327 | 
            +
                #                                 publish_metric_action: {
         | 
| 25328 | 
            +
                #                                   dimensions: [
         | 
| 25329 | 
            +
                #                                     {
         | 
| 25330 | 
            +
                #                                       value: "NonEmptyString",
         | 
| 25331 | 
            +
                #                                     },
         | 
| 25332 | 
            +
                #                                   ],
         | 
| 25333 | 
            +
                #                                 },
         | 
| 25334 | 
            +
                #                               },
         | 
| 25335 | 
            +
                #                               action_name: "NonEmptyString",
         | 
| 25336 | 
            +
                #                             },
         | 
| 25337 | 
            +
                #                           ],
         | 
| 25338 | 
            +
                #                           stateless_rules: [
         | 
| 25339 | 
            +
                #                             {
         | 
| 25340 | 
            +
                #                               priority: 1,
         | 
| 25341 | 
            +
                #                               rule_definition: {
         | 
| 25342 | 
            +
                #                                 actions: ["NonEmptyString"],
         | 
| 25343 | 
            +
                #                                 match_attributes: {
         | 
| 25344 | 
            +
                #                                   destination_ports: [
         | 
| 25345 | 
            +
                #                                     {
         | 
| 25346 | 
            +
                #                                       from_port: 1,
         | 
| 25347 | 
            +
                #                                       to_port: 1,
         | 
| 25348 | 
            +
                #                                     },
         | 
| 25349 | 
            +
                #                                   ],
         | 
| 25350 | 
            +
                #                                   destinations: [
         | 
| 25351 | 
            +
                #                                     {
         | 
| 25352 | 
            +
                #                                       address_definition: "NonEmptyString",
         | 
| 25353 | 
            +
                #                                     },
         | 
| 25354 | 
            +
                #                                   ],
         | 
| 25355 | 
            +
                #                                   protocols: [1],
         | 
| 25356 | 
            +
                #                                   source_ports: [
         | 
| 25357 | 
            +
                #                                     {
         | 
| 25358 | 
            +
                #                                       from_port: 1,
         | 
| 25359 | 
            +
                #                                       to_port: 1,
         | 
| 25360 | 
            +
                #                                     },
         | 
| 25361 | 
            +
                #                                   ],
         | 
| 25362 | 
            +
                #                                   sources: [
         | 
| 25363 | 
            +
                #                                     {
         | 
| 25364 | 
            +
                #                                       address_definition: "NonEmptyString",
         | 
| 25365 | 
            +
                #                                     },
         | 
| 25366 | 
            +
                #                                   ],
         | 
| 25367 | 
            +
                #                                   tcp_flags: [
         | 
| 25368 | 
            +
                #                                     {
         | 
| 25369 | 
            +
                #                                       flags: ["NonEmptyString"],
         | 
| 25370 | 
            +
                #                                       masks: ["NonEmptyString"],
         | 
| 25371 | 
            +
                #                                     },
         | 
| 25372 | 
            +
                #                                   ],
         | 
| 25373 | 
            +
                #                                 },
         | 
| 25374 | 
            +
                #                               },
         | 
| 25375 | 
            +
                #                             },
         | 
| 25376 | 
            +
                #                           ],
         | 
| 25377 | 
            +
                #                         },
         | 
| 25378 | 
            +
                #                       },
         | 
| 25379 | 
            +
                #                     },
         | 
| 25380 | 
            +
                #                     rule_group_arn: "NonEmptyString",
         | 
| 25381 | 
            +
                #                     rule_group_id: "NonEmptyString",
         | 
| 25382 | 
            +
                #                     rule_group_name: "NonEmptyString",
         | 
| 25383 | 
            +
                #                     type: "NonEmptyString",
         | 
| 25384 | 
            +
                #                   },
         | 
| 24298 25385 | 
             
                #                 },
         | 
| 24299 25386 | 
             
                #               },
         | 
| 24300 25387 | 
             
                #             ],
         | 
| @@ -27232,6 +28319,167 @@ module Aws::SecurityHub | |
| 27232 28319 | 
             
                  include Aws::Structure
         | 
| 27233 28320 | 
             
                end
         | 
| 27234 28321 |  | 
| 28322 | 
            +
                # Defines the behavior of the firewall.
         | 
| 28323 | 
            +
                #
         | 
| 28324 | 
            +
                # @note When making an API call, you may pass FirewallPolicyDetails
         | 
| 28325 | 
            +
                #   data as a hash:
         | 
| 28326 | 
            +
                #
         | 
| 28327 | 
            +
                #       {
         | 
| 28328 | 
            +
                #         stateful_rule_group_references: [
         | 
| 28329 | 
            +
                #           {
         | 
| 28330 | 
            +
                #             resource_arn: "NonEmptyString",
         | 
| 28331 | 
            +
                #           },
         | 
| 28332 | 
            +
                #         ],
         | 
| 28333 | 
            +
                #         stateless_custom_actions: [
         | 
| 28334 | 
            +
                #           {
         | 
| 28335 | 
            +
                #             action_definition: {
         | 
| 28336 | 
            +
                #               publish_metric_action: {
         | 
| 28337 | 
            +
                #                 dimensions: [
         | 
| 28338 | 
            +
                #                   {
         | 
| 28339 | 
            +
                #                     value: "NonEmptyString",
         | 
| 28340 | 
            +
                #                   },
         | 
| 28341 | 
            +
                #                 ],
         | 
| 28342 | 
            +
                #               },
         | 
| 28343 | 
            +
                #             },
         | 
| 28344 | 
            +
                #             action_name: "NonEmptyString",
         | 
| 28345 | 
            +
                #           },
         | 
| 28346 | 
            +
                #         ],
         | 
| 28347 | 
            +
                #         stateless_default_actions: ["NonEmptyString"],
         | 
| 28348 | 
            +
                #         stateless_fragment_default_actions: ["NonEmptyString"],
         | 
| 28349 | 
            +
                #         stateless_rule_group_references: [
         | 
| 28350 | 
            +
                #           {
         | 
| 28351 | 
            +
                #             priority: 1,
         | 
| 28352 | 
            +
                #             resource_arn: "NonEmptyString",
         | 
| 28353 | 
            +
                #           },
         | 
| 28354 | 
            +
                #         ],
         | 
| 28355 | 
            +
                #       }
         | 
| 28356 | 
            +
                #
         | 
| 28357 | 
            +
                # @!attribute [rw] stateful_rule_group_references
         | 
| 28358 | 
            +
                #   The stateful rule groups that are used in the firewall policy.
         | 
| 28359 | 
            +
                #   @return [Array<Types::FirewallPolicyStatefulRuleGroupReferencesDetails>]
         | 
| 28360 | 
            +
                #
         | 
| 28361 | 
            +
                # @!attribute [rw] stateless_custom_actions
         | 
| 28362 | 
            +
                #   The custom action definitions that are available to use in the
         | 
| 28363 | 
            +
                #   firewall policy's `StatelessDefaultActions` setting.
         | 
| 28364 | 
            +
                #   @return [Array<Types::FirewallPolicyStatelessCustomActionsDetails>]
         | 
| 28365 | 
            +
                #
         | 
| 28366 | 
            +
                # @!attribute [rw] stateless_default_actions
         | 
| 28367 | 
            +
                #   The actions to take on a packet if it doesn't match any of the
         | 
| 28368 | 
            +
                #   stateless rules in the policy.
         | 
| 28369 | 
            +
                #
         | 
| 28370 | 
            +
                #   You must specify a standard action (`aws:pass`, `aws:drop`,
         | 
| 28371 | 
            +
                #   `aws:forward_to_sfe`), and can optionally include a custom action
         | 
| 28372 | 
            +
                #   from `StatelessCustomActions`.
         | 
| 28373 | 
            +
                #   @return [Array<String>]
         | 
| 28374 | 
            +
                #
         | 
| 28375 | 
            +
                # @!attribute [rw] stateless_fragment_default_actions
         | 
| 28376 | 
            +
                #   The actions to take on a fragmented UDP packet if it doesn't match
         | 
| 28377 | 
            +
                #   any of the stateless rules in the policy.
         | 
| 28378 | 
            +
                #
         | 
| 28379 | 
            +
                #   You must specify a standard action (`aws:pass`, `aws:drop`,
         | 
| 28380 | 
            +
                #   `aws:forward_to_sfe`), and can optionally include a custom action
         | 
| 28381 | 
            +
                #   from `StatelessCustomActions`.
         | 
| 28382 | 
            +
                #   @return [Array<String>]
         | 
| 28383 | 
            +
                #
         | 
| 28384 | 
            +
                # @!attribute [rw] stateless_rule_group_references
         | 
| 28385 | 
            +
                #   The stateless rule groups that are used in the firewall policy.
         | 
| 28386 | 
            +
                #   @return [Array<Types::FirewallPolicyStatelessRuleGroupReferencesDetails>]
         | 
| 28387 | 
            +
                #
         | 
| 28388 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/FirewallPolicyDetails AWS API Documentation
         | 
| 28389 | 
            +
                #
         | 
| 28390 | 
            +
                class FirewallPolicyDetails < Struct.new(
         | 
| 28391 | 
            +
                  :stateful_rule_group_references,
         | 
| 28392 | 
            +
                  :stateless_custom_actions,
         | 
| 28393 | 
            +
                  :stateless_default_actions,
         | 
| 28394 | 
            +
                  :stateless_fragment_default_actions,
         | 
| 28395 | 
            +
                  :stateless_rule_group_references)
         | 
| 28396 | 
            +
                  SENSITIVE = []
         | 
| 28397 | 
            +
                  include Aws::Structure
         | 
| 28398 | 
            +
                end
         | 
| 28399 | 
            +
             | 
| 28400 | 
            +
                # A stateful rule group that is used by the firewall policy.
         | 
| 28401 | 
            +
                #
         | 
| 28402 | 
            +
                # @note When making an API call, you may pass FirewallPolicyStatefulRuleGroupReferencesDetails
         | 
| 28403 | 
            +
                #   data as a hash:
         | 
| 28404 | 
            +
                #
         | 
| 28405 | 
            +
                #       {
         | 
| 28406 | 
            +
                #         resource_arn: "NonEmptyString",
         | 
| 28407 | 
            +
                #       }
         | 
| 28408 | 
            +
                #
         | 
| 28409 | 
            +
                # @!attribute [rw] resource_arn
         | 
| 28410 | 
            +
                #   The ARN of the stateful rule group.
         | 
| 28411 | 
            +
                #   @return [String]
         | 
| 28412 | 
            +
                #
         | 
| 28413 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/FirewallPolicyStatefulRuleGroupReferencesDetails AWS API Documentation
         | 
| 28414 | 
            +
                #
         | 
| 28415 | 
            +
                class FirewallPolicyStatefulRuleGroupReferencesDetails < Struct.new(
         | 
| 28416 | 
            +
                  :resource_arn)
         | 
| 28417 | 
            +
                  SENSITIVE = []
         | 
| 28418 | 
            +
                  include Aws::Structure
         | 
| 28419 | 
            +
                end
         | 
| 28420 | 
            +
             | 
| 28421 | 
            +
                # A custom action that can be used for stateless packet handling.
         | 
| 28422 | 
            +
                #
         | 
| 28423 | 
            +
                # @note When making an API call, you may pass FirewallPolicyStatelessCustomActionsDetails
         | 
| 28424 | 
            +
                #   data as a hash:
         | 
| 28425 | 
            +
                #
         | 
| 28426 | 
            +
                #       {
         | 
| 28427 | 
            +
                #         action_definition: {
         | 
| 28428 | 
            +
                #           publish_metric_action: {
         | 
| 28429 | 
            +
                #             dimensions: [
         | 
| 28430 | 
            +
                #               {
         | 
| 28431 | 
            +
                #                 value: "NonEmptyString",
         | 
| 28432 | 
            +
                #               },
         | 
| 28433 | 
            +
                #             ],
         | 
| 28434 | 
            +
                #           },
         | 
| 28435 | 
            +
                #         },
         | 
| 28436 | 
            +
                #         action_name: "NonEmptyString",
         | 
| 28437 | 
            +
                #       }
         | 
| 28438 | 
            +
                #
         | 
| 28439 | 
            +
                # @!attribute [rw] action_definition
         | 
| 28440 | 
            +
                #   The definition of the custom action.
         | 
| 28441 | 
            +
                #   @return [Types::StatelessCustomActionDefinition]
         | 
| 28442 | 
            +
                #
         | 
| 28443 | 
            +
                # @!attribute [rw] action_name
         | 
| 28444 | 
            +
                #   The name of the custom action.
         | 
| 28445 | 
            +
                #   @return [String]
         | 
| 28446 | 
            +
                #
         | 
| 28447 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/FirewallPolicyStatelessCustomActionsDetails AWS API Documentation
         | 
| 28448 | 
            +
                #
         | 
| 28449 | 
            +
                class FirewallPolicyStatelessCustomActionsDetails < Struct.new(
         | 
| 28450 | 
            +
                  :action_definition,
         | 
| 28451 | 
            +
                  :action_name)
         | 
| 28452 | 
            +
                  SENSITIVE = []
         | 
| 28453 | 
            +
                  include Aws::Structure
         | 
| 28454 | 
            +
                end
         | 
| 28455 | 
            +
             | 
| 28456 | 
            +
                # A stateless rule group that is used by the firewall policy.
         | 
| 28457 | 
            +
                #
         | 
| 28458 | 
            +
                # @note When making an API call, you may pass FirewallPolicyStatelessRuleGroupReferencesDetails
         | 
| 28459 | 
            +
                #   data as a hash:
         | 
| 28460 | 
            +
                #
         | 
| 28461 | 
            +
                #       {
         | 
| 28462 | 
            +
                #         priority: 1,
         | 
| 28463 | 
            +
                #         resource_arn: "NonEmptyString",
         | 
| 28464 | 
            +
                #       }
         | 
| 28465 | 
            +
                #
         | 
| 28466 | 
            +
                # @!attribute [rw] priority
         | 
| 28467 | 
            +
                #   The order in which to run the stateless rule group.
         | 
| 28468 | 
            +
                #   @return [Integer]
         | 
| 28469 | 
            +
                #
         | 
| 28470 | 
            +
                # @!attribute [rw] resource_arn
         | 
| 28471 | 
            +
                #   The ARN of the stateless rule group.
         | 
| 28472 | 
            +
                #   @return [String]
         | 
| 28473 | 
            +
                #
         | 
| 28474 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/FirewallPolicyStatelessRuleGroupReferencesDetails AWS API Documentation
         | 
| 28475 | 
            +
                #
         | 
| 28476 | 
            +
                class FirewallPolicyStatelessRuleGroupReferencesDetails < Struct.new(
         | 
| 28477 | 
            +
                  :priority,
         | 
| 28478 | 
            +
                  :resource_arn)
         | 
| 28479 | 
            +
                  SENSITIVE = []
         | 
| 28480 | 
            +
                  include Aws::Structure
         | 
| 28481 | 
            +
                end
         | 
| 28482 | 
            +
             | 
| 27235 28483 | 
             
                # Provides the latitude and longitude coordinates of a location.
         | 
| 27236 28484 | 
             
                #
         | 
| 27237 28485 | 
             
                # @note When making an API call, you may pass GeoLocation
         | 
| @@ -30408,6 +31656,34 @@ module Aws::SecurityHub | |
| 30408 31656 | 
             
                #             health_check_type: "NonEmptyString",
         | 
| 30409 31657 | 
             
                #             health_check_grace_period: 1,
         | 
| 30410 31658 | 
             
                #             created_time: "NonEmptyString",
         | 
| 31659 | 
            +
                #             mixed_instances_policy: {
         | 
| 31660 | 
            +
                #               instances_distribution: {
         | 
| 31661 | 
            +
                #                 on_demand_allocation_strategy: "NonEmptyString",
         | 
| 31662 | 
            +
                #                 on_demand_base_capacity: 1,
         | 
| 31663 | 
            +
                #                 on_demand_percentage_above_base_capacity: 1,
         | 
| 31664 | 
            +
                #                 spot_allocation_strategy: "NonEmptyString",
         | 
| 31665 | 
            +
                #                 spot_instance_pools: 1,
         | 
| 31666 | 
            +
                #                 spot_max_price: "NonEmptyString",
         | 
| 31667 | 
            +
                #               },
         | 
| 31668 | 
            +
                #               launch_template: {
         | 
| 31669 | 
            +
                #                 launch_template_specification: {
         | 
| 31670 | 
            +
                #                   launch_template_id: "NonEmptyString",
         | 
| 31671 | 
            +
                #                   launch_template_name: "NonEmptyString",
         | 
| 31672 | 
            +
                #                   version: "NonEmptyString",
         | 
| 31673 | 
            +
                #                 },
         | 
| 31674 | 
            +
                #                 overrides: [
         | 
| 31675 | 
            +
                #                   {
         | 
| 31676 | 
            +
                #                     instance_type: "NonEmptyString",
         | 
| 31677 | 
            +
                #                     weighted_capacity: "NonEmptyString",
         | 
| 31678 | 
            +
                #                   },
         | 
| 31679 | 
            +
                #                 ],
         | 
| 31680 | 
            +
                #               },
         | 
| 31681 | 
            +
                #             },
         | 
| 31682 | 
            +
                #             availability_zones: [
         | 
| 31683 | 
            +
                #               {
         | 
| 31684 | 
            +
                #                 value: "NonEmptyString",
         | 
| 31685 | 
            +
                #               },
         | 
| 31686 | 
            +
                #             ],
         | 
| 30411 31687 | 
             
                #           },
         | 
| 30412 31688 | 
             
                #           aws_code_build_project: {
         | 
| 30413 31689 | 
             
                #             encryption_key: "NonEmptyString",
         | 
| @@ -30978,6 +32254,10 @@ module Aws::SecurityHub | |
| 30978 32254 | 
             
                #                 },
         | 
| 30979 32255 | 
             
                #               ],
         | 
| 30980 32256 | 
             
                #             },
         | 
| 32257 | 
            +
                #             bucket_versioning_configuration: {
         | 
| 32258 | 
            +
                #               is_mfa_delete_enabled: false,
         | 
| 32259 | 
            +
                #               status: "NonEmptyString",
         | 
| 32260 | 
            +
                #             },
         | 
| 30981 32261 | 
             
                #           },
         | 
| 30982 32262 | 
             
                #           aws_s3_account_public_access_block: {
         | 
| 30983 32263 | 
             
                #             block_public_acls: false,
         | 
| @@ -32392,6 +33672,11 @@ module Aws::SecurityHub | |
| 32392 33672 | 
             
                #             security_groups: ["NonEmptyString"],
         | 
| 32393 33673 | 
             
                #             spot_price: "NonEmptyString",
         | 
| 32394 33674 | 
             
                #             user_data: "NonEmptyString",
         | 
| 33675 | 
            +
                #             metadata_options: {
         | 
| 33676 | 
            +
                #               http_endpoint: "NonEmptyString",
         | 
| 33677 | 
            +
                #               http_put_response_hop_limit: 1,
         | 
| 33678 | 
            +
                #               http_tokens: "NonEmptyString",
         | 
| 33679 | 
            +
                #             },
         | 
| 32395 33680 | 
             
                #           },
         | 
| 32396 33681 | 
             
                #           aws_ec2_vpn_connection: {
         | 
| 32397 33682 | 
             
                #             vpn_connection_id: "NonEmptyString",
         | 
| @@ -32601,6 +33886,157 @@ module Aws::SecurityHub | |
| 32601 33886 | 
             
                #               ],
         | 
| 32602 33887 | 
             
                #             },
         | 
| 32603 33888 | 
             
                #           },
         | 
| 33889 | 
            +
                #           aws_network_firewall_firewall_policy: {
         | 
| 33890 | 
            +
                #             firewall_policy: {
         | 
| 33891 | 
            +
                #               stateful_rule_group_references: [
         | 
| 33892 | 
            +
                #                 {
         | 
| 33893 | 
            +
                #                   resource_arn: "NonEmptyString",
         | 
| 33894 | 
            +
                #                 },
         | 
| 33895 | 
            +
                #               ],
         | 
| 33896 | 
            +
                #               stateless_custom_actions: [
         | 
| 33897 | 
            +
                #                 {
         | 
| 33898 | 
            +
                #                   action_definition: {
         | 
| 33899 | 
            +
                #                     publish_metric_action: {
         | 
| 33900 | 
            +
                #                       dimensions: [
         | 
| 33901 | 
            +
                #                         {
         | 
| 33902 | 
            +
                #                           value: "NonEmptyString",
         | 
| 33903 | 
            +
                #                         },
         | 
| 33904 | 
            +
                #                       ],
         | 
| 33905 | 
            +
                #                     },
         | 
| 33906 | 
            +
                #                   },
         | 
| 33907 | 
            +
                #                   action_name: "NonEmptyString",
         | 
| 33908 | 
            +
                #                 },
         | 
| 33909 | 
            +
                #               ],
         | 
| 33910 | 
            +
                #               stateless_default_actions: ["NonEmptyString"],
         | 
| 33911 | 
            +
                #               stateless_fragment_default_actions: ["NonEmptyString"],
         | 
| 33912 | 
            +
                #               stateless_rule_group_references: [
         | 
| 33913 | 
            +
                #                 {
         | 
| 33914 | 
            +
                #                   priority: 1,
         | 
| 33915 | 
            +
                #                   resource_arn: "NonEmptyString",
         | 
| 33916 | 
            +
                #                 },
         | 
| 33917 | 
            +
                #               ],
         | 
| 33918 | 
            +
                #             },
         | 
| 33919 | 
            +
                #             firewall_policy_arn: "NonEmptyString",
         | 
| 33920 | 
            +
                #             firewall_policy_id: "NonEmptyString",
         | 
| 33921 | 
            +
                #             firewall_policy_name: "NonEmptyString",
         | 
| 33922 | 
            +
                #             description: "NonEmptyString",
         | 
| 33923 | 
            +
                #           },
         | 
| 33924 | 
            +
                #           aws_network_firewall_firewall: {
         | 
| 33925 | 
            +
                #             delete_protection: false,
         | 
| 33926 | 
            +
                #             description: "NonEmptyString",
         | 
| 33927 | 
            +
                #             firewall_arn: "NonEmptyString",
         | 
| 33928 | 
            +
                #             firewall_id: "NonEmptyString",
         | 
| 33929 | 
            +
                #             firewall_name: "NonEmptyString",
         | 
| 33930 | 
            +
                #             firewall_policy_arn: "NonEmptyString",
         | 
| 33931 | 
            +
                #             firewall_policy_change_protection: false,
         | 
| 33932 | 
            +
                #             subnet_change_protection: false,
         | 
| 33933 | 
            +
                #             subnet_mappings: [
         | 
| 33934 | 
            +
                #               {
         | 
| 33935 | 
            +
                #                 subnet_id: "NonEmptyString",
         | 
| 33936 | 
            +
                #               },
         | 
| 33937 | 
            +
                #             ],
         | 
| 33938 | 
            +
                #             vpc_id: "NonEmptyString",
         | 
| 33939 | 
            +
                #           },
         | 
| 33940 | 
            +
                #           aws_network_firewall_rule_group: {
         | 
| 33941 | 
            +
                #             capacity: 1,
         | 
| 33942 | 
            +
                #             description: "NonEmptyString",
         | 
| 33943 | 
            +
                #             rule_group: {
         | 
| 33944 | 
            +
                #               rule_variables: {
         | 
| 33945 | 
            +
                #                 ip_sets: {
         | 
| 33946 | 
            +
                #                   definition: ["NonEmptyString"],
         | 
| 33947 | 
            +
                #                 },
         | 
| 33948 | 
            +
                #                 port_sets: {
         | 
| 33949 | 
            +
                #                   definition: ["NonEmptyString"],
         | 
| 33950 | 
            +
                #                 },
         | 
| 33951 | 
            +
                #               },
         | 
| 33952 | 
            +
                #               rules_source: {
         | 
| 33953 | 
            +
                #                 rules_source_list: {
         | 
| 33954 | 
            +
                #                   generated_rules_type: "NonEmptyString",
         | 
| 33955 | 
            +
                #                   target_types: ["NonEmptyString"],
         | 
| 33956 | 
            +
                #                   targets: ["NonEmptyString"],
         | 
| 33957 | 
            +
                #                 },
         | 
| 33958 | 
            +
                #                 rules_string: "NonEmptyString",
         | 
| 33959 | 
            +
                #                 stateful_rules: [
         | 
| 33960 | 
            +
                #                   {
         | 
| 33961 | 
            +
                #                     action: "NonEmptyString",
         | 
| 33962 | 
            +
                #                     header: {
         | 
| 33963 | 
            +
                #                       destination: "NonEmptyString",
         | 
| 33964 | 
            +
                #                       destination_port: "NonEmptyString",
         | 
| 33965 | 
            +
                #                       direction: "NonEmptyString",
         | 
| 33966 | 
            +
                #                       protocol: "NonEmptyString",
         | 
| 33967 | 
            +
                #                       source: "NonEmptyString",
         | 
| 33968 | 
            +
                #                       source_port: "NonEmptyString",
         | 
| 33969 | 
            +
                #                     },
         | 
| 33970 | 
            +
                #                     rule_options: [
         | 
| 33971 | 
            +
                #                       {
         | 
| 33972 | 
            +
                #                         keyword: "NonEmptyString",
         | 
| 33973 | 
            +
                #                         settings: ["NonEmptyString"],
         | 
| 33974 | 
            +
                #                       },
         | 
| 33975 | 
            +
                #                     ],
         | 
| 33976 | 
            +
                #                   },
         | 
| 33977 | 
            +
                #                 ],
         | 
| 33978 | 
            +
                #                 stateless_rules_and_custom_actions: {
         | 
| 33979 | 
            +
                #                   custom_actions: [
         | 
| 33980 | 
            +
                #                     {
         | 
| 33981 | 
            +
                #                       action_definition: {
         | 
| 33982 | 
            +
                #                         publish_metric_action: {
         | 
| 33983 | 
            +
                #                           dimensions: [
         | 
| 33984 | 
            +
                #                             {
         | 
| 33985 | 
            +
                #                               value: "NonEmptyString",
         | 
| 33986 | 
            +
                #                             },
         | 
| 33987 | 
            +
                #                           ],
         | 
| 33988 | 
            +
                #                         },
         | 
| 33989 | 
            +
                #                       },
         | 
| 33990 | 
            +
                #                       action_name: "NonEmptyString",
         | 
| 33991 | 
            +
                #                     },
         | 
| 33992 | 
            +
                #                   ],
         | 
| 33993 | 
            +
                #                   stateless_rules: [
         | 
| 33994 | 
            +
                #                     {
         | 
| 33995 | 
            +
                #                       priority: 1,
         | 
| 33996 | 
            +
                #                       rule_definition: {
         | 
| 33997 | 
            +
                #                         actions: ["NonEmptyString"],
         | 
| 33998 | 
            +
                #                         match_attributes: {
         | 
| 33999 | 
            +
                #                           destination_ports: [
         | 
| 34000 | 
            +
                #                             {
         | 
| 34001 | 
            +
                #                               from_port: 1,
         | 
| 34002 | 
            +
                #                               to_port: 1,
         | 
| 34003 | 
            +
                #                             },
         | 
| 34004 | 
            +
                #                           ],
         | 
| 34005 | 
            +
                #                           destinations: [
         | 
| 34006 | 
            +
                #                             {
         | 
| 34007 | 
            +
                #                               address_definition: "NonEmptyString",
         | 
| 34008 | 
            +
                #                             },
         | 
| 34009 | 
            +
                #                           ],
         | 
| 34010 | 
            +
                #                           protocols: [1],
         | 
| 34011 | 
            +
                #                           source_ports: [
         | 
| 34012 | 
            +
                #                             {
         | 
| 34013 | 
            +
                #                               from_port: 1,
         | 
| 34014 | 
            +
                #                               to_port: 1,
         | 
| 34015 | 
            +
                #                             },
         | 
| 34016 | 
            +
                #                           ],
         | 
| 34017 | 
            +
                #                           sources: [
         | 
| 34018 | 
            +
                #                             {
         | 
| 34019 | 
            +
                #                               address_definition: "NonEmptyString",
         | 
| 34020 | 
            +
                #                             },
         | 
| 34021 | 
            +
                #                           ],
         | 
| 34022 | 
            +
                #                           tcp_flags: [
         | 
| 34023 | 
            +
                #                             {
         | 
| 34024 | 
            +
                #                               flags: ["NonEmptyString"],
         | 
| 34025 | 
            +
                #                               masks: ["NonEmptyString"],
         | 
| 34026 | 
            +
                #                             },
         | 
| 34027 | 
            +
                #                           ],
         | 
| 34028 | 
            +
                #                         },
         | 
| 34029 | 
            +
                #                       },
         | 
| 34030 | 
            +
                #                     },
         | 
| 34031 | 
            +
                #                   ],
         | 
| 34032 | 
            +
                #                 },
         | 
| 34033 | 
            +
                #               },
         | 
| 34034 | 
            +
                #             },
         | 
| 34035 | 
            +
                #             rule_group_arn: "NonEmptyString",
         | 
| 34036 | 
            +
                #             rule_group_id: "NonEmptyString",
         | 
| 34037 | 
            +
                #             rule_group_name: "NonEmptyString",
         | 
| 34038 | 
            +
                #             type: "NonEmptyString",
         | 
| 34039 | 
            +
                #           },
         | 
| 32604 34040 | 
             
                #         },
         | 
| 32605 34041 | 
             
                #       }
         | 
| 32606 34042 | 
             
                #
         | 
| @@ -32703,6 +34139,34 @@ module Aws::SecurityHub | |
| 32703 34139 | 
             
                #           health_check_type: "NonEmptyString",
         | 
| 32704 34140 | 
             
                #           health_check_grace_period: 1,
         | 
| 32705 34141 | 
             
                #           created_time: "NonEmptyString",
         | 
| 34142 | 
            +
                #           mixed_instances_policy: {
         | 
| 34143 | 
            +
                #             instances_distribution: {
         | 
| 34144 | 
            +
                #               on_demand_allocation_strategy: "NonEmptyString",
         | 
| 34145 | 
            +
                #               on_demand_base_capacity: 1,
         | 
| 34146 | 
            +
                #               on_demand_percentage_above_base_capacity: 1,
         | 
| 34147 | 
            +
                #               spot_allocation_strategy: "NonEmptyString",
         | 
| 34148 | 
            +
                #               spot_instance_pools: 1,
         | 
| 34149 | 
            +
                #               spot_max_price: "NonEmptyString",
         | 
| 34150 | 
            +
                #             },
         | 
| 34151 | 
            +
                #             launch_template: {
         | 
| 34152 | 
            +
                #               launch_template_specification: {
         | 
| 34153 | 
            +
                #                 launch_template_id: "NonEmptyString",
         | 
| 34154 | 
            +
                #                 launch_template_name: "NonEmptyString",
         | 
| 34155 | 
            +
                #                 version: "NonEmptyString",
         | 
| 34156 | 
            +
                #               },
         | 
| 34157 | 
            +
                #               overrides: [
         | 
| 34158 | 
            +
                #                 {
         | 
| 34159 | 
            +
                #                   instance_type: "NonEmptyString",
         | 
| 34160 | 
            +
                #                   weighted_capacity: "NonEmptyString",
         | 
| 34161 | 
            +
                #                 },
         | 
| 34162 | 
            +
                #               ],
         | 
| 34163 | 
            +
                #             },
         | 
| 34164 | 
            +
                #           },
         | 
| 34165 | 
            +
                #           availability_zones: [
         | 
| 34166 | 
            +
                #             {
         | 
| 34167 | 
            +
                #               value: "NonEmptyString",
         | 
| 34168 | 
            +
                #             },
         | 
| 34169 | 
            +
                #           ],
         | 
| 32706 34170 | 
             
                #         },
         | 
| 32707 34171 | 
             
                #         aws_code_build_project: {
         | 
| 32708 34172 | 
             
                #           encryption_key: "NonEmptyString",
         | 
| @@ -33273,6 +34737,10 @@ module Aws::SecurityHub | |
| 33273 34737 | 
             
                #               },
         | 
| 33274 34738 | 
             
                #             ],
         | 
| 33275 34739 | 
             
                #           },
         | 
| 34740 | 
            +
                #           bucket_versioning_configuration: {
         | 
| 34741 | 
            +
                #             is_mfa_delete_enabled: false,
         | 
| 34742 | 
            +
                #             status: "NonEmptyString",
         | 
| 34743 | 
            +
                #           },
         | 
| 33276 34744 | 
             
                #         },
         | 
| 33277 34745 | 
             
                #         aws_s3_account_public_access_block: {
         | 
| 33278 34746 | 
             
                #           block_public_acls: false,
         | 
| @@ -34687,6 +36155,11 @@ module Aws::SecurityHub | |
| 34687 36155 | 
             
                #           security_groups: ["NonEmptyString"],
         | 
| 34688 36156 | 
             
                #           spot_price: "NonEmptyString",
         | 
| 34689 36157 | 
             
                #           user_data: "NonEmptyString",
         | 
| 36158 | 
            +
                #           metadata_options: {
         | 
| 36159 | 
            +
                #             http_endpoint: "NonEmptyString",
         | 
| 36160 | 
            +
                #             http_put_response_hop_limit: 1,
         | 
| 36161 | 
            +
                #             http_tokens: "NonEmptyString",
         | 
| 36162 | 
            +
                #           },
         | 
| 34690 36163 | 
             
                #         },
         | 
| 34691 36164 | 
             
                #         aws_ec2_vpn_connection: {
         | 
| 34692 36165 | 
             
                #           vpn_connection_id: "NonEmptyString",
         | 
| @@ -34896,6 +36369,157 @@ module Aws::SecurityHub | |
| 34896 36369 | 
             
                #             ],
         | 
| 34897 36370 | 
             
                #           },
         | 
| 34898 36371 | 
             
                #         },
         | 
| 36372 | 
            +
                #         aws_network_firewall_firewall_policy: {
         | 
| 36373 | 
            +
                #           firewall_policy: {
         | 
| 36374 | 
            +
                #             stateful_rule_group_references: [
         | 
| 36375 | 
            +
                #               {
         | 
| 36376 | 
            +
                #                 resource_arn: "NonEmptyString",
         | 
| 36377 | 
            +
                #               },
         | 
| 36378 | 
            +
                #             ],
         | 
| 36379 | 
            +
                #             stateless_custom_actions: [
         | 
| 36380 | 
            +
                #               {
         | 
| 36381 | 
            +
                #                 action_definition: {
         | 
| 36382 | 
            +
                #                   publish_metric_action: {
         | 
| 36383 | 
            +
                #                     dimensions: [
         | 
| 36384 | 
            +
                #                       {
         | 
| 36385 | 
            +
                #                         value: "NonEmptyString",
         | 
| 36386 | 
            +
                #                       },
         | 
| 36387 | 
            +
                #                     ],
         | 
| 36388 | 
            +
                #                   },
         | 
| 36389 | 
            +
                #                 },
         | 
| 36390 | 
            +
                #                 action_name: "NonEmptyString",
         | 
| 36391 | 
            +
                #               },
         | 
| 36392 | 
            +
                #             ],
         | 
| 36393 | 
            +
                #             stateless_default_actions: ["NonEmptyString"],
         | 
| 36394 | 
            +
                #             stateless_fragment_default_actions: ["NonEmptyString"],
         | 
| 36395 | 
            +
                #             stateless_rule_group_references: [
         | 
| 36396 | 
            +
                #               {
         | 
| 36397 | 
            +
                #                 priority: 1,
         | 
| 36398 | 
            +
                #                 resource_arn: "NonEmptyString",
         | 
| 36399 | 
            +
                #               },
         | 
| 36400 | 
            +
                #             ],
         | 
| 36401 | 
            +
                #           },
         | 
| 36402 | 
            +
                #           firewall_policy_arn: "NonEmptyString",
         | 
| 36403 | 
            +
                #           firewall_policy_id: "NonEmptyString",
         | 
| 36404 | 
            +
                #           firewall_policy_name: "NonEmptyString",
         | 
| 36405 | 
            +
                #           description: "NonEmptyString",
         | 
| 36406 | 
            +
                #         },
         | 
| 36407 | 
            +
                #         aws_network_firewall_firewall: {
         | 
| 36408 | 
            +
                #           delete_protection: false,
         | 
| 36409 | 
            +
                #           description: "NonEmptyString",
         | 
| 36410 | 
            +
                #           firewall_arn: "NonEmptyString",
         | 
| 36411 | 
            +
                #           firewall_id: "NonEmptyString",
         | 
| 36412 | 
            +
                #           firewall_name: "NonEmptyString",
         | 
| 36413 | 
            +
                #           firewall_policy_arn: "NonEmptyString",
         | 
| 36414 | 
            +
                #           firewall_policy_change_protection: false,
         | 
| 36415 | 
            +
                #           subnet_change_protection: false,
         | 
| 36416 | 
            +
                #           subnet_mappings: [
         | 
| 36417 | 
            +
                #             {
         | 
| 36418 | 
            +
                #               subnet_id: "NonEmptyString",
         | 
| 36419 | 
            +
                #             },
         | 
| 36420 | 
            +
                #           ],
         | 
| 36421 | 
            +
                #           vpc_id: "NonEmptyString",
         | 
| 36422 | 
            +
                #         },
         | 
| 36423 | 
            +
                #         aws_network_firewall_rule_group: {
         | 
| 36424 | 
            +
                #           capacity: 1,
         | 
| 36425 | 
            +
                #           description: "NonEmptyString",
         | 
| 36426 | 
            +
                #           rule_group: {
         | 
| 36427 | 
            +
                #             rule_variables: {
         | 
| 36428 | 
            +
                #               ip_sets: {
         | 
| 36429 | 
            +
                #                 definition: ["NonEmptyString"],
         | 
| 36430 | 
            +
                #               },
         | 
| 36431 | 
            +
                #               port_sets: {
         | 
| 36432 | 
            +
                #                 definition: ["NonEmptyString"],
         | 
| 36433 | 
            +
                #               },
         | 
| 36434 | 
            +
                #             },
         | 
| 36435 | 
            +
                #             rules_source: {
         | 
| 36436 | 
            +
                #               rules_source_list: {
         | 
| 36437 | 
            +
                #                 generated_rules_type: "NonEmptyString",
         | 
| 36438 | 
            +
                #                 target_types: ["NonEmptyString"],
         | 
| 36439 | 
            +
                #                 targets: ["NonEmptyString"],
         | 
| 36440 | 
            +
                #               },
         | 
| 36441 | 
            +
                #               rules_string: "NonEmptyString",
         | 
| 36442 | 
            +
                #               stateful_rules: [
         | 
| 36443 | 
            +
                #                 {
         | 
| 36444 | 
            +
                #                   action: "NonEmptyString",
         | 
| 36445 | 
            +
                #                   header: {
         | 
| 36446 | 
            +
                #                     destination: "NonEmptyString",
         | 
| 36447 | 
            +
                #                     destination_port: "NonEmptyString",
         | 
| 36448 | 
            +
                #                     direction: "NonEmptyString",
         | 
| 36449 | 
            +
                #                     protocol: "NonEmptyString",
         | 
| 36450 | 
            +
                #                     source: "NonEmptyString",
         | 
| 36451 | 
            +
                #                     source_port: "NonEmptyString",
         | 
| 36452 | 
            +
                #                   },
         | 
| 36453 | 
            +
                #                   rule_options: [
         | 
| 36454 | 
            +
                #                     {
         | 
| 36455 | 
            +
                #                       keyword: "NonEmptyString",
         | 
| 36456 | 
            +
                #                       settings: ["NonEmptyString"],
         | 
| 36457 | 
            +
                #                     },
         | 
| 36458 | 
            +
                #                   ],
         | 
| 36459 | 
            +
                #                 },
         | 
| 36460 | 
            +
                #               ],
         | 
| 36461 | 
            +
                #               stateless_rules_and_custom_actions: {
         | 
| 36462 | 
            +
                #                 custom_actions: [
         | 
| 36463 | 
            +
                #                   {
         | 
| 36464 | 
            +
                #                     action_definition: {
         | 
| 36465 | 
            +
                #                       publish_metric_action: {
         | 
| 36466 | 
            +
                #                         dimensions: [
         | 
| 36467 | 
            +
                #                           {
         | 
| 36468 | 
            +
                #                             value: "NonEmptyString",
         | 
| 36469 | 
            +
                #                           },
         | 
| 36470 | 
            +
                #                         ],
         | 
| 36471 | 
            +
                #                       },
         | 
| 36472 | 
            +
                #                     },
         | 
| 36473 | 
            +
                #                     action_name: "NonEmptyString",
         | 
| 36474 | 
            +
                #                   },
         | 
| 36475 | 
            +
                #                 ],
         | 
| 36476 | 
            +
                #                 stateless_rules: [
         | 
| 36477 | 
            +
                #                   {
         | 
| 36478 | 
            +
                #                     priority: 1,
         | 
| 36479 | 
            +
                #                     rule_definition: {
         | 
| 36480 | 
            +
                #                       actions: ["NonEmptyString"],
         | 
| 36481 | 
            +
                #                       match_attributes: {
         | 
| 36482 | 
            +
                #                         destination_ports: [
         | 
| 36483 | 
            +
                #                           {
         | 
| 36484 | 
            +
                #                             from_port: 1,
         | 
| 36485 | 
            +
                #                             to_port: 1,
         | 
| 36486 | 
            +
                #                           },
         | 
| 36487 | 
            +
                #                         ],
         | 
| 36488 | 
            +
                #                         destinations: [
         | 
| 36489 | 
            +
                #                           {
         | 
| 36490 | 
            +
                #                             address_definition: "NonEmptyString",
         | 
| 36491 | 
            +
                #                           },
         | 
| 36492 | 
            +
                #                         ],
         | 
| 36493 | 
            +
                #                         protocols: [1],
         | 
| 36494 | 
            +
                #                         source_ports: [
         | 
| 36495 | 
            +
                #                           {
         | 
| 36496 | 
            +
                #                             from_port: 1,
         | 
| 36497 | 
            +
                #                             to_port: 1,
         | 
| 36498 | 
            +
                #                           },
         | 
| 36499 | 
            +
                #                         ],
         | 
| 36500 | 
            +
                #                         sources: [
         | 
| 36501 | 
            +
                #                           {
         | 
| 36502 | 
            +
                #                             address_definition: "NonEmptyString",
         | 
| 36503 | 
            +
                #                           },
         | 
| 36504 | 
            +
                #                         ],
         | 
| 36505 | 
            +
                #                         tcp_flags: [
         | 
| 36506 | 
            +
                #                           {
         | 
| 36507 | 
            +
                #                             flags: ["NonEmptyString"],
         | 
| 36508 | 
            +
                #                             masks: ["NonEmptyString"],
         | 
| 36509 | 
            +
                #                           },
         | 
| 36510 | 
            +
                #                         ],
         | 
| 36511 | 
            +
                #                       },
         | 
| 36512 | 
            +
                #                     },
         | 
| 36513 | 
            +
                #                   },
         | 
| 36514 | 
            +
                #                 ],
         | 
| 36515 | 
            +
                #               },
         | 
| 36516 | 
            +
                #             },
         | 
| 36517 | 
            +
                #           },
         | 
| 36518 | 
            +
                #           rule_group_arn: "NonEmptyString",
         | 
| 36519 | 
            +
                #           rule_group_id: "NonEmptyString",
         | 
| 36520 | 
            +
                #           rule_group_name: "NonEmptyString",
         | 
| 36521 | 
            +
                #           type: "NonEmptyString",
         | 
| 36522 | 
            +
                #         },
         | 
| 34899 36523 | 
             
                #       }
         | 
| 34900 36524 | 
             
                #
         | 
| 34901 36525 | 
             
                # @!attribute [rw] aws_auto_scaling_auto_scaling_group
         | 
| @@ -35149,6 +36773,18 @@ module Aws::SecurityHub | |
| 35149 36773 | 
             
                #   Details about an Amazon EKS cluster.
         | 
| 35150 36774 | 
             
                #   @return [Types::AwsEksClusterDetails]
         | 
| 35151 36775 | 
             
                #
         | 
| 36776 | 
            +
                # @!attribute [rw] aws_network_firewall_firewall_policy
         | 
| 36777 | 
            +
                #   Details about an Network Firewall firewall policy.
         | 
| 36778 | 
            +
                #   @return [Types::AwsNetworkFirewallFirewallPolicyDetails]
         | 
| 36779 | 
            +
                #
         | 
| 36780 | 
            +
                # @!attribute [rw] aws_network_firewall_firewall
         | 
| 36781 | 
            +
                #   Details about an Network Firewall firewall.
         | 
| 36782 | 
            +
                #   @return [Types::AwsNetworkFirewallFirewallDetails]
         | 
| 36783 | 
            +
                #
         | 
| 36784 | 
            +
                # @!attribute [rw] aws_network_firewall_rule_group
         | 
| 36785 | 
            +
                #   Details about an Network Firewall rule group.
         | 
| 36786 | 
            +
                #   @return [Types::AwsNetworkFirewallRuleGroupDetails]
         | 
| 36787 | 
            +
                #
         | 
| 35152 36788 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/ResourceDetails AWS API Documentation
         | 
| 35153 36789 | 
             
                #
         | 
| 35154 36790 | 
             
                class ResourceDetails < Struct.new(
         | 
| @@ -35210,7 +36846,10 @@ module Aws::SecurityHub | |
| 35210 36846 | 
             
                  :aws_waf_rate_based_rule,
         | 
| 35211 36847 | 
             
                  :aws_waf_regional_rate_based_rule,
         | 
| 35212 36848 | 
             
                  :aws_ecr_repository,
         | 
| 35213 | 
            -
                  :aws_eks_cluster | 
| 36849 | 
            +
                  :aws_eks_cluster,
         | 
| 36850 | 
            +
                  :aws_network_firewall_firewall_policy,
         | 
| 36851 | 
            +
                  :aws_network_firewall_firewall,
         | 
| 36852 | 
            +
                  :aws_network_firewall_rule_group)
         | 
| 35214 36853 | 
             
                  SENSITIVE = []
         | 
| 35215 36854 | 
             
                  include Aws::Structure
         | 
| 35216 36855 | 
             
                end
         | 
| @@ -35253,6 +36892,931 @@ module Aws::SecurityHub | |
| 35253 36892 | 
             
                  include Aws::Structure
         | 
| 35254 36893 | 
             
                end
         | 
| 35255 36894 |  | 
| 36895 | 
            +
                # Details about the rule group.
         | 
| 36896 | 
            +
                #
         | 
| 36897 | 
            +
                # @note When making an API call, you may pass RuleGroupDetails
         | 
| 36898 | 
            +
                #   data as a hash:
         | 
| 36899 | 
            +
                #
         | 
| 36900 | 
            +
                #       {
         | 
| 36901 | 
            +
                #         rule_variables: {
         | 
| 36902 | 
            +
                #           ip_sets: {
         | 
| 36903 | 
            +
                #             definition: ["NonEmptyString"],
         | 
| 36904 | 
            +
                #           },
         | 
| 36905 | 
            +
                #           port_sets: {
         | 
| 36906 | 
            +
                #             definition: ["NonEmptyString"],
         | 
| 36907 | 
            +
                #           },
         | 
| 36908 | 
            +
                #         },
         | 
| 36909 | 
            +
                #         rules_source: {
         | 
| 36910 | 
            +
                #           rules_source_list: {
         | 
| 36911 | 
            +
                #             generated_rules_type: "NonEmptyString",
         | 
| 36912 | 
            +
                #             target_types: ["NonEmptyString"],
         | 
| 36913 | 
            +
                #             targets: ["NonEmptyString"],
         | 
| 36914 | 
            +
                #           },
         | 
| 36915 | 
            +
                #           rules_string: "NonEmptyString",
         | 
| 36916 | 
            +
                #           stateful_rules: [
         | 
| 36917 | 
            +
                #             {
         | 
| 36918 | 
            +
                #               action: "NonEmptyString",
         | 
| 36919 | 
            +
                #               header: {
         | 
| 36920 | 
            +
                #                 destination: "NonEmptyString",
         | 
| 36921 | 
            +
                #                 destination_port: "NonEmptyString",
         | 
| 36922 | 
            +
                #                 direction: "NonEmptyString",
         | 
| 36923 | 
            +
                #                 protocol: "NonEmptyString",
         | 
| 36924 | 
            +
                #                 source: "NonEmptyString",
         | 
| 36925 | 
            +
                #                 source_port: "NonEmptyString",
         | 
| 36926 | 
            +
                #               },
         | 
| 36927 | 
            +
                #               rule_options: [
         | 
| 36928 | 
            +
                #                 {
         | 
| 36929 | 
            +
                #                   keyword: "NonEmptyString",
         | 
| 36930 | 
            +
                #                   settings: ["NonEmptyString"],
         | 
| 36931 | 
            +
                #                 },
         | 
| 36932 | 
            +
                #               ],
         | 
| 36933 | 
            +
                #             },
         | 
| 36934 | 
            +
                #           ],
         | 
| 36935 | 
            +
                #           stateless_rules_and_custom_actions: {
         | 
| 36936 | 
            +
                #             custom_actions: [
         | 
| 36937 | 
            +
                #               {
         | 
| 36938 | 
            +
                #                 action_definition: {
         | 
| 36939 | 
            +
                #                   publish_metric_action: {
         | 
| 36940 | 
            +
                #                     dimensions: [
         | 
| 36941 | 
            +
                #                       {
         | 
| 36942 | 
            +
                #                         value: "NonEmptyString",
         | 
| 36943 | 
            +
                #                       },
         | 
| 36944 | 
            +
                #                     ],
         | 
| 36945 | 
            +
                #                   },
         | 
| 36946 | 
            +
                #                 },
         | 
| 36947 | 
            +
                #                 action_name: "NonEmptyString",
         | 
| 36948 | 
            +
                #               },
         | 
| 36949 | 
            +
                #             ],
         | 
| 36950 | 
            +
                #             stateless_rules: [
         | 
| 36951 | 
            +
                #               {
         | 
| 36952 | 
            +
                #                 priority: 1,
         | 
| 36953 | 
            +
                #                 rule_definition: {
         | 
| 36954 | 
            +
                #                   actions: ["NonEmptyString"],
         | 
| 36955 | 
            +
                #                   match_attributes: {
         | 
| 36956 | 
            +
                #                     destination_ports: [
         | 
| 36957 | 
            +
                #                       {
         | 
| 36958 | 
            +
                #                         from_port: 1,
         | 
| 36959 | 
            +
                #                         to_port: 1,
         | 
| 36960 | 
            +
                #                       },
         | 
| 36961 | 
            +
                #                     ],
         | 
| 36962 | 
            +
                #                     destinations: [
         | 
| 36963 | 
            +
                #                       {
         | 
| 36964 | 
            +
                #                         address_definition: "NonEmptyString",
         | 
| 36965 | 
            +
                #                       },
         | 
| 36966 | 
            +
                #                     ],
         | 
| 36967 | 
            +
                #                     protocols: [1],
         | 
| 36968 | 
            +
                #                     source_ports: [
         | 
| 36969 | 
            +
                #                       {
         | 
| 36970 | 
            +
                #                         from_port: 1,
         | 
| 36971 | 
            +
                #                         to_port: 1,
         | 
| 36972 | 
            +
                #                       },
         | 
| 36973 | 
            +
                #                     ],
         | 
| 36974 | 
            +
                #                     sources: [
         | 
| 36975 | 
            +
                #                       {
         | 
| 36976 | 
            +
                #                         address_definition: "NonEmptyString",
         | 
| 36977 | 
            +
                #                       },
         | 
| 36978 | 
            +
                #                     ],
         | 
| 36979 | 
            +
                #                     tcp_flags: [
         | 
| 36980 | 
            +
                #                       {
         | 
| 36981 | 
            +
                #                         flags: ["NonEmptyString"],
         | 
| 36982 | 
            +
                #                         masks: ["NonEmptyString"],
         | 
| 36983 | 
            +
                #                       },
         | 
| 36984 | 
            +
                #                     ],
         | 
| 36985 | 
            +
                #                   },
         | 
| 36986 | 
            +
                #                 },
         | 
| 36987 | 
            +
                #               },
         | 
| 36988 | 
            +
                #             ],
         | 
| 36989 | 
            +
                #           },
         | 
| 36990 | 
            +
                #         },
         | 
| 36991 | 
            +
                #       }
         | 
| 36992 | 
            +
                #
         | 
| 36993 | 
            +
                # @!attribute [rw] rule_variables
         | 
| 36994 | 
            +
                #   Additional settings to use in the specified rules.
         | 
| 36995 | 
            +
                #   @return [Types::RuleGroupVariables]
         | 
| 36996 | 
            +
                #
         | 
| 36997 | 
            +
                # @!attribute [rw] rules_source
         | 
| 36998 | 
            +
                #   The rules and actions for the rule group.
         | 
| 36999 | 
            +
                #
         | 
| 37000 | 
            +
                #   For stateful rule groups, can contain `RulesString`,
         | 
| 37001 | 
            +
                #   `RulesSourceList`, or `StatefulRules`.
         | 
| 37002 | 
            +
                #
         | 
| 37003 | 
            +
                #   For stateless rule groups, contains
         | 
| 37004 | 
            +
                #   `StatelessRulesAndCustomActions`.
         | 
| 37005 | 
            +
                #   @return [Types::RuleGroupSource]
         | 
| 37006 | 
            +
                #
         | 
| 37007 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupDetails AWS API Documentation
         | 
| 37008 | 
            +
                #
         | 
| 37009 | 
            +
                class RuleGroupDetails < Struct.new(
         | 
| 37010 | 
            +
                  :rule_variables,
         | 
| 37011 | 
            +
                  :rules_source)
         | 
| 37012 | 
            +
                  SENSITIVE = []
         | 
| 37013 | 
            +
                  include Aws::Structure
         | 
| 37014 | 
            +
                end
         | 
| 37015 | 
            +
             | 
| 37016 | 
            +
                # The rules and actions for the rule group.
         | 
| 37017 | 
            +
                #
         | 
| 37018 | 
            +
                # @note When making an API call, you may pass RuleGroupSource
         | 
| 37019 | 
            +
                #   data as a hash:
         | 
| 37020 | 
            +
                #
         | 
| 37021 | 
            +
                #       {
         | 
| 37022 | 
            +
                #         rules_source_list: {
         | 
| 37023 | 
            +
                #           generated_rules_type: "NonEmptyString",
         | 
| 37024 | 
            +
                #           target_types: ["NonEmptyString"],
         | 
| 37025 | 
            +
                #           targets: ["NonEmptyString"],
         | 
| 37026 | 
            +
                #         },
         | 
| 37027 | 
            +
                #         rules_string: "NonEmptyString",
         | 
| 37028 | 
            +
                #         stateful_rules: [
         | 
| 37029 | 
            +
                #           {
         | 
| 37030 | 
            +
                #             action: "NonEmptyString",
         | 
| 37031 | 
            +
                #             header: {
         | 
| 37032 | 
            +
                #               destination: "NonEmptyString",
         | 
| 37033 | 
            +
                #               destination_port: "NonEmptyString",
         | 
| 37034 | 
            +
                #               direction: "NonEmptyString",
         | 
| 37035 | 
            +
                #               protocol: "NonEmptyString",
         | 
| 37036 | 
            +
                #               source: "NonEmptyString",
         | 
| 37037 | 
            +
                #               source_port: "NonEmptyString",
         | 
| 37038 | 
            +
                #             },
         | 
| 37039 | 
            +
                #             rule_options: [
         | 
| 37040 | 
            +
                #               {
         | 
| 37041 | 
            +
                #                 keyword: "NonEmptyString",
         | 
| 37042 | 
            +
                #                 settings: ["NonEmptyString"],
         | 
| 37043 | 
            +
                #               },
         | 
| 37044 | 
            +
                #             ],
         | 
| 37045 | 
            +
                #           },
         | 
| 37046 | 
            +
                #         ],
         | 
| 37047 | 
            +
                #         stateless_rules_and_custom_actions: {
         | 
| 37048 | 
            +
                #           custom_actions: [
         | 
| 37049 | 
            +
                #             {
         | 
| 37050 | 
            +
                #               action_definition: {
         | 
| 37051 | 
            +
                #                 publish_metric_action: {
         | 
| 37052 | 
            +
                #                   dimensions: [
         | 
| 37053 | 
            +
                #                     {
         | 
| 37054 | 
            +
                #                       value: "NonEmptyString",
         | 
| 37055 | 
            +
                #                     },
         | 
| 37056 | 
            +
                #                   ],
         | 
| 37057 | 
            +
                #                 },
         | 
| 37058 | 
            +
                #               },
         | 
| 37059 | 
            +
                #               action_name: "NonEmptyString",
         | 
| 37060 | 
            +
                #             },
         | 
| 37061 | 
            +
                #           ],
         | 
| 37062 | 
            +
                #           stateless_rules: [
         | 
| 37063 | 
            +
                #             {
         | 
| 37064 | 
            +
                #               priority: 1,
         | 
| 37065 | 
            +
                #               rule_definition: {
         | 
| 37066 | 
            +
                #                 actions: ["NonEmptyString"],
         | 
| 37067 | 
            +
                #                 match_attributes: {
         | 
| 37068 | 
            +
                #                   destination_ports: [
         | 
| 37069 | 
            +
                #                     {
         | 
| 37070 | 
            +
                #                       from_port: 1,
         | 
| 37071 | 
            +
                #                       to_port: 1,
         | 
| 37072 | 
            +
                #                     },
         | 
| 37073 | 
            +
                #                   ],
         | 
| 37074 | 
            +
                #                   destinations: [
         | 
| 37075 | 
            +
                #                     {
         | 
| 37076 | 
            +
                #                       address_definition: "NonEmptyString",
         | 
| 37077 | 
            +
                #                     },
         | 
| 37078 | 
            +
                #                   ],
         | 
| 37079 | 
            +
                #                   protocols: [1],
         | 
| 37080 | 
            +
                #                   source_ports: [
         | 
| 37081 | 
            +
                #                     {
         | 
| 37082 | 
            +
                #                       from_port: 1,
         | 
| 37083 | 
            +
                #                       to_port: 1,
         | 
| 37084 | 
            +
                #                     },
         | 
| 37085 | 
            +
                #                   ],
         | 
| 37086 | 
            +
                #                   sources: [
         | 
| 37087 | 
            +
                #                     {
         | 
| 37088 | 
            +
                #                       address_definition: "NonEmptyString",
         | 
| 37089 | 
            +
                #                     },
         | 
| 37090 | 
            +
                #                   ],
         | 
| 37091 | 
            +
                #                   tcp_flags: [
         | 
| 37092 | 
            +
                #                     {
         | 
| 37093 | 
            +
                #                       flags: ["NonEmptyString"],
         | 
| 37094 | 
            +
                #                       masks: ["NonEmptyString"],
         | 
| 37095 | 
            +
                #                     },
         | 
| 37096 | 
            +
                #                   ],
         | 
| 37097 | 
            +
                #                 },
         | 
| 37098 | 
            +
                #               },
         | 
| 37099 | 
            +
                #             },
         | 
| 37100 | 
            +
                #           ],
         | 
| 37101 | 
            +
                #         },
         | 
| 37102 | 
            +
                #       }
         | 
| 37103 | 
            +
                #
         | 
| 37104 | 
            +
                # @!attribute [rw] rules_source_list
         | 
| 37105 | 
            +
                #   Stateful inspection criteria for a domain list rule group. A domain
         | 
| 37106 | 
            +
                #   list rule group determines access by specific protocols to specific
         | 
| 37107 | 
            +
                #   domains.
         | 
| 37108 | 
            +
                #   @return [Types::RuleGroupSourceListDetails]
         | 
| 37109 | 
            +
                #
         | 
| 37110 | 
            +
                # @!attribute [rw] rules_string
         | 
| 37111 | 
            +
                #   Stateful inspection criteria, provided in Suricata compatible
         | 
| 37112 | 
            +
                #   intrusion prevention system (IPS) rules.
         | 
| 37113 | 
            +
                #   @return [String]
         | 
| 37114 | 
            +
                #
         | 
| 37115 | 
            +
                # @!attribute [rw] stateful_rules
         | 
| 37116 | 
            +
                #   Suricata rule specifications.
         | 
| 37117 | 
            +
                #   @return [Array<Types::RuleGroupSourceStatefulRulesDetails>]
         | 
| 37118 | 
            +
                #
         | 
| 37119 | 
            +
                # @!attribute [rw] stateless_rules_and_custom_actions
         | 
| 37120 | 
            +
                #   The stateless rules and custom actions used by a stateless rule
         | 
| 37121 | 
            +
                #   group.
         | 
| 37122 | 
            +
                #   @return [Types::RuleGroupSourceStatelessRulesAndCustomActionsDetails]
         | 
| 37123 | 
            +
                #
         | 
| 37124 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupSource AWS API Documentation
         | 
| 37125 | 
            +
                #
         | 
| 37126 | 
            +
                class RuleGroupSource < Struct.new(
         | 
| 37127 | 
            +
                  :rules_source_list,
         | 
| 37128 | 
            +
                  :rules_string,
         | 
| 37129 | 
            +
                  :stateful_rules,
         | 
| 37130 | 
            +
                  :stateless_rules_and_custom_actions)
         | 
| 37131 | 
            +
                  SENSITIVE = []
         | 
| 37132 | 
            +
                  include Aws::Structure
         | 
| 37133 | 
            +
                end
         | 
| 37134 | 
            +
             | 
| 37135 | 
            +
                # A custom action definition. A custom action is an optional,
         | 
| 37136 | 
            +
                # non-standard action to use for stateless packet handling.
         | 
| 37137 | 
            +
                #
         | 
| 37138 | 
            +
                # @note When making an API call, you may pass RuleGroupSourceCustomActionsDetails
         | 
| 37139 | 
            +
                #   data as a hash:
         | 
| 37140 | 
            +
                #
         | 
| 37141 | 
            +
                #       {
         | 
| 37142 | 
            +
                #         action_definition: {
         | 
| 37143 | 
            +
                #           publish_metric_action: {
         | 
| 37144 | 
            +
                #             dimensions: [
         | 
| 37145 | 
            +
                #               {
         | 
| 37146 | 
            +
                #                 value: "NonEmptyString",
         | 
| 37147 | 
            +
                #               },
         | 
| 37148 | 
            +
                #             ],
         | 
| 37149 | 
            +
                #           },
         | 
| 37150 | 
            +
                #         },
         | 
| 37151 | 
            +
                #         action_name: "NonEmptyString",
         | 
| 37152 | 
            +
                #       }
         | 
| 37153 | 
            +
                #
         | 
| 37154 | 
            +
                # @!attribute [rw] action_definition
         | 
| 37155 | 
            +
                #   The definition of a custom action.
         | 
| 37156 | 
            +
                #   @return [Types::StatelessCustomActionDefinition]
         | 
| 37157 | 
            +
                #
         | 
| 37158 | 
            +
                # @!attribute [rw] action_name
         | 
| 37159 | 
            +
                #   A descriptive name of the custom action.
         | 
| 37160 | 
            +
                #   @return [String]
         | 
| 37161 | 
            +
                #
         | 
| 37162 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupSourceCustomActionsDetails AWS API Documentation
         | 
| 37163 | 
            +
                #
         | 
| 37164 | 
            +
                class RuleGroupSourceCustomActionsDetails < Struct.new(
         | 
| 37165 | 
            +
                  :action_definition,
         | 
| 37166 | 
            +
                  :action_name)
         | 
| 37167 | 
            +
                  SENSITIVE = []
         | 
| 37168 | 
            +
                  include Aws::Structure
         | 
| 37169 | 
            +
                end
         | 
| 37170 | 
            +
             | 
| 37171 | 
            +
                # Stateful inspection criteria for a domain list rule group.
         | 
| 37172 | 
            +
                #
         | 
| 37173 | 
            +
                # @note When making an API call, you may pass RuleGroupSourceListDetails
         | 
| 37174 | 
            +
                #   data as a hash:
         | 
| 37175 | 
            +
                #
         | 
| 37176 | 
            +
                #       {
         | 
| 37177 | 
            +
                #         generated_rules_type: "NonEmptyString",
         | 
| 37178 | 
            +
                #         target_types: ["NonEmptyString"],
         | 
| 37179 | 
            +
                #         targets: ["NonEmptyString"],
         | 
| 37180 | 
            +
                #       }
         | 
| 37181 | 
            +
                #
         | 
| 37182 | 
            +
                # @!attribute [rw] generated_rules_type
         | 
| 37183 | 
            +
                #   Indicates whether to allow or deny access to the domains listed in
         | 
| 37184 | 
            +
                #   `Targets`.
         | 
| 37185 | 
            +
                #   @return [String]
         | 
| 37186 | 
            +
                #
         | 
| 37187 | 
            +
                # @!attribute [rw] target_types
         | 
| 37188 | 
            +
                #   The protocols that you want to inspect. Specify `LS_SNI` for HTTPS.
         | 
| 37189 | 
            +
                #   Specify `HTTP_HOST` for HTTP. You can specify either or both.
         | 
| 37190 | 
            +
                #   @return [Array<String>]
         | 
| 37191 | 
            +
                #
         | 
| 37192 | 
            +
                # @!attribute [rw] targets
         | 
| 37193 | 
            +
                #   The domains that you want to inspect for in your traffic flows. You
         | 
| 37194 | 
            +
                #   can provide full domain names, or use the '.' prefix as a
         | 
| 37195 | 
            +
                #   wildcard. For example, `.example.com` matches all domains that end
         | 
| 37196 | 
            +
                #   with `example.com`.
         | 
| 37197 | 
            +
                #   @return [Array<String>]
         | 
| 37198 | 
            +
                #
         | 
| 37199 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupSourceListDetails AWS API Documentation
         | 
| 37200 | 
            +
                #
         | 
| 37201 | 
            +
                class RuleGroupSourceListDetails < Struct.new(
         | 
| 37202 | 
            +
                  :generated_rules_type,
         | 
| 37203 | 
            +
                  :target_types,
         | 
| 37204 | 
            +
                  :targets)
         | 
| 37205 | 
            +
                  SENSITIVE = []
         | 
| 37206 | 
            +
                  include Aws::Structure
         | 
| 37207 | 
            +
                end
         | 
| 37208 | 
            +
             | 
| 37209 | 
            +
                # A Suricata rule specification.
         | 
| 37210 | 
            +
                #
         | 
| 37211 | 
            +
                # @note When making an API call, you may pass RuleGroupSourceStatefulRulesDetails
         | 
| 37212 | 
            +
                #   data as a hash:
         | 
| 37213 | 
            +
                #
         | 
| 37214 | 
            +
                #       {
         | 
| 37215 | 
            +
                #         action: "NonEmptyString",
         | 
| 37216 | 
            +
                #         header: {
         | 
| 37217 | 
            +
                #           destination: "NonEmptyString",
         | 
| 37218 | 
            +
                #           destination_port: "NonEmptyString",
         | 
| 37219 | 
            +
                #           direction: "NonEmptyString",
         | 
| 37220 | 
            +
                #           protocol: "NonEmptyString",
         | 
| 37221 | 
            +
                #           source: "NonEmptyString",
         | 
| 37222 | 
            +
                #           source_port: "NonEmptyString",
         | 
| 37223 | 
            +
                #         },
         | 
| 37224 | 
            +
                #         rule_options: [
         | 
| 37225 | 
            +
                #           {
         | 
| 37226 | 
            +
                #             keyword: "NonEmptyString",
         | 
| 37227 | 
            +
                #             settings: ["NonEmptyString"],
         | 
| 37228 | 
            +
                #           },
         | 
| 37229 | 
            +
                #         ],
         | 
| 37230 | 
            +
                #       }
         | 
| 37231 | 
            +
                #
         | 
| 37232 | 
            +
                # @!attribute [rw] action
         | 
| 37233 | 
            +
                #   Defines what Network Firewall should do with the packets in a
         | 
| 37234 | 
            +
                #   traffic flow when the flow matches the stateful rule criteria.
         | 
| 37235 | 
            +
                #   @return [String]
         | 
| 37236 | 
            +
                #
         | 
| 37237 | 
            +
                # @!attribute [rw] header
         | 
| 37238 | 
            +
                #   The stateful inspection criteria for the rule.
         | 
| 37239 | 
            +
                #   @return [Types::RuleGroupSourceStatefulRulesHeaderDetails]
         | 
| 37240 | 
            +
                #
         | 
| 37241 | 
            +
                # @!attribute [rw] rule_options
         | 
| 37242 | 
            +
                #   Additional options for the rule.
         | 
| 37243 | 
            +
                #   @return [Array<Types::RuleGroupSourceStatefulRulesOptionsDetails>]
         | 
| 37244 | 
            +
                #
         | 
| 37245 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupSourceStatefulRulesDetails AWS API Documentation
         | 
| 37246 | 
            +
                #
         | 
| 37247 | 
            +
                class RuleGroupSourceStatefulRulesDetails < Struct.new(
         | 
| 37248 | 
            +
                  :action,
         | 
| 37249 | 
            +
                  :header,
         | 
| 37250 | 
            +
                  :rule_options)
         | 
| 37251 | 
            +
                  SENSITIVE = []
         | 
| 37252 | 
            +
                  include Aws::Structure
         | 
| 37253 | 
            +
                end
         | 
| 37254 | 
            +
             | 
| 37255 | 
            +
                # The inspection criteria for a stateful rule.
         | 
| 37256 | 
            +
                #
         | 
| 37257 | 
            +
                # @note When making an API call, you may pass RuleGroupSourceStatefulRulesHeaderDetails
         | 
| 37258 | 
            +
                #   data as a hash:
         | 
| 37259 | 
            +
                #
         | 
| 37260 | 
            +
                #       {
         | 
| 37261 | 
            +
                #         destination: "NonEmptyString",
         | 
| 37262 | 
            +
                #         destination_port: "NonEmptyString",
         | 
| 37263 | 
            +
                #         direction: "NonEmptyString",
         | 
| 37264 | 
            +
                #         protocol: "NonEmptyString",
         | 
| 37265 | 
            +
                #         source: "NonEmptyString",
         | 
| 37266 | 
            +
                #         source_port: "NonEmptyString",
         | 
| 37267 | 
            +
                #       }
         | 
| 37268 | 
            +
                #
         | 
| 37269 | 
            +
                # @!attribute [rw] destination
         | 
| 37270 | 
            +
                #   The destination IP address or address range to inspect for, in CIDR
         | 
| 37271 | 
            +
                #   notation. To match with any address, specify `ANY`.
         | 
| 37272 | 
            +
                #   @return [String]
         | 
| 37273 | 
            +
                #
         | 
| 37274 | 
            +
                # @!attribute [rw] destination_port
         | 
| 37275 | 
            +
                #   The destination port to inspect for. You can specify an individual
         | 
| 37276 | 
            +
                #   port, such as `1994`. You also can specify a port range, such as
         | 
| 37277 | 
            +
                #   `1990:1994`. To match with any port, specify `ANY`.
         | 
| 37278 | 
            +
                #   @return [String]
         | 
| 37279 | 
            +
                #
         | 
| 37280 | 
            +
                # @!attribute [rw] direction
         | 
| 37281 | 
            +
                #   The direction of traffic flow to inspect. If set to `ANY`, the
         | 
| 37282 | 
            +
                #   inspection matches bidirectional traffic, both from the source to
         | 
| 37283 | 
            +
                #   the destination and from the destination to the source. If set to
         | 
| 37284 | 
            +
                #   `FORWARD`, the inspection only matches traffic going from the source
         | 
| 37285 | 
            +
                #   to the destination.
         | 
| 37286 | 
            +
                #   @return [String]
         | 
| 37287 | 
            +
                #
         | 
| 37288 | 
            +
                # @!attribute [rw] protocol
         | 
| 37289 | 
            +
                #   The protocol to inspect for. To inspector for all protocols, use
         | 
| 37290 | 
            +
                #   `IP`.
         | 
| 37291 | 
            +
                #   @return [String]
         | 
| 37292 | 
            +
                #
         | 
| 37293 | 
            +
                # @!attribute [rw] source
         | 
| 37294 | 
            +
                #   The source IP address or address range to inspect for, in CIDR
         | 
| 37295 | 
            +
                #   notation. To match with any address, specify `ANY`.
         | 
| 37296 | 
            +
                #   @return [String]
         | 
| 37297 | 
            +
                #
         | 
| 37298 | 
            +
                # @!attribute [rw] source_port
         | 
| 37299 | 
            +
                #   The source port to inspect for. You can specify an individual port,
         | 
| 37300 | 
            +
                #   such as `1994`. You also can specify a port range, such as
         | 
| 37301 | 
            +
                #   `1990:1994`. To match with any port, specify `ANY`.
         | 
| 37302 | 
            +
                #   @return [String]
         | 
| 37303 | 
            +
                #
         | 
| 37304 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupSourceStatefulRulesHeaderDetails AWS API Documentation
         | 
| 37305 | 
            +
                #
         | 
| 37306 | 
            +
                class RuleGroupSourceStatefulRulesHeaderDetails < Struct.new(
         | 
| 37307 | 
            +
                  :destination,
         | 
| 37308 | 
            +
                  :destination_port,
         | 
| 37309 | 
            +
                  :direction,
         | 
| 37310 | 
            +
                  :protocol,
         | 
| 37311 | 
            +
                  :source,
         | 
| 37312 | 
            +
                  :source_port)
         | 
| 37313 | 
            +
                  SENSITIVE = []
         | 
| 37314 | 
            +
                  include Aws::Structure
         | 
| 37315 | 
            +
                end
         | 
| 37316 | 
            +
             | 
| 37317 | 
            +
                # A rule option for a stateful rule.
         | 
| 37318 | 
            +
                #
         | 
| 37319 | 
            +
                # @note When making an API call, you may pass RuleGroupSourceStatefulRulesOptionsDetails
         | 
| 37320 | 
            +
                #   data as a hash:
         | 
| 37321 | 
            +
                #
         | 
| 37322 | 
            +
                #       {
         | 
| 37323 | 
            +
                #         keyword: "NonEmptyString",
         | 
| 37324 | 
            +
                #         settings: ["NonEmptyString"],
         | 
| 37325 | 
            +
                #       }
         | 
| 37326 | 
            +
                #
         | 
| 37327 | 
            +
                # @!attribute [rw] keyword
         | 
| 37328 | 
            +
                #   A keyword to look for.
         | 
| 37329 | 
            +
                #   @return [String]
         | 
| 37330 | 
            +
                #
         | 
| 37331 | 
            +
                # @!attribute [rw] settings
         | 
| 37332 | 
            +
                #   A list of settings.
         | 
| 37333 | 
            +
                #   @return [Array<String>]
         | 
| 37334 | 
            +
                #
         | 
| 37335 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupSourceStatefulRulesOptionsDetails AWS API Documentation
         | 
| 37336 | 
            +
                #
         | 
| 37337 | 
            +
                class RuleGroupSourceStatefulRulesOptionsDetails < Struct.new(
         | 
| 37338 | 
            +
                  :keyword,
         | 
| 37339 | 
            +
                  :settings)
         | 
| 37340 | 
            +
                  SENSITIVE = []
         | 
| 37341 | 
            +
                  include Aws::Structure
         | 
| 37342 | 
            +
                end
         | 
| 37343 | 
            +
             | 
| 37344 | 
            +
                # The definition of the stateless rule.
         | 
| 37345 | 
            +
                #
         | 
| 37346 | 
            +
                # @note When making an API call, you may pass RuleGroupSourceStatelessRuleDefinition
         | 
| 37347 | 
            +
                #   data as a hash:
         | 
| 37348 | 
            +
                #
         | 
| 37349 | 
            +
                #       {
         | 
| 37350 | 
            +
                #         actions: ["NonEmptyString"],
         | 
| 37351 | 
            +
                #         match_attributes: {
         | 
| 37352 | 
            +
                #           destination_ports: [
         | 
| 37353 | 
            +
                #             {
         | 
| 37354 | 
            +
                #               from_port: 1,
         | 
| 37355 | 
            +
                #               to_port: 1,
         | 
| 37356 | 
            +
                #             },
         | 
| 37357 | 
            +
                #           ],
         | 
| 37358 | 
            +
                #           destinations: [
         | 
| 37359 | 
            +
                #             {
         | 
| 37360 | 
            +
                #               address_definition: "NonEmptyString",
         | 
| 37361 | 
            +
                #             },
         | 
| 37362 | 
            +
                #           ],
         | 
| 37363 | 
            +
                #           protocols: [1],
         | 
| 37364 | 
            +
                #           source_ports: [
         | 
| 37365 | 
            +
                #             {
         | 
| 37366 | 
            +
                #               from_port: 1,
         | 
| 37367 | 
            +
                #               to_port: 1,
         | 
| 37368 | 
            +
                #             },
         | 
| 37369 | 
            +
                #           ],
         | 
| 37370 | 
            +
                #           sources: [
         | 
| 37371 | 
            +
                #             {
         | 
| 37372 | 
            +
                #               address_definition: "NonEmptyString",
         | 
| 37373 | 
            +
                #             },
         | 
| 37374 | 
            +
                #           ],
         | 
| 37375 | 
            +
                #           tcp_flags: [
         | 
| 37376 | 
            +
                #             {
         | 
| 37377 | 
            +
                #               flags: ["NonEmptyString"],
         | 
| 37378 | 
            +
                #               masks: ["NonEmptyString"],
         | 
| 37379 | 
            +
                #             },
         | 
| 37380 | 
            +
                #           ],
         | 
| 37381 | 
            +
                #         },
         | 
| 37382 | 
            +
                #       }
         | 
| 37383 | 
            +
                #
         | 
| 37384 | 
            +
                # @!attribute [rw] actions
         | 
| 37385 | 
            +
                #   The actions to take on a packet that matches one of the stateless
         | 
| 37386 | 
            +
                #   rule definition's match attributes. You must specify a standard
         | 
| 37387 | 
            +
                #   action (`aws:pass`, `aws:drop`, or `aws:forward_to_sfe`). You can
         | 
| 37388 | 
            +
                #   then add custom actions.
         | 
| 37389 | 
            +
                #   @return [Array<String>]
         | 
| 37390 | 
            +
                #
         | 
| 37391 | 
            +
                # @!attribute [rw] match_attributes
         | 
| 37392 | 
            +
                #   The criteria for Network Firewall to use to inspect an individual
         | 
| 37393 | 
            +
                #   packet in a stateless rule inspection.
         | 
| 37394 | 
            +
                #   @return [Types::RuleGroupSourceStatelessRuleMatchAttributes]
         | 
| 37395 | 
            +
                #
         | 
| 37396 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupSourceStatelessRuleDefinition AWS API Documentation
         | 
| 37397 | 
            +
                #
         | 
| 37398 | 
            +
                class RuleGroupSourceStatelessRuleDefinition < Struct.new(
         | 
| 37399 | 
            +
                  :actions,
         | 
| 37400 | 
            +
                  :match_attributes)
         | 
| 37401 | 
            +
                  SENSITIVE = []
         | 
| 37402 | 
            +
                  include Aws::Structure
         | 
| 37403 | 
            +
                end
         | 
| 37404 | 
            +
             | 
| 37405 | 
            +
                # Criteria for the stateless rule.
         | 
| 37406 | 
            +
                #
         | 
| 37407 | 
            +
                # @note When making an API call, you may pass RuleGroupSourceStatelessRuleMatchAttributes
         | 
| 37408 | 
            +
                #   data as a hash:
         | 
| 37409 | 
            +
                #
         | 
| 37410 | 
            +
                #       {
         | 
| 37411 | 
            +
                #         destination_ports: [
         | 
| 37412 | 
            +
                #           {
         | 
| 37413 | 
            +
                #             from_port: 1,
         | 
| 37414 | 
            +
                #             to_port: 1,
         | 
| 37415 | 
            +
                #           },
         | 
| 37416 | 
            +
                #         ],
         | 
| 37417 | 
            +
                #         destinations: [
         | 
| 37418 | 
            +
                #           {
         | 
| 37419 | 
            +
                #             address_definition: "NonEmptyString",
         | 
| 37420 | 
            +
                #           },
         | 
| 37421 | 
            +
                #         ],
         | 
| 37422 | 
            +
                #         protocols: [1],
         | 
| 37423 | 
            +
                #         source_ports: [
         | 
| 37424 | 
            +
                #           {
         | 
| 37425 | 
            +
                #             from_port: 1,
         | 
| 37426 | 
            +
                #             to_port: 1,
         | 
| 37427 | 
            +
                #           },
         | 
| 37428 | 
            +
                #         ],
         | 
| 37429 | 
            +
                #         sources: [
         | 
| 37430 | 
            +
                #           {
         | 
| 37431 | 
            +
                #             address_definition: "NonEmptyString",
         | 
| 37432 | 
            +
                #           },
         | 
| 37433 | 
            +
                #         ],
         | 
| 37434 | 
            +
                #         tcp_flags: [
         | 
| 37435 | 
            +
                #           {
         | 
| 37436 | 
            +
                #             flags: ["NonEmptyString"],
         | 
| 37437 | 
            +
                #             masks: ["NonEmptyString"],
         | 
| 37438 | 
            +
                #           },
         | 
| 37439 | 
            +
                #         ],
         | 
| 37440 | 
            +
                #       }
         | 
| 37441 | 
            +
                #
         | 
| 37442 | 
            +
                # @!attribute [rw] destination_ports
         | 
| 37443 | 
            +
                #   A list of port ranges to specify the destination ports to inspect
         | 
| 37444 | 
            +
                #   for.
         | 
| 37445 | 
            +
                #   @return [Array<Types::RuleGroupSourceStatelessRuleMatchAttributesDestinationPorts>]
         | 
| 37446 | 
            +
                #
         | 
| 37447 | 
            +
                # @!attribute [rw] destinations
         | 
| 37448 | 
            +
                #   The destination IP addresses and address ranges to inspect for, in
         | 
| 37449 | 
            +
                #   CIDR notation.
         | 
| 37450 | 
            +
                #   @return [Array<Types::RuleGroupSourceStatelessRuleMatchAttributesDestinations>]
         | 
| 37451 | 
            +
                #
         | 
| 37452 | 
            +
                # @!attribute [rw] protocols
         | 
| 37453 | 
            +
                #   The protocols to inspect for.
         | 
| 37454 | 
            +
                #   @return [Array<Integer>]
         | 
| 37455 | 
            +
                #
         | 
| 37456 | 
            +
                # @!attribute [rw] source_ports
         | 
| 37457 | 
            +
                #   A list of port ranges to specify the source ports to inspect for.
         | 
| 37458 | 
            +
                #   @return [Array<Types::RuleGroupSourceStatelessRuleMatchAttributesSourcePorts>]
         | 
| 37459 | 
            +
                #
         | 
| 37460 | 
            +
                # @!attribute [rw] sources
         | 
| 37461 | 
            +
                #   The source IP addresses and address ranges to inspect for, in CIDR
         | 
| 37462 | 
            +
                #   notation.
         | 
| 37463 | 
            +
                #   @return [Array<Types::RuleGroupSourceStatelessRuleMatchAttributesSources>]
         | 
| 37464 | 
            +
                #
         | 
| 37465 | 
            +
                # @!attribute [rw] tcp_flags
         | 
| 37466 | 
            +
                #   The TCP flags and masks to inspect for.
         | 
| 37467 | 
            +
                #   @return [Array<Types::RuleGroupSourceStatelessRuleMatchAttributesTcpFlags>]
         | 
| 37468 | 
            +
                #
         | 
| 37469 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupSourceStatelessRuleMatchAttributes AWS API Documentation
         | 
| 37470 | 
            +
                #
         | 
| 37471 | 
            +
                class RuleGroupSourceStatelessRuleMatchAttributes < Struct.new(
         | 
| 37472 | 
            +
                  :destination_ports,
         | 
| 37473 | 
            +
                  :destinations,
         | 
| 37474 | 
            +
                  :protocols,
         | 
| 37475 | 
            +
                  :source_ports,
         | 
| 37476 | 
            +
                  :sources,
         | 
| 37477 | 
            +
                  :tcp_flags)
         | 
| 37478 | 
            +
                  SENSITIVE = []
         | 
| 37479 | 
            +
                  include Aws::Structure
         | 
| 37480 | 
            +
                end
         | 
| 37481 | 
            +
             | 
| 37482 | 
            +
                # A port range to specify the destination ports to inspect for.
         | 
| 37483 | 
            +
                #
         | 
| 37484 | 
            +
                # @note When making an API call, you may pass RuleGroupSourceStatelessRuleMatchAttributesDestinationPorts
         | 
| 37485 | 
            +
                #   data as a hash:
         | 
| 37486 | 
            +
                #
         | 
| 37487 | 
            +
                #       {
         | 
| 37488 | 
            +
                #         from_port: 1,
         | 
| 37489 | 
            +
                #         to_port: 1,
         | 
| 37490 | 
            +
                #       }
         | 
| 37491 | 
            +
                #
         | 
| 37492 | 
            +
                # @!attribute [rw] from_port
         | 
| 37493 | 
            +
                #   The starting port value for the port range.
         | 
| 37494 | 
            +
                #   @return [Integer]
         | 
| 37495 | 
            +
                #
         | 
| 37496 | 
            +
                # @!attribute [rw] to_port
         | 
| 37497 | 
            +
                #   The ending port value for the port range.
         | 
| 37498 | 
            +
                #   @return [Integer]
         | 
| 37499 | 
            +
                #
         | 
| 37500 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupSourceStatelessRuleMatchAttributesDestinationPorts AWS API Documentation
         | 
| 37501 | 
            +
                #
         | 
| 37502 | 
            +
                class RuleGroupSourceStatelessRuleMatchAttributesDestinationPorts < Struct.new(
         | 
| 37503 | 
            +
                  :from_port,
         | 
| 37504 | 
            +
                  :to_port)
         | 
| 37505 | 
            +
                  SENSITIVE = []
         | 
| 37506 | 
            +
                  include Aws::Structure
         | 
| 37507 | 
            +
                end
         | 
| 37508 | 
            +
             | 
| 37509 | 
            +
                # A destination IP address or range.
         | 
| 37510 | 
            +
                #
         | 
| 37511 | 
            +
                # @note When making an API call, you may pass RuleGroupSourceStatelessRuleMatchAttributesDestinations
         | 
| 37512 | 
            +
                #   data as a hash:
         | 
| 37513 | 
            +
                #
         | 
| 37514 | 
            +
                #       {
         | 
| 37515 | 
            +
                #         address_definition: "NonEmptyString",
         | 
| 37516 | 
            +
                #       }
         | 
| 37517 | 
            +
                #
         | 
| 37518 | 
            +
                # @!attribute [rw] address_definition
         | 
| 37519 | 
            +
                #   An IP address or a block of IP addresses.
         | 
| 37520 | 
            +
                #   @return [String]
         | 
| 37521 | 
            +
                #
         | 
| 37522 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupSourceStatelessRuleMatchAttributesDestinations AWS API Documentation
         | 
| 37523 | 
            +
                #
         | 
| 37524 | 
            +
                class RuleGroupSourceStatelessRuleMatchAttributesDestinations < Struct.new(
         | 
| 37525 | 
            +
                  :address_definition)
         | 
| 37526 | 
            +
                  SENSITIVE = []
         | 
| 37527 | 
            +
                  include Aws::Structure
         | 
| 37528 | 
            +
                end
         | 
| 37529 | 
            +
             | 
| 37530 | 
            +
                # A port range to specify the source ports to inspect for.
         | 
| 37531 | 
            +
                #
         | 
| 37532 | 
            +
                # @note When making an API call, you may pass RuleGroupSourceStatelessRuleMatchAttributesSourcePorts
         | 
| 37533 | 
            +
                #   data as a hash:
         | 
| 37534 | 
            +
                #
         | 
| 37535 | 
            +
                #       {
         | 
| 37536 | 
            +
                #         from_port: 1,
         | 
| 37537 | 
            +
                #         to_port: 1,
         | 
| 37538 | 
            +
                #       }
         | 
| 37539 | 
            +
                #
         | 
| 37540 | 
            +
                # @!attribute [rw] from_port
         | 
| 37541 | 
            +
                #   The starting port value for the port range.
         | 
| 37542 | 
            +
                #   @return [Integer]
         | 
| 37543 | 
            +
                #
         | 
| 37544 | 
            +
                # @!attribute [rw] to_port
         | 
| 37545 | 
            +
                #   The ending port value for the port range.
         | 
| 37546 | 
            +
                #   @return [Integer]
         | 
| 37547 | 
            +
                #
         | 
| 37548 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupSourceStatelessRuleMatchAttributesSourcePorts AWS API Documentation
         | 
| 37549 | 
            +
                #
         | 
| 37550 | 
            +
                class RuleGroupSourceStatelessRuleMatchAttributesSourcePorts < Struct.new(
         | 
| 37551 | 
            +
                  :from_port,
         | 
| 37552 | 
            +
                  :to_port)
         | 
| 37553 | 
            +
                  SENSITIVE = []
         | 
| 37554 | 
            +
                  include Aws::Structure
         | 
| 37555 | 
            +
                end
         | 
| 37556 | 
            +
             | 
| 37557 | 
            +
                # A source IP addresses and address range to inspect for.
         | 
| 37558 | 
            +
                #
         | 
| 37559 | 
            +
                # @note When making an API call, you may pass RuleGroupSourceStatelessRuleMatchAttributesSources
         | 
| 37560 | 
            +
                #   data as a hash:
         | 
| 37561 | 
            +
                #
         | 
| 37562 | 
            +
                #       {
         | 
| 37563 | 
            +
                #         address_definition: "NonEmptyString",
         | 
| 37564 | 
            +
                #       }
         | 
| 37565 | 
            +
                #
         | 
| 37566 | 
            +
                # @!attribute [rw] address_definition
         | 
| 37567 | 
            +
                #   An IP address or a block of IP addresses.
         | 
| 37568 | 
            +
                #   @return [String]
         | 
| 37569 | 
            +
                #
         | 
| 37570 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupSourceStatelessRuleMatchAttributesSources AWS API Documentation
         | 
| 37571 | 
            +
                #
         | 
| 37572 | 
            +
                class RuleGroupSourceStatelessRuleMatchAttributesSources < Struct.new(
         | 
| 37573 | 
            +
                  :address_definition)
         | 
| 37574 | 
            +
                  SENSITIVE = []
         | 
| 37575 | 
            +
                  include Aws::Structure
         | 
| 37576 | 
            +
                end
         | 
| 37577 | 
            +
             | 
| 37578 | 
            +
                # A set of TCP flags and masks to inspect for.
         | 
| 37579 | 
            +
                #
         | 
| 37580 | 
            +
                # @note When making an API call, you may pass RuleGroupSourceStatelessRuleMatchAttributesTcpFlags
         | 
| 37581 | 
            +
                #   data as a hash:
         | 
| 37582 | 
            +
                #
         | 
| 37583 | 
            +
                #       {
         | 
| 37584 | 
            +
                #         flags: ["NonEmptyString"],
         | 
| 37585 | 
            +
                #         masks: ["NonEmptyString"],
         | 
| 37586 | 
            +
                #       }
         | 
| 37587 | 
            +
                #
         | 
| 37588 | 
            +
                # @!attribute [rw] flags
         | 
| 37589 | 
            +
                #   Defines the flags from the `Masks` setting that must be set in order
         | 
| 37590 | 
            +
                #   for the packet to match. Flags that are listed must be set. Flags
         | 
| 37591 | 
            +
                #   that are not listed must not be set.
         | 
| 37592 | 
            +
                #   @return [Array<String>]
         | 
| 37593 | 
            +
                #
         | 
| 37594 | 
            +
                # @!attribute [rw] masks
         | 
| 37595 | 
            +
                #   The set of flags to consider in the inspection. If not specified,
         | 
| 37596 | 
            +
                #   then all flags are inspected.
         | 
| 37597 | 
            +
                #   @return [Array<String>]
         | 
| 37598 | 
            +
                #
         | 
| 37599 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupSourceStatelessRuleMatchAttributesTcpFlags AWS API Documentation
         | 
| 37600 | 
            +
                #
         | 
| 37601 | 
            +
                class RuleGroupSourceStatelessRuleMatchAttributesTcpFlags < Struct.new(
         | 
| 37602 | 
            +
                  :flags,
         | 
| 37603 | 
            +
                  :masks)
         | 
| 37604 | 
            +
                  SENSITIVE = []
         | 
| 37605 | 
            +
                  include Aws::Structure
         | 
| 37606 | 
            +
                end
         | 
| 37607 | 
            +
             | 
| 37608 | 
            +
                # Stateless rules and custom actions for a stateless rule group.
         | 
| 37609 | 
            +
                #
         | 
| 37610 | 
            +
                # @note When making an API call, you may pass RuleGroupSourceStatelessRulesAndCustomActionsDetails
         | 
| 37611 | 
            +
                #   data as a hash:
         | 
| 37612 | 
            +
                #
         | 
| 37613 | 
            +
                #       {
         | 
| 37614 | 
            +
                #         custom_actions: [
         | 
| 37615 | 
            +
                #           {
         | 
| 37616 | 
            +
                #             action_definition: {
         | 
| 37617 | 
            +
                #               publish_metric_action: {
         | 
| 37618 | 
            +
                #                 dimensions: [
         | 
| 37619 | 
            +
                #                   {
         | 
| 37620 | 
            +
                #                     value: "NonEmptyString",
         | 
| 37621 | 
            +
                #                   },
         | 
| 37622 | 
            +
                #                 ],
         | 
| 37623 | 
            +
                #               },
         | 
| 37624 | 
            +
                #             },
         | 
| 37625 | 
            +
                #             action_name: "NonEmptyString",
         | 
| 37626 | 
            +
                #           },
         | 
| 37627 | 
            +
                #         ],
         | 
| 37628 | 
            +
                #         stateless_rules: [
         | 
| 37629 | 
            +
                #           {
         | 
| 37630 | 
            +
                #             priority: 1,
         | 
| 37631 | 
            +
                #             rule_definition: {
         | 
| 37632 | 
            +
                #               actions: ["NonEmptyString"],
         | 
| 37633 | 
            +
                #               match_attributes: {
         | 
| 37634 | 
            +
                #                 destination_ports: [
         | 
| 37635 | 
            +
                #                   {
         | 
| 37636 | 
            +
                #                     from_port: 1,
         | 
| 37637 | 
            +
                #                     to_port: 1,
         | 
| 37638 | 
            +
                #                   },
         | 
| 37639 | 
            +
                #                 ],
         | 
| 37640 | 
            +
                #                 destinations: [
         | 
| 37641 | 
            +
                #                   {
         | 
| 37642 | 
            +
                #                     address_definition: "NonEmptyString",
         | 
| 37643 | 
            +
                #                   },
         | 
| 37644 | 
            +
                #                 ],
         | 
| 37645 | 
            +
                #                 protocols: [1],
         | 
| 37646 | 
            +
                #                 source_ports: [
         | 
| 37647 | 
            +
                #                   {
         | 
| 37648 | 
            +
                #                     from_port: 1,
         | 
| 37649 | 
            +
                #                     to_port: 1,
         | 
| 37650 | 
            +
                #                   },
         | 
| 37651 | 
            +
                #                 ],
         | 
| 37652 | 
            +
                #                 sources: [
         | 
| 37653 | 
            +
                #                   {
         | 
| 37654 | 
            +
                #                     address_definition: "NonEmptyString",
         | 
| 37655 | 
            +
                #                   },
         | 
| 37656 | 
            +
                #                 ],
         | 
| 37657 | 
            +
                #                 tcp_flags: [
         | 
| 37658 | 
            +
                #                   {
         | 
| 37659 | 
            +
                #                     flags: ["NonEmptyString"],
         | 
| 37660 | 
            +
                #                     masks: ["NonEmptyString"],
         | 
| 37661 | 
            +
                #                   },
         | 
| 37662 | 
            +
                #                 ],
         | 
| 37663 | 
            +
                #               },
         | 
| 37664 | 
            +
                #             },
         | 
| 37665 | 
            +
                #           },
         | 
| 37666 | 
            +
                #         ],
         | 
| 37667 | 
            +
                #       }
         | 
| 37668 | 
            +
                #
         | 
| 37669 | 
            +
                # @!attribute [rw] custom_actions
         | 
| 37670 | 
            +
                #   Custom actions for the rule group.
         | 
| 37671 | 
            +
                #   @return [Array<Types::RuleGroupSourceCustomActionsDetails>]
         | 
| 37672 | 
            +
                #
         | 
| 37673 | 
            +
                # @!attribute [rw] stateless_rules
         | 
| 37674 | 
            +
                #   Stateless rules for the rule group.
         | 
| 37675 | 
            +
                #   @return [Array<Types::RuleGroupSourceStatelessRulesDetails>]
         | 
| 37676 | 
            +
                #
         | 
| 37677 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupSourceStatelessRulesAndCustomActionsDetails AWS API Documentation
         | 
| 37678 | 
            +
                #
         | 
| 37679 | 
            +
                class RuleGroupSourceStatelessRulesAndCustomActionsDetails < Struct.new(
         | 
| 37680 | 
            +
                  :custom_actions,
         | 
| 37681 | 
            +
                  :stateless_rules)
         | 
| 37682 | 
            +
                  SENSITIVE = []
         | 
| 37683 | 
            +
                  include Aws::Structure
         | 
| 37684 | 
            +
                end
         | 
| 37685 | 
            +
             | 
| 37686 | 
            +
                # A stateless rule in the rule group.
         | 
| 37687 | 
            +
                #
         | 
| 37688 | 
            +
                # @note When making an API call, you may pass RuleGroupSourceStatelessRulesDetails
         | 
| 37689 | 
            +
                #   data as a hash:
         | 
| 37690 | 
            +
                #
         | 
| 37691 | 
            +
                #       {
         | 
| 37692 | 
            +
                #         priority: 1,
         | 
| 37693 | 
            +
                #         rule_definition: {
         | 
| 37694 | 
            +
                #           actions: ["NonEmptyString"],
         | 
| 37695 | 
            +
                #           match_attributes: {
         | 
| 37696 | 
            +
                #             destination_ports: [
         | 
| 37697 | 
            +
                #               {
         | 
| 37698 | 
            +
                #                 from_port: 1,
         | 
| 37699 | 
            +
                #                 to_port: 1,
         | 
| 37700 | 
            +
                #               },
         | 
| 37701 | 
            +
                #             ],
         | 
| 37702 | 
            +
                #             destinations: [
         | 
| 37703 | 
            +
                #               {
         | 
| 37704 | 
            +
                #                 address_definition: "NonEmptyString",
         | 
| 37705 | 
            +
                #               },
         | 
| 37706 | 
            +
                #             ],
         | 
| 37707 | 
            +
                #             protocols: [1],
         | 
| 37708 | 
            +
                #             source_ports: [
         | 
| 37709 | 
            +
                #               {
         | 
| 37710 | 
            +
                #                 from_port: 1,
         | 
| 37711 | 
            +
                #                 to_port: 1,
         | 
| 37712 | 
            +
                #               },
         | 
| 37713 | 
            +
                #             ],
         | 
| 37714 | 
            +
                #             sources: [
         | 
| 37715 | 
            +
                #               {
         | 
| 37716 | 
            +
                #                 address_definition: "NonEmptyString",
         | 
| 37717 | 
            +
                #               },
         | 
| 37718 | 
            +
                #             ],
         | 
| 37719 | 
            +
                #             tcp_flags: [
         | 
| 37720 | 
            +
                #               {
         | 
| 37721 | 
            +
                #                 flags: ["NonEmptyString"],
         | 
| 37722 | 
            +
                #                 masks: ["NonEmptyString"],
         | 
| 37723 | 
            +
                #               },
         | 
| 37724 | 
            +
                #             ],
         | 
| 37725 | 
            +
                #           },
         | 
| 37726 | 
            +
                #         },
         | 
| 37727 | 
            +
                #       }
         | 
| 37728 | 
            +
                #
         | 
| 37729 | 
            +
                # @!attribute [rw] priority
         | 
| 37730 | 
            +
                #   Indicates the order in which to run this rule relative to all of the
         | 
| 37731 | 
            +
                #   rules in the stateless rule group.
         | 
| 37732 | 
            +
                #   @return [Integer]
         | 
| 37733 | 
            +
                #
         | 
| 37734 | 
            +
                # @!attribute [rw] rule_definition
         | 
| 37735 | 
            +
                #   Provides the definition of the stateless rule.
         | 
| 37736 | 
            +
                #   @return [Types::RuleGroupSourceStatelessRuleDefinition]
         | 
| 37737 | 
            +
                #
         | 
| 37738 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupSourceStatelessRulesDetails AWS API Documentation
         | 
| 37739 | 
            +
                #
         | 
| 37740 | 
            +
                class RuleGroupSourceStatelessRulesDetails < Struct.new(
         | 
| 37741 | 
            +
                  :priority,
         | 
| 37742 | 
            +
                  :rule_definition)
         | 
| 37743 | 
            +
                  SENSITIVE = []
         | 
| 37744 | 
            +
                  include Aws::Structure
         | 
| 37745 | 
            +
                end
         | 
| 37746 | 
            +
             | 
| 37747 | 
            +
                # Additional settings to use in the specified rules.
         | 
| 37748 | 
            +
                #
         | 
| 37749 | 
            +
                # @note When making an API call, you may pass RuleGroupVariables
         | 
| 37750 | 
            +
                #   data as a hash:
         | 
| 37751 | 
            +
                #
         | 
| 37752 | 
            +
                #       {
         | 
| 37753 | 
            +
                #         ip_sets: {
         | 
| 37754 | 
            +
                #           definition: ["NonEmptyString"],
         | 
| 37755 | 
            +
                #         },
         | 
| 37756 | 
            +
                #         port_sets: {
         | 
| 37757 | 
            +
                #           definition: ["NonEmptyString"],
         | 
| 37758 | 
            +
                #         },
         | 
| 37759 | 
            +
                #       }
         | 
| 37760 | 
            +
                #
         | 
| 37761 | 
            +
                # @!attribute [rw] ip_sets
         | 
| 37762 | 
            +
                #   A list of IP addresses and address ranges, in CIDR notation.
         | 
| 37763 | 
            +
                #   @return [Types::RuleGroupVariablesIpSetsDetails]
         | 
| 37764 | 
            +
                #
         | 
| 37765 | 
            +
                # @!attribute [rw] port_sets
         | 
| 37766 | 
            +
                #   A list of port ranges.
         | 
| 37767 | 
            +
                #   @return [Types::RuleGroupVariablesPortSetsDetails]
         | 
| 37768 | 
            +
                #
         | 
| 37769 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupVariables AWS API Documentation
         | 
| 37770 | 
            +
                #
         | 
| 37771 | 
            +
                class RuleGroupVariables < Struct.new(
         | 
| 37772 | 
            +
                  :ip_sets,
         | 
| 37773 | 
            +
                  :port_sets)
         | 
| 37774 | 
            +
                  SENSITIVE = []
         | 
| 37775 | 
            +
                  include Aws::Structure
         | 
| 37776 | 
            +
                end
         | 
| 37777 | 
            +
             | 
| 37778 | 
            +
                # A list of IP addresses and address ranges, in CIDR notation.
         | 
| 37779 | 
            +
                #
         | 
| 37780 | 
            +
                # @note When making an API call, you may pass RuleGroupVariablesIpSetsDetails
         | 
| 37781 | 
            +
                #   data as a hash:
         | 
| 37782 | 
            +
                #
         | 
| 37783 | 
            +
                #       {
         | 
| 37784 | 
            +
                #         definition: ["NonEmptyString"],
         | 
| 37785 | 
            +
                #       }
         | 
| 37786 | 
            +
                #
         | 
| 37787 | 
            +
                # @!attribute [rw] definition
         | 
| 37788 | 
            +
                #   The list of IP addresses and ranges.
         | 
| 37789 | 
            +
                #   @return [Array<String>]
         | 
| 37790 | 
            +
                #
         | 
| 37791 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupVariablesIpSetsDetails AWS API Documentation
         | 
| 37792 | 
            +
                #
         | 
| 37793 | 
            +
                class RuleGroupVariablesIpSetsDetails < Struct.new(
         | 
| 37794 | 
            +
                  :definition)
         | 
| 37795 | 
            +
                  SENSITIVE = []
         | 
| 37796 | 
            +
                  include Aws::Structure
         | 
| 37797 | 
            +
                end
         | 
| 37798 | 
            +
             | 
| 37799 | 
            +
                # A list of port ranges.
         | 
| 37800 | 
            +
                #
         | 
| 37801 | 
            +
                # @note When making an API call, you may pass RuleGroupVariablesPortSetsDetails
         | 
| 37802 | 
            +
                #   data as a hash:
         | 
| 37803 | 
            +
                #
         | 
| 37804 | 
            +
                #       {
         | 
| 37805 | 
            +
                #         definition: ["NonEmptyString"],
         | 
| 37806 | 
            +
                #       }
         | 
| 37807 | 
            +
                #
         | 
| 37808 | 
            +
                # @!attribute [rw] definition
         | 
| 37809 | 
            +
                #   The list of port ranges.
         | 
| 37810 | 
            +
                #   @return [Array<String>]
         | 
| 37811 | 
            +
                #
         | 
| 37812 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/RuleGroupVariablesPortSetsDetails AWS API Documentation
         | 
| 37813 | 
            +
                #
         | 
| 37814 | 
            +
                class RuleGroupVariablesPortSetsDetails < Struct.new(
         | 
| 37815 | 
            +
                  :definition)
         | 
| 37816 | 
            +
                  SENSITIVE = []
         | 
| 37817 | 
            +
                  include Aws::Structure
         | 
| 37818 | 
            +
                end
         | 
| 37819 | 
            +
             | 
| 35256 37820 | 
             
                # The list of detected instances of sensitive data.
         | 
| 35257 37821 | 
             
                #
         | 
| 35258 37822 | 
             
                # @note When making an API call, you may pass SensitiveDataDetections
         | 
| @@ -35761,6 +38325,21 @@ module Aws::SecurityHub | |
| 35761 38325 | 
             
                  include Aws::Structure
         | 
| 35762 38326 | 
             
                end
         | 
| 35763 38327 |  | 
| 38328 | 
            +
                # The reason for the current status of a standard subscription.
         | 
| 38329 | 
            +
                #
         | 
| 38330 | 
            +
                # @!attribute [rw] status_reason_code
         | 
| 38331 | 
            +
                #   The reason code that represents the reason for the current status of
         | 
| 38332 | 
            +
                #   a standard subscription.
         | 
| 38333 | 
            +
                #   @return [String]
         | 
| 38334 | 
            +
                #
         | 
| 38335 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/StandardsStatusReason AWS API Documentation
         | 
| 38336 | 
            +
                #
         | 
| 38337 | 
            +
                class StandardsStatusReason < Struct.new(
         | 
| 38338 | 
            +
                  :status_reason_code)
         | 
| 38339 | 
            +
                  SENSITIVE = []
         | 
| 38340 | 
            +
                  include Aws::Structure
         | 
| 38341 | 
            +
                end
         | 
| 38342 | 
            +
             | 
| 35764 38343 | 
             
                # A resource that represents your subscription to a supported standard.
         | 
| 35765 38344 | 
             
                #
         | 
| 35766 38345 | 
             
                # @!attribute [rw] standards_subscription_arn
         | 
| @@ -35793,13 +38372,18 @@ module Aws::SecurityHub | |
| 35793 38372 | 
             
                #   * `FAILED` - Standard could not be disabled.
         | 
| 35794 38373 | 
             
                #   @return [String]
         | 
| 35795 38374 | 
             
                #
         | 
| 38375 | 
            +
                # @!attribute [rw] standards_status_reason
         | 
| 38376 | 
            +
                #   The reason for the current status.
         | 
| 38377 | 
            +
                #   @return [Types::StandardsStatusReason]
         | 
| 38378 | 
            +
                #
         | 
| 35796 38379 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/StandardsSubscription AWS API Documentation
         | 
| 35797 38380 | 
             
                #
         | 
| 35798 38381 | 
             
                class StandardsSubscription < Struct.new(
         | 
| 35799 38382 | 
             
                  :standards_subscription_arn,
         | 
| 35800 38383 | 
             
                  :standards_arn,
         | 
| 35801 38384 | 
             
                  :standards_input,
         | 
| 35802 | 
            -
                  :standards_status | 
| 38385 | 
            +
                  :standards_status,
         | 
| 38386 | 
            +
                  :standards_status_reason)
         | 
| 35803 38387 | 
             
                  SENSITIVE = []
         | 
| 35804 38388 | 
             
                  include Aws::Structure
         | 
| 35805 38389 | 
             
                end
         | 
| @@ -35835,6 +38419,80 @@ module Aws::SecurityHub | |
| 35835 38419 | 
             
                  include Aws::Structure
         | 
| 35836 38420 | 
             
                end
         | 
| 35837 38421 |  | 
| 38422 | 
            +
                # The definition of a custom action that can be used for stateless
         | 
| 38423 | 
            +
                # packet handling.
         | 
| 38424 | 
            +
                #
         | 
| 38425 | 
            +
                # @note When making an API call, you may pass StatelessCustomActionDefinition
         | 
| 38426 | 
            +
                #   data as a hash:
         | 
| 38427 | 
            +
                #
         | 
| 38428 | 
            +
                #       {
         | 
| 38429 | 
            +
                #         publish_metric_action: {
         | 
| 38430 | 
            +
                #           dimensions: [
         | 
| 38431 | 
            +
                #             {
         | 
| 38432 | 
            +
                #               value: "NonEmptyString",
         | 
| 38433 | 
            +
                #             },
         | 
| 38434 | 
            +
                #           ],
         | 
| 38435 | 
            +
                #         },
         | 
| 38436 | 
            +
                #       }
         | 
| 38437 | 
            +
                #
         | 
| 38438 | 
            +
                # @!attribute [rw] publish_metric_action
         | 
| 38439 | 
            +
                #   Information about metrics to publish to CloudWatch.
         | 
| 38440 | 
            +
                #   @return [Types::StatelessCustomPublishMetricAction]
         | 
| 38441 | 
            +
                #
         | 
| 38442 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/StatelessCustomActionDefinition AWS API Documentation
         | 
| 38443 | 
            +
                #
         | 
| 38444 | 
            +
                class StatelessCustomActionDefinition < Struct.new(
         | 
| 38445 | 
            +
                  :publish_metric_action)
         | 
| 38446 | 
            +
                  SENSITIVE = []
         | 
| 38447 | 
            +
                  include Aws::Structure
         | 
| 38448 | 
            +
                end
         | 
| 38449 | 
            +
             | 
| 38450 | 
            +
                # Information about metrics to publish to CloudWatch.
         | 
| 38451 | 
            +
                #
         | 
| 38452 | 
            +
                # @note When making an API call, you may pass StatelessCustomPublishMetricAction
         | 
| 38453 | 
            +
                #   data as a hash:
         | 
| 38454 | 
            +
                #
         | 
| 38455 | 
            +
                #       {
         | 
| 38456 | 
            +
                #         dimensions: [
         | 
| 38457 | 
            +
                #           {
         | 
| 38458 | 
            +
                #             value: "NonEmptyString",
         | 
| 38459 | 
            +
                #           },
         | 
| 38460 | 
            +
                #         ],
         | 
| 38461 | 
            +
                #       }
         | 
| 38462 | 
            +
                #
         | 
| 38463 | 
            +
                # @!attribute [rw] dimensions
         | 
| 38464 | 
            +
                #   Defines CloudWatch dimension values to publish.
         | 
| 38465 | 
            +
                #   @return [Array<Types::StatelessCustomPublishMetricActionDimension>]
         | 
| 38466 | 
            +
                #
         | 
| 38467 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/StatelessCustomPublishMetricAction AWS API Documentation
         | 
| 38468 | 
            +
                #
         | 
| 38469 | 
            +
                class StatelessCustomPublishMetricAction < Struct.new(
         | 
| 38470 | 
            +
                  :dimensions)
         | 
| 38471 | 
            +
                  SENSITIVE = []
         | 
| 38472 | 
            +
                  include Aws::Structure
         | 
| 38473 | 
            +
                end
         | 
| 38474 | 
            +
             | 
| 38475 | 
            +
                # Defines a CloudWatch dimension value to publish.
         | 
| 38476 | 
            +
                #
         | 
| 38477 | 
            +
                # @note When making an API call, you may pass StatelessCustomPublishMetricActionDimension
         | 
| 38478 | 
            +
                #   data as a hash:
         | 
| 38479 | 
            +
                #
         | 
| 38480 | 
            +
                #       {
         | 
| 38481 | 
            +
                #         value: "NonEmptyString",
         | 
| 38482 | 
            +
                #       }
         | 
| 38483 | 
            +
                #
         | 
| 38484 | 
            +
                # @!attribute [rw] value
         | 
| 38485 | 
            +
                #   The value to use for the custom metric dimension.
         | 
| 38486 | 
            +
                #   @return [String]
         | 
| 38487 | 
            +
                #
         | 
| 38488 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/StatelessCustomPublishMetricActionDimension AWS API Documentation
         | 
| 38489 | 
            +
                #
         | 
| 38490 | 
            +
                class StatelessCustomPublishMetricActionDimension < Struct.new(
         | 
| 38491 | 
            +
                  :value)
         | 
| 38492 | 
            +
                  SENSITIVE = []
         | 
| 38493 | 
            +
                  include Aws::Structure
         | 
| 38494 | 
            +
                end
         | 
| 38495 | 
            +
             | 
| 35838 38496 | 
             
                # Provides additional context for the value of `Compliance.Status`.
         | 
| 35839 38497 | 
             
                #
         | 
| 35840 38498 | 
             
                # @note When making an API call, you may pass StatusReason
         |