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

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-securityhub/lib/aws-sdk-securityhub/types.rb

Overview

Note:

When making an API call, you may pass Resource data as a 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.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#detailsTypes::ResourceDetails

Additional details about the resource related to a finding.



9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
# File 'gems/aws-sdk-securityhub/lib/aws-sdk-securityhub/types.rb', line 9861

class Resource < Struct.new(
  :type,
  :id,
  :partition,
  :region,
  :tags,
  :details)
  SENSITIVE = []
  include Aws::Structure
end

#idString

The canonical identifier for the given resource type.

Returns:

  • (String)


9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
# File 'gems/aws-sdk-securityhub/lib/aws-sdk-securityhub/types.rb', line 9861

class Resource < Struct.new(
  :type,
  :id,
  :partition,
  :region,
  :tags,
  :details)
  SENSITIVE = []
  include Aws::Structure
end

#partitionString

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

Returns:

  • (String)


9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
# File 'gems/aws-sdk-securityhub/lib/aws-sdk-securityhub/types.rb', line 9861

class Resource < Struct.new(
  :type,
  :id,
  :partition,
  :region,
  :tags,
  :details)
  SENSITIVE = []
  include Aws::Structure
end

#regionString

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

Returns:

  • (String)


9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
# File 'gems/aws-sdk-securityhub/lib/aws-sdk-securityhub/types.rb', line 9861

class Resource < Struct.new(
  :type,
  :id,
  :partition,
  :region,
  :tags,
  :details)
  SENSITIVE = []
  include Aws::Structure
end

#tagsHash<String,String>

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

Returns:

  • (Hash<String,String>)


9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
# File 'gems/aws-sdk-securityhub/lib/aws-sdk-securityhub/types.rb', line 9861

class Resource < Struct.new(
  :type,
  :id,
  :partition,
  :region,
  :tags,
  :details)
  SENSITIVE = []
  include Aws::Structure
end

#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)


9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
# File 'gems/aws-sdk-securityhub/lib/aws-sdk-securityhub/types.rb', line 9861

class Resource < Struct.new(
  :type,
  :id,
  :partition,
  :region,
  :tags,
  :details)
  SENSITIVE = []
  include Aws::Structure
end