You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.

Class: Aws::SecurityHub::Types::Resource

Inherits:
Struct
  • Object
show all
Defined in:
(unknown)

Overview

Note:

When passing Resource as input to an Aws::Client method, you can use a vanilla Hash:

{
  type: "NonEmptyString", # required
  id: "NonEmptyString", # required
  partition: "aws", # accepts aws, aws-cn, aws-us-gov
  region: "NonEmptyString",
  tags: {
    "NonEmptyString" => "NonEmptyString",
  },
  details: {
    aws_auto_scaling_auto_scaling_group: {
      launch_configuration_name: "NonEmptyString",
      load_balancer_names: ["NonEmptyString"],
      health_check_type: "NonEmptyString",
      health_check_grace_period: 1,
      created_time: "NonEmptyString",
    },
    aws_code_build_project: {
      encryption_key: "NonEmptyString",
      environment: {
        certificate: "NonEmptyString",
        image_pull_credentials_type: "NonEmptyString",
        registry_credential: {
          credential: "NonEmptyString",
          credential_provider: "NonEmptyString",
        },
        type: "NonEmptyString",
      },
      name: "NonEmptyString",
      source: {
        type: "NonEmptyString",
        location: "NonEmptyString",
        git_clone_depth: 1,
        insecure_ssl: false,
      },
      service_role: "NonEmptyString",
      vpc_config: {
        vpc_id: "NonEmptyString",
        subnets: ["NonEmptyString"],
        security_group_ids: ["NonEmptyString"],
      },
    },
    aws_cloud_front_distribution: {
      domain_name: "NonEmptyString",
      etag: "NonEmptyString",
      last_modified_time: "NonEmptyString",
      logging: {
        bucket: "NonEmptyString",
        enabled: false,
        include_cookies: false,
        prefix: "NonEmptyString",
      },
      origins: {
        items: [
          {
            domain_name: "NonEmptyString",
            id: "NonEmptyString",
            origin_path: "NonEmptyString",
          },
        ],
      },
      status: "NonEmptyString",
      web_acl_id: "NonEmptyString",
    },
    aws_ec2_instance: {
      type: "NonEmptyString",
      image_id: "NonEmptyString",
      ip_v4_addresses: ["NonEmptyString"],
      ip_v6_addresses: ["NonEmptyString"],
      key_name: "NonEmptyString",
      iam_instance_profile_arn: "NonEmptyString",
      vpc_id: "NonEmptyString",
      subnet_id: "NonEmptyString",
      launched_at: "NonEmptyString",
    },
    aws_ec2_network_interface: {
      attachment: {
        attach_time: "NonEmptyString",
        attachment_id: "NonEmptyString",
        delete_on_termination: false,
        device_index: 1,
        instance_id: "NonEmptyString",
        instance_owner_id: "NonEmptyString",
        status: "NonEmptyString",
      },
      network_interface_id: "NonEmptyString",
      security_groups: [
        {
          group_name: "NonEmptyString",
          group_id: "NonEmptyString",
        },
      ],
      source_dest_check: false,
    },
    aws_ec2_security_group: {
      group_name: "NonEmptyString",
      group_id: "NonEmptyString",
      owner_id: "NonEmptyString",
      vpc_id: "NonEmptyString",
      ip_permissions: [
        {
          ip_protocol: "NonEmptyString",
          from_port: 1,
          to_port: 1,
          user_id_group_pairs: [
            {
              group_id: "NonEmptyString",
              group_name: "NonEmptyString",
              peering_status: "NonEmptyString",
              user_id: "NonEmptyString",
              vpc_id: "NonEmptyString",
              vpc_peering_connection_id: "NonEmptyString",
            },
          ],
          ip_ranges: [
            {
              cidr_ip: "NonEmptyString",
            },
          ],
          ipv_6_ranges: [
            {
              cidr_ipv_6: "NonEmptyString",
            },
          ],
          prefix_list_ids: [
            {
              prefix_list_id: "NonEmptyString",
            },
          ],
        },
      ],
      ip_permissions_egress: [
        {
          ip_protocol: "NonEmptyString",
          from_port: 1,
          to_port: 1,
          user_id_group_pairs: [
            {
              group_id: "NonEmptyString",
              group_name: "NonEmptyString",
              peering_status: "NonEmptyString",
              user_id: "NonEmptyString",
              vpc_id: "NonEmptyString",
              vpc_peering_connection_id: "NonEmptyString",
            },
          ],
          ip_ranges: [
            {
              cidr_ip: "NonEmptyString",
            },
          ],
          ipv_6_ranges: [
            {
              cidr_ipv_6: "NonEmptyString",
            },
          ],
          prefix_list_ids: [
            {
              prefix_list_id: "NonEmptyString",
            },
          ],
        },
      ],
    },
    aws_ec2_volume: {
      create_time: "NonEmptyString",
      encrypted: false,
      size: 1,
      snapshot_id: "NonEmptyString",
      status: "NonEmptyString",
      kms_key_id: "NonEmptyString",
      attachments: [
        {
          attach_time: "NonEmptyString",
          delete_on_termination: false,
          instance_id: "NonEmptyString",
          status: "NonEmptyString",
        },
      ],
    },
    aws_ec2_vpc: {
      cidr_block_association_set: [
        {
          association_id: "NonEmptyString",
          cidr_block: "NonEmptyString",
          cidr_block_state: "NonEmptyString",
        },
      ],
      ipv_6_cidr_block_association_set: [
        {
          association_id: "NonEmptyString",
          ipv_6_cidr_block: "NonEmptyString",
          cidr_block_state: "NonEmptyString",
        },
      ],
      dhcp_options_id: "NonEmptyString",
      state: "NonEmptyString",
    },
    aws_elbv_2_load_balancer: {
      availability_zones: [
        {
          zone_name: "NonEmptyString",
          subnet_id: "NonEmptyString",
        },
      ],
      canonical_hosted_zone_id: "NonEmptyString",
      created_time: "NonEmptyString",
      dns_name: "NonEmptyString",
      ip_address_type: "NonEmptyString",
      scheme: "NonEmptyString",
      security_groups: ["NonEmptyString"],
      state: {
        code: "NonEmptyString",
        reason: "NonEmptyString",
      },
      type: "NonEmptyString",
      vpc_id: "NonEmptyString",
    },
    aws_elasticsearch_domain: {
      access_policies: "NonEmptyString",
      domain_endpoint_options: {
        enforce_https: false,
        tls_security_policy: "NonEmptyString",
      },
      domain_id: "NonEmptyString",
      domain_name: "NonEmptyString",
      endpoint: "NonEmptyString",
      endpoints: {
        "NonEmptyString" => "NonEmptyString",
      },
      elasticsearch_version: "NonEmptyString",
      encryption_at_rest_options: {
        enabled: false,
        kms_key_id: "NonEmptyString",
      },
      node_to_node_encryption_options: {
        enabled: false,
      },
      vpc_options: {
        availability_zones: ["NonEmptyString"],
        security_group_ids: ["NonEmptyString"],
        subnet_ids: ["NonEmptyString"],
        vpc_id: "NonEmptyString",
      },
    },
    aws_s3_bucket: {
      owner_id: "NonEmptyString",
      owner_name: "NonEmptyString",
      created_at: "NonEmptyString",
      server_side_encryption_configuration: {
        rules: [
          {
            apply_server_side_encryption_by_default: {
              sse_algorithm: "NonEmptyString",
              kms_master_key_id: "NonEmptyString",
            },
          },
        ],
      },
    },
    aws_s3_object: {
      last_modified: "NonEmptyString",
      etag: "NonEmptyString",
      version_id: "NonEmptyString",
      content_type: "NonEmptyString",
      server_side_encryption: "NonEmptyString",
      ssekms_key_id: "NonEmptyString",
    },
    aws_iam_access_key: {
      user_name: "NonEmptyString",
      status: "Active", # accepts Active, Inactive
      created_at: "NonEmptyString",
      principal_id: "NonEmptyString",
      principal_type: "NonEmptyString",
      principal_name: "NonEmptyString",
    },
    aws_iam_role: {
      assume_role_policy_document: "AwsIamRoleAssumeRolePolicyDocument",
      create_date: "NonEmptyString",
      role_id: "NonEmptyString",
      role_name: "NonEmptyString",
      max_session_duration: 1,
      path: "NonEmptyString",
    },
    aws_kms_key: {
      aws_account_id: "NonEmptyString",
      creation_date: 1.0,
      key_id: "NonEmptyString",
      key_manager: "NonEmptyString",
      key_state: "NonEmptyString",
      origin: "NonEmptyString",
    },
    aws_lambda_function: {
      code: {
        s3_bucket: "NonEmptyString",
        s3_key: "NonEmptyString",
        s3_object_version: "NonEmptyString",
        zip_file: "NonEmptyString",
      },
      code_sha_256: "NonEmptyString",
      dead_letter_config: {
        target_arn: "NonEmptyString",
      },
      environment: {
        variables: {
          "NonEmptyString" => "NonEmptyString",
        },
        error: {
          error_code: "NonEmptyString",
          message: "NonEmptyString",
        },
      },
      function_name: "NonEmptyString",
      handler: "NonEmptyString",
      kms_key_arn: "NonEmptyString",
      last_modified: "NonEmptyString",
      layers: [
        {
          arn: "NonEmptyString",
          code_size: 1,
        },
      ],
      master_arn: "NonEmptyString",
      memory_size: 1,
      revision_id: "NonEmptyString",
      role: "NonEmptyString",
      runtime: "NonEmptyString",
      timeout: 1,
      tracing_config: {
        mode: "NonEmptyString",
      },
      vpc_config: {
        security_group_ids: ["NonEmptyString"],
        subnet_ids: ["NonEmptyString"],
        vpc_id: "NonEmptyString",
      },
      version: "NonEmptyString",
    },
    aws_lambda_layer_version: {
      version: 1,
      compatible_runtimes: ["NonEmptyString"],
      created_date: "NonEmptyString",
    },
    aws_rds_db_instance: {
      associated_roles: [
        {
          role_arn: "NonEmptyString",
          feature_name: "NonEmptyString",
          status: "NonEmptyString",
        },
      ],
      ca_certificate_identifier: "NonEmptyString",
      db_cluster_identifier: "NonEmptyString",
      db_instance_identifier: "NonEmptyString",
      db_instance_class: "NonEmptyString",
      db_instance_port: 1,
      dbi_resource_id: "NonEmptyString",
      db_name: "NonEmptyString",
      deletion_protection: false,
      endpoint: {
        address: "NonEmptyString",
        port: 1,
        hosted_zone_id: "NonEmptyString",
      },
      engine: "NonEmptyString",
      engine_version: "NonEmptyString",
      iam_database_authentication_enabled: false,
      instance_create_time: "NonEmptyString",
      kms_key_id: "NonEmptyString",
      publicly_accessible: false,
      storage_encrypted: false,
      tde_credential_arn: "NonEmptyString",
      vpc_security_groups: [
        {
          vpc_security_group_id: "NonEmptyString",
          status: "NonEmptyString",
        },
      ],
    },
    aws_sns_topic: {
      kms_master_key_id: "NonEmptyString",
      subscription: [
        {
          endpoint: "NonEmptyString",
          protocol: "NonEmptyString",
        },
      ],
      topic_name: "NonEmptyString",
      owner: "NonEmptyString",
    },
    aws_sqs_queue: {
      kms_data_key_reuse_period_seconds: 1,
      kms_master_key_id: "NonEmptyString",
      queue_name: "NonEmptyString",
      dead_letter_target_arn: "NonEmptyString",
    },
    aws_waf_web_acl: {
      name: "NonEmptyString",
      default_action: "NonEmptyString",
      rules: [
        {
          action: {
            type: "NonEmptyString",
          },
          excluded_rules: [
            {
              rule_id: "NonEmptyString",
            },
          ],
          override_action: {
            type: "NonEmptyString",
          },
          priority: 1,
          rule_id: "NonEmptyString",
          type: "NonEmptyString",
        },
      ],
      web_acl_id: "NonEmptyString",
    },
    container: {
      name: "NonEmptyString",
      image_id: "NonEmptyString",
      image_name: "NonEmptyString",
      launched_at: "NonEmptyString",
    },
    other: {
      "NonEmptyString" => "NonEmptyString",
    },
  },
}

A resource related to a finding.

Instance Attribute Summary collapse

Instance Attribute Details

#detailsTypes::ResourceDetails

Additional details about the resource related to a finding.

Returns:

#idString

The canonical identifier for the given resource type.

Returns:

  • (String)

    The canonical identifier for the given resource type.

#partitionString

The canonical AWS partition name that the Region is assigned to.

Possible values:

  • aws
  • aws-cn
  • aws-us-gov

Returns:

  • (String)

    The canonical AWS partition name that the Region is assigned to.

#regionString

The canonical AWS external Region name where this resource is located.

Returns:

  • (String)

    The canonical AWS external Region name where this resource is located.

#tagsHash<String,String>

A list of AWS tags associated with a resource at the time the finding was processed.

Returns:

  • (Hash<String,String>)

    A list of AWS tags associated with a resource at the time the finding was processed.

#typeString

The type of the resource that details are provided for. If possible, set Type to one of the supported resource types. For example, if the resource is an EC2 instance, then set Type to AwsEc2Instance.

If the resource does not match any of the provided types, then set Type to Other.

Returns:

  • (String)

    The type of the resource that details are provided for.