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

Class: Aws::SecurityHub::Types::ResourceDetails

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

Overview

Note:

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

{
  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",
  },
}

Additional details about a resource related to a finding.

To provide the details, use the object that corresponds to the resource type. For example, if the resource type is AwsEc2Instance, then you use the AwsEc2Instance object to provide the details.

If the type-specific object does not contain all of the fields you want to populate, then you use the Other object to populate those additional fields.

You also use the Other object to populate the details when the selected type does not have a corresponding object.

Returned by:

Instance Attribute Summary collapse

Instance Attribute Details

#aws_auto_scaling_auto_scaling_groupTypes::AwsAutoScalingAutoScalingGroupDetails

Details for an autoscaling group.

Returns:

#aws_cloud_front_distributionTypes::AwsCloudFrontDistributionDetails

Details about a CloudFront distribution.

Returns:

#aws_code_build_projectTypes::AwsCodeBuildProjectDetails

Details for an AWS CodeBuild project.

Returns:

#aws_ec2_instanceTypes::AwsEc2InstanceDetails

Details about an Amazon EC2 instance related to a finding.

Returns:

#aws_ec2_network_interfaceTypes::AwsEc2NetworkInterfaceDetails

Details for an Amazon EC2 network interface.

Returns:

#aws_ec2_security_groupTypes::AwsEc2SecurityGroupDetails

Details for an EC2 security group.

Returns:

#aws_ec2_volumeTypes::AwsEc2VolumeDetails

Details for an EC2 volume.

Returns:

#aws_ec2_vpcTypes::AwsEc2VpcDetails

Details for an EC2 VPC.

Returns:

#aws_elasticsearch_domainTypes::AwsElasticsearchDomainDetails

Details for an Elasticsearch domain.

Returns:

#aws_elbv_2_load_balancerTypes::AwsElbv2LoadBalancerDetails

Details about a load balancer.

Returns:

#aws_iam_access_keyTypes::AwsIamAccessKeyDetails

Details about an IAM access key related to a finding.

Returns:

#aws_iam_roleTypes::AwsIamRoleDetails

Details about an IAM role.

Returns:

#aws_kms_keyTypes::AwsKmsKeyDetails

Details about a KMS key.

Returns:

#aws_lambda_functionTypes::AwsLambdaFunctionDetails

Details about a Lambda function.

Returns:

#aws_lambda_layer_versionTypes::AwsLambdaLayerVersionDetails

Details for a Lambda layer version.

Returns:

#aws_rds_db_instanceTypes::AwsRdsDbInstanceDetails

Details for an Amazon RDS database instance.

Returns:

#aws_s3_bucketTypes::AwsS3BucketDetails

Details about an Amazon S3 bucket related to a finding.

Returns:

#aws_s3_objectTypes::AwsS3ObjectDetails

Details about an Amazon S3 object related to a finding.

Returns:

#aws_sns_topicTypes::AwsSnsTopicDetails

Details about an SNS topic.

Returns:

#aws_sqs_queueTypes::AwsSqsQueueDetails

Details about an SQS queue.

Returns:

#aws_waf_web_aclTypes::AwsWafWebAclDetails

Details for a WAF WebACL.

Returns:

#containerTypes::ContainerDetails

Details about a container resource related to a finding.

Returns:

#otherHash<String,String>

Details about a resource that are not available in a type-specific details object. Use the Other object in the following cases.

  • The type-specific object does not contain all of the fields that you want to populate. In this case, first use the type-specific object to populate those fields. Use the Other object to populate the fields that are missing from the type-specific object.

  • The resource type does not have a corresponding object. This includes resources for which the type is Other.

Returns:

  • (Hash<String,String>)

    Details about a resource that are not available in a type-specific details object.