Class: Aws::Inspector2::Client

Inherits:
Seahorse::Client::Base show all
Includes:
ClientStubs
Defined in:
gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb

Overview

An API client for Inspector2. To construct a client, you need to configure a :region and :credentials.

client = Aws::Inspector2::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

For details on configuring region and credentials see the developer guide.

See #initialize for a full list of supported configuration options.

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

API Operations collapse

Instance Method Summary collapse

Methods included from ClientStubs

#api_requests, #stub_data, #stub_responses

Methods inherited from Seahorse::Client::Base

add_plugin, api, clear_plugins, define, new, #operation_names, plugins, remove_plugin, set_api, set_plugins

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

Constructor Details

#initialize(options) ⇒ Client

Returns a new instance of Client.

Parameters:

  • options (Hash)

Options Hash (options):

  • :plugins (Array<Seahorse::Client::Plugin>) — default: []]

    A list of plugins to apply to the client. Each plugin is either a class name or an instance of a plugin class.

  • :credentials (required, Aws::CredentialProvider)

    Your AWS credentials. This can be an instance of any one of the following classes:

    • Aws::Credentials - Used for configuring static, non-refreshing credentials.

    • Aws::SharedCredentials - Used for loading static credentials from a shared file, such as ~/.aws/config.

    • Aws::AssumeRoleCredentials - Used when you need to assume a role.

    • Aws::AssumeRoleWebIdentityCredentials - Used when you need to assume a role after providing credentials via the web.

    • Aws::SSOCredentials - Used for loading credentials from AWS SSO using an access token generated from aws login.

    • Aws::ProcessCredentials - Used for loading credentials from a process that outputs to stdout.

    • Aws::InstanceProfileCredentials - Used for loading credentials from an EC2 IMDS on an EC2 instance.

    • Aws::ECSCredentials - Used for loading credentials from instances running in ECS.

    • Aws::CognitoIdentityCredentials - Used for loading credentials from the Cognito Identity service.

    When :credentials are not configured directly, the following locations will be searched for credentials:

    • Aws.config[:credentials]
    • The :access_key_id, :secret_access_key, :session_token, and :account_id options.
    • ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'], ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID']
    • ~/.aws/credentials
    • ~/.aws/config
    • EC2/ECS IMDS instance profile - When used by default, the timeouts are very aggressive. Construct and pass an instance of Aws::InstanceProfileCredentials or Aws::ECSCredentials to enable retries and extended timeouts. Instance profile credential fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED'] to true.
  • :region (required, String)

    The AWS region to connect to. The configured :region is used to determine the service :endpoint. When not passed, a default :region is searched for in the following locations:

    • Aws.config[:region]
    • ENV['AWS_REGION']
    • ENV['AMAZON_REGION']
    • ENV['AWS_DEFAULT_REGION']
    • ~/.aws/credentials
    • ~/.aws/config
  • :access_key_id (String)
  • :account_id (String)
  • :active_endpoint_cache (Boolean) — default: false

    When set to true, a thread polling for endpoints will be running in the background every 60 secs (default). Defaults to false.

  • :adaptive_retry_wait_to_fill (Boolean) — default: true

    Used only in adaptive retry mode. When true, the request will sleep until there is sufficent client side capacity to retry the request. When false, the request will raise a RetryCapacityNotAvailableError and will not retry instead of sleeping.

  • :client_side_monitoring (Boolean) — default: false

    When true, client-side metrics will be collected for all API requests from this client.

  • :client_side_monitoring_client_id (String) — default: ""

    Allows you to provide an identifier for this client which will be attached to all generated client side metrics. Defaults to an empty string.

  • :client_side_monitoring_host (String) — default: "127.0.0.1"

    Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_port (Integer) — default: 31000

    Required for publishing client metrics. The port that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher) — default: Aws::ClientSideMonitoring::Publisher

    Allows you to provide a custom client-side monitoring publisher class. By default, will use the Client Side Monitoring Agent Publisher.

  • :convert_params (Boolean) — default: true

    When true, an attempt is made to coerce request parameters into the required types.

  • :correct_clock_skew (Boolean) — default: true

    Used only in standard and adaptive retry modes. Specifies whether to apply a clock skew correction and retry requests with skewed client clocks.

  • :defaults_mode (String) — default: "legacy"

    See DefaultsModeConfiguration for a list of the accepted modes and the configuration defaults that are included.

  • :disable_host_prefix_injection (Boolean) — default: false

    Set to true to disable SDK automatically adding host prefix to default service endpoint when available.

  • :disable_request_compression (Boolean) — default: false

    When set to 'true' the request body will not be compressed for supported operations.

  • :endpoint (String, URI::HTTPS, URI::HTTP)

    Normally you should not configure the :endpoint option directly. This is normally constructed from the :region option. Configuring :endpoint is normally reserved for connecting to test or custom endpoints. The endpoint should be a URI formatted like:

    'http://example.com'
    'https://example.com'
    'http://example.com:123'
    
  • :endpoint_cache_max_entries (Integer) — default: 1000

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000.

  • :endpoint_cache_max_threads (Integer) — default: 10

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.

  • :endpoint_cache_poll_interval (Integer) — default: 60

    When :endpoint_discovery and :active_endpoint_cache is enabled, Use this option to config the time interval in seconds for making requests fetching endpoints information. Defaults to 60 sec.

  • :endpoint_discovery (Boolean) — default: false

    When set to true, endpoint discovery will be enabled for operations when available.

  • :ignore_configured_endpoint_urls (Boolean)

    Setting to true disables use of endpoint URLs provided via environment variables and the shared configuration file.

  • :log_formatter (Aws::Log::Formatter) — default: Aws::Log::Formatter.default

    The log formatter.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the :logger at.

  • :logger (Logger)

    The Logger instance to send log messages to. If this option is not set, logging will be disabled.

  • :max_attempts (Integer) — default: 3

    An integer representing the maximum number attempts that will be made for a single request, including the initial attempt. For example, setting this value to 5 will result in a request being retried up to 4 times. Used in standard and adaptive retry modes.

  • :profile (String) — default: "default"

    Used when loading credentials from the shared credentials file at HOME/.aws/credentials. When not specified, 'default' is used.

  • :request_min_compression_size_bytes (Integer) — default: 10240

    The minimum size in bytes that triggers compression for request bodies. The value must be non-negative integer value between 0 and 10485780 bytes inclusive.

  • :retry_backoff (Proc)

    A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay. This option is only used in the legacy retry mode.

  • :retry_base_delay (Float) — default: 0.3

    The base delay in seconds used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_jitter (Symbol) — default: :none

    A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number. This option is only used in the legacy retry mode.

    @see https://www.awsarchitectureblog.com/2015/03/backoff.html

  • :retry_limit (Integer) — default: 3

    The maximum number of times to retry failed requests. Only ~ 500 level server errors and certain ~ 400 level client errors are retried. Generally, these are throttling errors, data checksum errors, networking errors, timeout errors, auth errors, endpoint discovery, and errors from expired credentials. This option is only used in the legacy retry mode.

  • :retry_max_delay (Integer) — default: 0

    The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_mode (String) — default: "legacy"

    Specifies which retry algorithm to use. Values are:

    • legacy - The pre-existing retry behavior. This is default value if no retry mode is provided.

    • standard - A standardized set of retry rules across the AWS SDKs. This includes support for retry quotas, which limit the number of unsuccessful retries a client can make.

    • adaptive - An experimental retry mode that includes all the functionality of standard mode along with automatic client side throttling. This is a provisional mode that may change behavior in the future.

  • :sdk_ua_app_id (String)

    A unique and opaque application ID that is appended to the User-Agent header as app/sdk_ua_app_id. It should have a maximum length of 50. This variable is sourced from environment variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.

  • :secret_access_key (String)
  • :session_token (String)
  • :sigv4a_signing_region_set (Array)

    A list of regions that should be signed with SigV4a signing. When not passed, a default :sigv4a_signing_region_set is searched for in the following locations:

    • Aws.config[:sigv4a_signing_region_set]
    • ENV['AWS_SIGV4A_SIGNING_REGION_SET']
    • ~/.aws/config
  • :stub_responses (Boolean) — default: false

    Causes the client to return stubbed responses. By default fake responses are generated and returned. You can specify the response data to return or errors to raise by calling ClientStubs#stub_responses. See ClientStubs for more information.

    Please note When response stubbing is enabled, no HTTP requests are made, and retries are disabled.

  • :telemetry_provider (Aws::Telemetry::TelemetryProviderBase) — default: Aws::Telemetry::NoOpTelemetryProvider

    Allows you to provide a telemetry provider, which is used to emit telemetry data. By default, uses NoOpTelemetryProvider which will not record or emit any telemetry data. The SDK supports the following telemetry providers:

    • OpenTelemetry (OTel) - To use the OTel provider, install and require the opentelemetry-sdk gem and then, pass in an instance of a Aws::Telemetry::OTelProvider for telemetry provider.
  • :token_provider (Aws::TokenProvider)

    A Bearer Token Provider. This can be an instance of any one of the following classes:

    • Aws::StaticTokenProvider - Used for configuring static, non-refreshing tokens.

    • Aws::SSOTokenProvider - Used for loading tokens from AWS SSO using an access token generated from aws login.

    When :token_provider is not configured directly, the Aws::TokenProviderChain will be used to search for tokens configured for your profile in shared configuration files.

  • :use_dualstack_endpoint (Boolean)

    When set to true, dualstack enabled endpoints (with .aws TLD) will be used if available.

  • :use_fips_endpoint (Boolean)

    When set to true, fips compatible endpoints will be used if available. When a fips region is used, the region is normalized and this config is set to true.

  • :validate_params (Boolean) — default: true

    When true, request parameters are validated before sending the request.

  • :endpoint_provider (Aws::Inspector2::EndpointProvider)

    The endpoint provider used to resolve endpoints. Any object that responds to #resolve_endpoint(parameters) where parameters is a Struct similar to Aws::Inspector2::EndpointParameters.

  • :http_continue_timeout (Float) — default: 1

    The number of seconds to wait for a 100-continue response before sending the request body. This option has no effect unless the request has "Expect" header set to "100-continue". Defaults to nil which disables this behaviour. This value can safely be set per request on the session.

  • :http_idle_timeout (Float) — default: 5

    The number of seconds a connection is allowed to sit idle before it is considered stale. Stale connections are closed and removed from the pool before making a request.

  • :http_open_timeout (Float) — default: 15

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_proxy (URI::HTTP, String)

    A proxy to send requests through. Formatted like 'http://proxy.com:123'.

  • :http_read_timeout (Float) — default: 60

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_wire_trace (Boolean) — default: false

    When true, HTTP debug output will be sent to the :logger.

  • :on_chunk_received (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the response body is received. It provides three arguments: the chunk, the number of bytes received, and the total number of bytes in the response (or nil if the server did not send a content-length).

  • :on_chunk_sent (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the request body is sent. It provides three arguments: the chunk, the number of bytes read from the body, and the total number of bytes in the body.

  • :raise_response_errors (Boolean) — default: true

    When true, response errors are raised.

  • :ssl_ca_bundle (String)

    Full path to the SSL certificate authority bundle file that should be used when verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.

  • :ssl_ca_directory (String)

    Full path of the directory that contains the unbundled SSL certificate authority files for verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.

  • :ssl_ca_store (String)

    Sets the X509::Store to verify peer certificate.

  • :ssl_cert (OpenSSL::X509::Certificate)

    Sets a client certificate when creating http connections.

  • :ssl_key (OpenSSL::PKey)

    Sets a client key when creating http connections.

  • :ssl_timeout (Float)

    Sets the SSL timeout in seconds

  • :ssl_verify_peer (Boolean) — default: true

    When true, SSL peer certificates are verified when establishing a connection.



444
445
446
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 444

def initialize(*args)
  super
end

Instance Method Details

#associate_member(params = {}) ⇒ Types::AssociateMemberResponse

Associates an Amazon Web Services account with an Amazon Inspector delegated administrator. An HTTP 200 response indicates the association was started but doesn’t indicate whether it completed. You can check if the association completed using ListMembers for multiple accounts or GetMembers for a single account. An HTTP 402 response indicates the association failed because the organization size exceeded its limit. For information on limits, see Amazon Inspector quotas.

Examples:

Request syntax with placeholder values


resp = client.associate_member({
  account_id: "AccountId", # required
})

Response structure


resp. #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :account_id (required, String)

    The Amazon Web Services account ID of the member account to be associated.

Returns:

See Also:



487
488
489
490
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 487

def associate_member(params = {}, options = {})
  req = build_request(:associate_member, params)
  req.send_request(options)
end

#batch_get_account_status(params = {}) ⇒ Types::BatchGetAccountStatusResponse

Retrieves the Amazon Inspector status of multiple Amazon Web Services accounts within your environment.

Examples:

Request syntax with placeholder values


resp = client.({
  account_ids: ["AccountId"],
})

Response structure


resp.accounts #=> Array
resp.accounts[0]. #=> String
resp.accounts[0].resource_state.ec2.error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS", "ACCOUNT_IS_ISOLATED", "EC2_SSM_RESOURCE_DATA_SYNC_LIMIT_EXCEEDED", "EC2_SSM_ASSOCIATION_VERSION_LIMIT_EXCEEDED"
resp.accounts[0].resource_state.ec2.error_message #=> String
resp.accounts[0].resource_state.ec2.status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.accounts[0].resource_state.ecr.error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS", "ACCOUNT_IS_ISOLATED", "EC2_SSM_RESOURCE_DATA_SYNC_LIMIT_EXCEEDED", "EC2_SSM_ASSOCIATION_VERSION_LIMIT_EXCEEDED"
resp.accounts[0].resource_state.ecr.error_message #=> String
resp.accounts[0].resource_state.ecr.status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.accounts[0].resource_state.lambda.error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS", "ACCOUNT_IS_ISOLATED", "EC2_SSM_RESOURCE_DATA_SYNC_LIMIT_EXCEEDED", "EC2_SSM_ASSOCIATION_VERSION_LIMIT_EXCEEDED"
resp.accounts[0].resource_state.lambda.error_message #=> String
resp.accounts[0].resource_state.lambda.status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.accounts[0].resource_state.lambda_code.error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS", "ACCOUNT_IS_ISOLATED", "EC2_SSM_RESOURCE_DATA_SYNC_LIMIT_EXCEEDED", "EC2_SSM_ASSOCIATION_VERSION_LIMIT_EXCEEDED"
resp.accounts[0].resource_state.lambda_code.error_message #=> String
resp.accounts[0].resource_state.lambda_code.status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.accounts[0].state.error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS", "ACCOUNT_IS_ISOLATED", "EC2_SSM_RESOURCE_DATA_SYNC_LIMIT_EXCEEDED", "EC2_SSM_ASSOCIATION_VERSION_LIMIT_EXCEEDED"
resp.accounts[0].state.error_message #=> String
resp.accounts[0].state.status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.failed_accounts #=> Array
resp.failed_accounts[0]. #=> String
resp.failed_accounts[0].error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS", "ACCOUNT_IS_ISOLATED", "EC2_SSM_RESOURCE_DATA_SYNC_LIMIT_EXCEEDED", "EC2_SSM_ASSOCIATION_VERSION_LIMIT_EXCEEDED"
resp.failed_accounts[0].error_message #=> String
resp.failed_accounts[0].resource_status.ec2 #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.failed_accounts[0].resource_status.ecr #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.failed_accounts[0].resource_status.lambda #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.failed_accounts[0].resource_status.lambda_code #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.failed_accounts[0].status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :account_ids (Array<String>)

    The 12-digit Amazon Web Services account IDs of the accounts to retrieve Amazon Inspector status for.

Returns:

See Also:



543
544
545
546
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 543

def (params = {}, options = {})
  req = build_request(:batch_get_account_status, params)
  req.send_request(options)
end

#batch_get_code_snippet(params = {}) ⇒ Types::BatchGetCodeSnippetResponse

Retrieves code snippets from findings that Amazon Inspector detected code vulnerabilities in.

Examples:

Request syntax with placeholder values


resp = client.batch_get_code_snippet({
  finding_arns: ["FindingArn"], # required
})

Response structure


resp.code_snippet_results #=> Array
resp.code_snippet_results[0].code_snippet #=> Array
resp.code_snippet_results[0].code_snippet[0].content #=> String
resp.code_snippet_results[0].code_snippet[0].line_number #=> Integer
resp.code_snippet_results[0].end_line #=> Integer
resp.code_snippet_results[0].finding_arn #=> String
resp.code_snippet_results[0].start_line #=> Integer
resp.code_snippet_results[0].suggested_fixes #=> Array
resp.code_snippet_results[0].suggested_fixes[0].code #=> String
resp.code_snippet_results[0].suggested_fixes[0].description #=> String
resp.errors #=> Array
resp.errors[0].error_code #=> String, one of "INTERNAL_ERROR", "ACCESS_DENIED", "CODE_SNIPPET_NOT_FOUND", "INVALID_INPUT"
resp.errors[0].error_message #=> String
resp.errors[0].finding_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :finding_arns (required, Array<String>)

    An array of finding ARNs for the findings you want to retrieve code snippets from.

Returns:

See Also:



587
588
589
590
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 587

def batch_get_code_snippet(params = {}, options = {})
  req = build_request(:batch_get_code_snippet, params)
  req.send_request(options)
end

#batch_get_finding_details(params = {}) ⇒ Types::BatchGetFindingDetailsResponse

Gets vulnerability details for findings.

Examples:

Request syntax with placeholder values


resp = client.batch_get_finding_details({
  finding_arns: ["FindingArn"], # required
})

Response structure


resp.errors #=> Array
resp.errors[0].error_code #=> String, one of "INTERNAL_ERROR", "ACCESS_DENIED", "FINDING_DETAILS_NOT_FOUND", "INVALID_INPUT"
resp.errors[0].error_message #=> String
resp.errors[0].finding_arn #=> String
resp.finding_details #=> Array
resp.finding_details[0].cisa_data.action #=> String
resp.finding_details[0].cisa_data.date_added #=> Time
resp.finding_details[0].cisa_data.date_due #=> Time
resp.finding_details[0].cwes #=> Array
resp.finding_details[0].cwes[0] #=> String
resp.finding_details[0].epss_score #=> Float
resp.finding_details[0].evidences #=> Array
resp.finding_details[0].evidences[0].evidence_detail #=> String
resp.finding_details[0].evidences[0].evidence_rule #=> String
resp.finding_details[0].evidences[0].severity #=> String
resp.finding_details[0].exploit_observed.first_seen #=> Time
resp.finding_details[0].exploit_observed.last_seen #=> Time
resp.finding_details[0].finding_arn #=> String
resp.finding_details[0].reference_urls #=> Array
resp.finding_details[0].reference_urls[0] #=> String
resp.finding_details[0].risk_score #=> Integer
resp.finding_details[0].tools #=> Array
resp.finding_details[0].tools[0] #=> String
resp.finding_details[0].ttps #=> Array
resp.finding_details[0].ttps[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :finding_arns (required, Array<String>)

    A list of finding ARNs.

Returns:

See Also:



640
641
642
643
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 640

def batch_get_finding_details(params = {}, options = {})
  req = build_request(:batch_get_finding_details, params)
  req.send_request(options)
end

#batch_get_free_trial_info(params = {}) ⇒ Types::BatchGetFreeTrialInfoResponse

Gets free trial status for multiple Amazon Web Services accounts.

Examples:

Request syntax with placeholder values


resp = client.batch_get_free_trial_info({
  account_ids: ["MeteringAccountId"], # required
})

Response structure


resp.accounts #=> Array
resp.accounts[0]. #=> String
resp.accounts[0].free_trial_info #=> Array
resp.accounts[0].free_trial_info[0].end #=> Time
resp.accounts[0].free_trial_info[0].start #=> Time
resp.accounts[0].free_trial_info[0].status #=> String, one of "ACTIVE", "INACTIVE"
resp.accounts[0].free_trial_info[0].type #=> String, one of "EC2", "ECR", "LAMBDA", "LAMBDA_CODE"
resp.failed_accounts #=> Array
resp.failed_accounts[0]. #=> String
resp.failed_accounts[0].code #=> String, one of "ACCESS_DENIED", "INTERNAL_ERROR"
resp.failed_accounts[0].message #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :account_ids (required, Array<String>)

    The account IDs to get free trial status for.

Returns:

See Also:



679
680
681
682
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 679

def batch_get_free_trial_info(params = {}, options = {})
  req = build_request(:batch_get_free_trial_info, params)
  req.send_request(options)
end

#batch_get_member_ec2_deep_inspection_status(params = {}) ⇒ Types::BatchGetMemberEc2DeepInspectionStatusResponse

Retrieves Amazon Inspector deep inspection activation status of multiple member accounts within your organization. You must be the delegated administrator of an organization in Amazon Inspector to use this API.

Examples:

Request syntax with placeholder values


resp = client.batch_get_member_ec2_deep_inspection_status({
  account_ids: ["AccountId"],
})

Response structure


resp. #=> Array
resp.[0]. #=> String
resp.[0].error_message #=> String
resp.[0].status #=> String, one of "ACTIVATED", "DEACTIVATED", "PENDING", "FAILED"
resp. #=> Array
resp.[0]. #=> String
resp.[0].ec2_scan_status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.[0].error_message #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :account_ids (Array<String>)

    The unique identifiers for the Amazon Web Services accounts to retrieve Amazon Inspector deep inspection activation status for.

Returns:

See Also:



720
721
722
723
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 720

def batch_get_member_ec2_deep_inspection_status(params = {}, options = {})
  req = build_request(:batch_get_member_ec2_deep_inspection_status, params)
  req.send_request(options)
end

#batch_update_member_ec2_deep_inspection_status(params = {}) ⇒ Types::BatchUpdateMemberEc2DeepInspectionStatusResponse

Activates or deactivates Amazon Inspector deep inspection for the provided member accounts in your organization. You must be the delegated administrator of an organization in Amazon Inspector to use this API.

Examples:

Request syntax with placeholder values


resp = client.batch_update_member_ec2_deep_inspection_status({
  account_ids: [ # required
    {
      account_id: "AccountId", # required
      activate_deep_inspection: false, # required
    },
  ],
})

Response structure


resp. #=> Array
resp.[0]. #=> String
resp.[0].error_message #=> String
resp.[0].status #=> String, one of "ACTIVATED", "DEACTIVATED", "PENDING", "FAILED"
resp. #=> Array
resp.[0]. #=> String
resp.[0].ec2_scan_status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.[0].error_message #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

Returns:

See Also:



765
766
767
768
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 765

def batch_update_member_ec2_deep_inspection_status(params = {}, options = {})
  req = build_request(:batch_update_member_ec2_deep_inspection_status, params)
  req.send_request(options)
end

#cancel_findings_report(params = {}) ⇒ Types::CancelFindingsReportResponse

Cancels the given findings report.

Examples:

Request syntax with placeholder values


resp = client.cancel_findings_report({
  report_id: "ReportId", # required
})

Response structure


resp.report_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :report_id (required, String)

    The ID of the report to be canceled.

Returns:

See Also:



793
794
795
796
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 793

def cancel_findings_report(params = {}, options = {})
  req = build_request(:cancel_findings_report, params)
  req.send_request(options)
end

#cancel_sbom_export(params = {}) ⇒ Types::CancelSbomExportResponse

Cancels a software bill of materials (SBOM) report.

Examples:

Request syntax with placeholder values


resp = client.cancel_sbom_export({
  report_id: "ReportId", # required
})

Response structure


resp.report_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :report_id (required, String)

    The report ID of the SBOM export to cancel.

Returns:

See Also:



821
822
823
824
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 821

def cancel_sbom_export(params = {}, options = {})
  req = build_request(:cancel_sbom_export, params)
  req.send_request(options)
end

#create_cis_scan_configuration(params = {}) ⇒ Types::CreateCisScanConfigurationResponse

Creates a CIS scan configuration.

Examples:

Request syntax with placeholder values


resp = client.create_cis_scan_configuration({
  scan_name: "CisScanName", # required
  schedule: { # required
    daily: {
      start_time: { # required
        time_of_day: "TimeOfDay", # required
        timezone: "Timezone", # required
      },
    },
    monthly: {
      day: "SUN", # required, accepts SUN, MON, TUE, WED, THU, FRI, SAT
      start_time: { # required
        time_of_day: "TimeOfDay", # required
        timezone: "Timezone", # required
      },
    },
    one_time: {
    },
    weekly: {
      days: ["SUN"], # required, accepts SUN, MON, TUE, WED, THU, FRI, SAT
      start_time: { # required
        time_of_day: "TimeOfDay", # required
        timezone: "Timezone", # required
      },
    },
  },
  security_level: "LEVEL_1", # required, accepts LEVEL_1, LEVEL_2
  tags: {
    "MapKey" => "MapValue",
  },
  targets: { # required
    account_ids: ["TargetAccount"], # required
    target_resource_tags: { # required
      "TargetResourceTagsKey" => ["TargetResourceTagsValue"],
    },
  },
})

Response structure


resp.scan_configuration_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :scan_name (required, String)

    The scan name for the CIS scan configuration.

  • :schedule (required, Types::Schedule)

    The schedule for the CIS scan configuration.

  • :security_level (required, String)

    The security level for the CIS scan configuration. Security level refers to the Benchmark levels that CIS assigns to a profile.

  • :tags (Hash<String,String>)

    The tags for the CIS scan configuration.

  • :targets (required, Types::CreateCisTargets)

    The targets for the CIS scan configuration.

Returns:

See Also:



896
897
898
899
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 896

def create_cis_scan_configuration(params = {}, options = {})
  req = build_request(:create_cis_scan_configuration, params)
  req.send_request(options)
end

#create_filter(params = {}) ⇒ Types::CreateFilterResponse

Creates a filter resource using specified filter criteria. When the filter action is set to SUPPRESS this action creates a suppression rule.

Examples:

Request syntax with placeholder values


resp = client.create_filter({
  action: "NONE", # required, accepts NONE, SUPPRESS
  description: "FilterDescription",
  filter_criteria: { # required
    aws_account_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    code_vulnerability_detector_name: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    code_vulnerability_detector_tags: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    code_vulnerability_file_path: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    component_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    component_type: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ec2_instance_image_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ec2_instance_subnet_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ec2_instance_vpc_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ecr_image_architecture: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ecr_image_hash: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ecr_image_pushed_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    ecr_image_registry: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ecr_image_repository_name: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ecr_image_tags: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    epss_score: [
      {
        lower_inclusive: 1.0,
        upper_inclusive: 1.0,
      },
    ],
    exploit_available: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    finding_arn: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    finding_status: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    finding_type: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    first_observed_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    fix_available: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    inspector_score: [
      {
        lower_inclusive: 1.0,
        upper_inclusive: 1.0,
      },
    ],
    lambda_function_execution_role_arn: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    lambda_function_last_modified_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    lambda_function_layers: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    lambda_function_name: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    lambda_function_runtime: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    last_observed_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    network_protocol: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    port_range: [
      {
        begin_inclusive: 1,
        end_inclusive: 1,
      },
    ],
    related_vulnerabilities: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    resource_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    resource_tags: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        key: "MapKey", # required
        value: "MapValue",
      },
    ],
    resource_type: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    severity: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    title: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    updated_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    vendor_severity: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    vulnerability_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    vulnerability_source: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    vulnerable_packages: [
      {
        architecture: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
        epoch: {
          lower_inclusive: 1.0,
          upper_inclusive: 1.0,
        },
        file_path: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
        name: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
        release: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
        source_lambda_layer_arn: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
        source_layer_hash: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
        version: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      },
    ],
  },
  name: "FilterName", # required
  reason: "FilterReason",
  tags: {
    "MapKey" => "MapValue",
  },
})

Response structure


resp.arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :action (required, String)

    Defines the action that is to be applied to the findings that match the filter.

  • :description (String)

    A description of the filter.

  • :filter_criteria (required, Types::FilterCriteria)

    Defines the criteria to be used in the filter for querying findings.

  • :name (required, String)

    The name of the filter. Minimum length of 3. Maximum length of 64. Valid characters include alphanumeric characters, dot (.), underscore (_), and dash (-). Spaces are not allowed.

  • :reason (String)

    The reason for creating the filter.

  • :tags (Hash<String,String>)

    A list of tags for the filter.

Returns:

See Also:



1235
1236
1237
1238
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 1235

def create_filter(params = {}, options = {})
  req = build_request(:create_filter, params)
  req.send_request(options)
end

#create_findings_report(params = {}) ⇒ Types::CreateFindingsReportResponse

Creates a finding report. By default only ACTIVE findings are returned in the report. To see SUPRESSED or CLOSED findings you must specify a value for the findingStatus filter criteria.

Examples:

Request syntax with placeholder values


resp = client.create_findings_report({
  filter_criteria: {
    aws_account_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    code_vulnerability_detector_name: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    code_vulnerability_detector_tags: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    code_vulnerability_file_path: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    component_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    component_type: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ec2_instance_image_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ec2_instance_subnet_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ec2_instance_vpc_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ecr_image_architecture: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ecr_image_hash: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ecr_image_pushed_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    ecr_image_registry: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ecr_image_repository_name: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ecr_image_tags: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    epss_score: [
      {
        lower_inclusive: 1.0,
        upper_inclusive: 1.0,
      },
    ],
    exploit_available: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    finding_arn: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    finding_status: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    finding_type: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    first_observed_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    fix_available: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    inspector_score: [
      {
        lower_inclusive: 1.0,
        upper_inclusive: 1.0,
      },
    ],
    lambda_function_execution_role_arn: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    lambda_function_last_modified_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    lambda_function_layers: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    lambda_function_name: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    lambda_function_runtime: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    last_observed_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    network_protocol: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    port_range: [
      {
        begin_inclusive: 1,
        end_inclusive: 1,
      },
    ],
    related_vulnerabilities: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    resource_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    resource_tags: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        key: "MapKey", # required
        value: "MapValue",
      },
    ],
    resource_type: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    severity: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    title: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    updated_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    vendor_severity: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    vulnerability_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    vulnerability_source: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    vulnerable_packages: [
      {
        architecture: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
        epoch: {
          lower_inclusive: 1.0,
          upper_inclusive: 1.0,
        },
        file_path: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
        name: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
        release: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
        source_lambda_layer_arn: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
        source_layer_hash: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
        version: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      },
    ],
  },
  report_format: "CSV", # required, accepts CSV, JSON
  s3_destination: { # required
    bucket_name: "String", # required
    key_prefix: "String",
    kms_key_arn: "String", # required
  },
})

Response structure


resp.report_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filter_criteria (Types::FilterCriteria)

    The filter criteria to apply to the results of the finding report.

  • :report_format (required, String)

    The format to generate the report in.

  • :s3_destination (required, Types::Destination)

    The Amazon S3 export destination for the report.

Returns:

See Also:



1561
1562
1563
1564
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 1561

def create_findings_report(params = {}, options = {})
  req = build_request(:create_findings_report, params)
  req.send_request(options)
end

#create_sbom_export(params = {}) ⇒ Types::CreateSbomExportResponse

Creates a software bill of materials (SBOM) report.

Examples:

Request syntax with placeholder values


resp = client.create_sbom_export({
  report_format: "CYCLONEDX_1_4", # required, accepts CYCLONEDX_1_4, SPDX_2_3
  resource_filter_criteria: {
    account_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "ResourceStringInput", # required
      },
    ],
    ec2_instance_tags: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        key: "NonEmptyString", # required
        value: "NonEmptyString",
      },
    ],
    ecr_image_tags: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "ResourceStringInput", # required
      },
    ],
    ecr_repository_name: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "ResourceStringInput", # required
      },
    ],
    lambda_function_name: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "ResourceStringInput", # required
      },
    ],
    lambda_function_tags: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        key: "NonEmptyString", # required
        value: "NonEmptyString",
      },
    ],
    resource_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "ResourceStringInput", # required
      },
    ],
    resource_type: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "ResourceStringInput", # required
      },
    ],
  },
  s3_destination: { # required
    bucket_name: "String", # required
    key_prefix: "String",
    kms_key_arn: "String", # required
  },
})

Response structure


resp.report_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :report_format (required, String)

    The output format for the software bill of materials (SBOM) report.

  • :resource_filter_criteria (Types::ResourceFilterCriteria)

    The resource filter criteria for the software bill of materials (SBOM) report.

  • :s3_destination (required, Types::Destination)

    Contains details of the Amazon S3 bucket and KMS key used to export findings.

Returns:

See Also:



1654
1655
1656
1657
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 1654

def create_sbom_export(params = {}, options = {})
  req = build_request(:create_sbom_export, params)
  req.send_request(options)
end

#delete_cis_scan_configuration(params = {}) ⇒ Types::DeleteCisScanConfigurationResponse

Deletes a CIS scan configuration.

Examples:

Request syntax with placeholder values


resp = client.delete_cis_scan_configuration({
  scan_configuration_arn: "CisScanConfigurationArn", # required
})

Response structure


resp.scan_configuration_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :scan_configuration_arn (required, String)

    The ARN of the CIS scan configuration.

Returns:

See Also:



1682
1683
1684
1685
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 1682

def delete_cis_scan_configuration(params = {}, options = {})
  req = build_request(:delete_cis_scan_configuration, params)
  req.send_request(options)
end

#delete_filter(params = {}) ⇒ Types::DeleteFilterResponse

Deletes a filter resource.

Examples:

Request syntax with placeholder values


resp = client.delete_filter({
  arn: "FilterArn", # required
})

Response structure


resp.arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :arn (required, String)

    The Amazon Resource Number (ARN) of the filter to be deleted.

Returns:

See Also:



1710
1711
1712
1713
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 1710

def delete_filter(params = {}, options = {})
  req = build_request(:delete_filter, params)
  req.send_request(options)
end

#describe_organization_configuration(params = {}) ⇒ Types::DescribeOrganizationConfigurationResponse

Describe Amazon Inspector configuration settings for an Amazon Web Services organization.

Examples:

Response structure


resp.auto_enable.ec2 #=> Boolean
resp.auto_enable.ecr #=> Boolean
resp.auto_enable.lambda #=> Boolean
resp.auto_enable.lambda_code #=> Boolean
resp. #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Returns:

See Also:



1735
1736
1737
1738
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 1735

def describe_organization_configuration(params = {}, options = {})
  req = build_request(:describe_organization_configuration, params)
  req.send_request(options)
end

#disable(params = {}) ⇒ Types::DisableResponse

Disables Amazon Inspector scans for one or more Amazon Web Services accounts. Disabling all scan types in an account disables the Amazon Inspector service.

Examples:

Request syntax with placeholder values


resp = client.disable({
  account_ids: ["AccountId"],
  resource_types: ["EC2"], # accepts EC2, ECR, LAMBDA, LAMBDA_CODE
})

Response structure


resp.accounts #=> Array
resp.accounts[0]. #=> String
resp.accounts[0].resource_status.ec2 #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.accounts[0].resource_status.ecr #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.accounts[0].resource_status.lambda #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.accounts[0].resource_status.lambda_code #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.accounts[0].status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.failed_accounts #=> Array
resp.failed_accounts[0]. #=> String
resp.failed_accounts[0].error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS", "ACCOUNT_IS_ISOLATED", "EC2_SSM_RESOURCE_DATA_SYNC_LIMIT_EXCEEDED", "EC2_SSM_ASSOCIATION_VERSION_LIMIT_EXCEEDED"
resp.failed_accounts[0].error_message #=> String
resp.failed_accounts[0].resource_status.ec2 #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.failed_accounts[0].resource_status.ecr #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.failed_accounts[0].resource_status.lambda #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.failed_accounts[0].resource_status.lambda_code #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.failed_accounts[0].status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :account_ids (Array<String>)

    An array of account IDs you want to disable Amazon Inspector scans for.

  • :resource_types (Array<String>)

    The resource scan types you want to disable.

Returns:

See Also:



1786
1787
1788
1789
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 1786

def disable(params = {}, options = {})
  req = build_request(:disable, params)
  req.send_request(options)
end

#disable_delegated_admin_account(params = {}) ⇒ Types::DisableDelegatedAdminAccountResponse

Disables the Amazon Inspector delegated administrator for your organization.

Examples:

Request syntax with placeholder values


resp = client.({
  delegated_admin_account_id: "AccountId", # required
})

Response structure


resp. #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :delegated_admin_account_id (required, String)

    The Amazon Web Services account ID of the current Amazon Inspector delegated administrator.

Returns:

See Also:



1816
1817
1818
1819
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 1816

def (params = {}, options = {})
  req = build_request(:disable_delegated_admin_account, params)
  req.send_request(options)
end

#disassociate_member(params = {}) ⇒ Types::DisassociateMemberResponse

Disassociates a member account from an Amazon Inspector delegated administrator.

Examples:

Request syntax with placeholder values


resp = client.disassociate_member({
  account_id: "AccountId", # required
})

Response structure


resp. #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :account_id (required, String)

    The Amazon Web Services account ID of the member account to disassociate.

Returns:

See Also:



1846
1847
1848
1849
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 1846

def disassociate_member(params = {}, options = {})
  req = build_request(:disassociate_member, params)
  req.send_request(options)
end

#enable(params = {}) ⇒ Types::EnableResponse

Enables Amazon Inspector scans for one or more Amazon Web Services accounts.

Examples:

Request syntax with placeholder values


resp = client.enable({
  account_ids: ["AccountId"],
  client_token: "ClientToken",
  resource_types: ["EC2"], # required, accepts EC2, ECR, LAMBDA, LAMBDA_CODE
})

Response structure


resp.accounts #=> Array
resp.accounts[0]. #=> String
resp.accounts[0].resource_status.ec2 #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.accounts[0].resource_status.ecr #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.accounts[0].resource_status.lambda #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.accounts[0].resource_status.lambda_code #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.accounts[0].status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.failed_accounts #=> Array
resp.failed_accounts[0]. #=> String
resp.failed_accounts[0].error_code #=> String, one of "ALREADY_ENABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS", "SUSPEND_IN_PROGRESS", "RESOURCE_NOT_FOUND", "ACCESS_DENIED", "INTERNAL_ERROR", "SSM_UNAVAILABLE", "SSM_THROTTLED", "EVENTBRIDGE_UNAVAILABLE", "EVENTBRIDGE_THROTTLED", "RESOURCE_SCAN_NOT_DISABLED", "DISASSOCIATE_ALL_MEMBERS", "ACCOUNT_IS_ISOLATED", "EC2_SSM_RESOURCE_DATA_SYNC_LIMIT_EXCEEDED", "EC2_SSM_ASSOCIATION_VERSION_LIMIT_EXCEEDED"
resp.failed_accounts[0].error_message #=> String
resp.failed_accounts[0].resource_status.ec2 #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.failed_accounts[0].resource_status.ecr #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.failed_accounts[0].resource_status.lambda #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.failed_accounts[0].resource_status.lambda_code #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"
resp.failed_accounts[0].status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :account_ids (Array<String>)

    A list of account IDs you want to enable Amazon Inspector scans for.

  • :client_token (String)

    The idempotency token for the request.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

  • :resource_types (required, Array<String>)

    The resource scan types you want to enable.

Returns:

See Also:



1902
1903
1904
1905
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 1902

def enable(params = {}, options = {})
  req = build_request(:enable, params)
  req.send_request(options)
end

#enable_delegated_admin_account(params = {}) ⇒ Types::EnableDelegatedAdminAccountResponse

Enables the Amazon Inspector delegated administrator for your Organizations organization.

Examples:

Request syntax with placeholder values


resp = client.({
  client_token: "ClientToken",
  delegated_admin_account_id: "AccountId", # required
})

Response structure


resp. #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    The idempotency token for the request.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

  • :delegated_admin_account_id (required, String)

    The Amazon Web Services account ID of the Amazon Inspector delegated administrator.

Returns:

See Also:



1939
1940
1941
1942
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 1939

def (params = {}, options = {})
  req = build_request(:enable_delegated_admin_account, params)
  req.send_request(options)
end

#get_cis_scan_report(params = {}) ⇒ Types::GetCisScanReportResponse

Retrieves a CIS scan report.

Examples:

Request syntax with placeholder values


resp = client.get_cis_scan_report({
  report_format: "PDF", # accepts PDF, CSV
  scan_arn: "CisScanArn", # required
  target_accounts: ["AccountId"],
})

Response structure


resp.status #=> String, one of "SUCCEEDED", "FAILED", "IN_PROGRESS"
resp.url #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :report_format (String)

    The format of the report. Valid values are PDF and CSV. If no value is specified, the report format defaults to PDF.

  • :scan_arn (required, String)

    The scan ARN.

  • :target_accounts (Array<String>)

    The target accounts.

Returns:

See Also:



1978
1979
1980
1981
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 1978

def get_cis_scan_report(params = {}, options = {})
  req = build_request(:get_cis_scan_report, params)
  req.send_request(options)
end

#get_cis_scan_result_details(params = {}) ⇒ Types::GetCisScanResultDetailsResponse

Retrieves CIS scan result details.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.get_cis_scan_result_details({
  account_id: "AccountId", # required
  filter_criteria: {
    check_id_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
    finding_arn_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
    finding_status_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        value: "PASSED", # required, accepts PASSED, FAILED, SKIPPED
      },
    ],
    security_level_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        value: "LEVEL_1", # required, accepts LEVEL_1, LEVEL_2
      },
    ],
    title_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
  },
  max_results: 1,
  next_token: "NextToken",
  scan_arn: "CisScanArn", # required
  sort_by: "CHECK_ID", # accepts CHECK_ID, STATUS
  sort_order: "ASC", # accepts ASC, DESC
  target_resource_id: "ResourceId", # required
})

Response structure


resp.next_token #=> String
resp.scan_result_details #=> Array
resp.scan_result_details[0]. #=> String
resp.scan_result_details[0].check_description #=> String
resp.scan_result_details[0].check_id #=> String
resp.scan_result_details[0].finding_arn #=> String
resp.scan_result_details[0].level #=> String, one of "LEVEL_1", "LEVEL_2"
resp.scan_result_details[0].platform #=> String
resp.scan_result_details[0].remediation #=> String
resp.scan_result_details[0].scan_arn #=> String
resp.scan_result_details[0].status #=> String, one of "PASSED", "FAILED", "SKIPPED"
resp.scan_result_details[0].status_reason #=> String
resp.scan_result_details[0].target_resource_id #=> String
resp.scan_result_details[0].title #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :account_id (required, String)

    The account ID.

  • :filter_criteria (Types::CisScanResultDetailsFilterCriteria)

    The filter criteria.

  • :max_results (Integer)

    The maximum number of CIS scan result details to be returned in a single page of results.

  • :next_token (String)

    The pagination token from a previous request that's used to retrieve the next page of results.

  • :scan_arn (required, String)

    The scan ARN.

  • :sort_by (String)

    The sort by order.

  • :sort_order (String)

    The sort order.

  • :target_resource_id (required, String)

    The target resource ID.

Returns:

See Also:



2083
2084
2085
2086
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 2083

def get_cis_scan_result_details(params = {}, options = {})
  req = build_request(:get_cis_scan_result_details, params)
  req.send_request(options)
end

#get_configuration(params = {}) ⇒ Types::GetConfigurationResponse

Retrieves setting configurations for Inspector scans.

Examples:

Response structure


resp.ec2_configuration.scan_mode_state.scan_mode #=> String, one of "EC2_SSM_AGENT_BASED", "EC2_HYBRID"
resp.ec2_configuration.scan_mode_state.scan_mode_status #=> String, one of "SUCCESS", "PENDING"
resp.ecr_configuration.rescan_duration_state.pull_date_rescan_duration #=> String, one of "DAYS_14", "DAYS_30", "DAYS_60", "DAYS_90", "DAYS_180"
resp.ecr_configuration.rescan_duration_state.rescan_duration #=> String, one of "LIFETIME", "DAYS_30", "DAYS_180", "DAYS_14", "DAYS_60", "DAYS_90"
resp.ecr_configuration.rescan_duration_state.status #=> String, one of "SUCCESS", "PENDING", "FAILED"
resp.ecr_configuration.rescan_duration_state.updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Returns:

See Also:



2108
2109
2110
2111
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 2108

def get_configuration(params = {}, options = {})
  req = build_request(:get_configuration, params)
  req.send_request(options)
end

#get_delegated_admin_account(params = {}) ⇒ Types::GetDelegatedAdminAccountResponse

Retrieves information about the Amazon Inspector delegated administrator for your organization.

Examples:

Response structure


resp.delegated_admin. #=> String
resp.delegated_admin.relationship_status #=> String, one of "CREATED", "INVITED", "DISABLED", "ENABLED", "REMOVED", "RESIGNED", "DELETED", "EMAIL_VERIFICATION_IN_PROGRESS", "EMAIL_VERIFICATION_FAILED", "REGION_DISABLED", "ACCOUNT_SUSPENDED", "CANNOT_CREATE_DETECTOR_IN_ORG_MASTER"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Returns:

See Also:



2129
2130
2131
2132
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 2129

def (params = {}, options = {})
  req = build_request(:get_delegated_admin_account, params)
  req.send_request(options)
end

#get_ec2_deep_inspection_configuration(params = {}) ⇒ Types::GetEc2DeepInspectionConfigurationResponse

Retrieves the activation status of Amazon Inspector deep inspection and custom paths associated with your account.

Examples:

Response structure


resp.error_message #=> String
resp.org_package_paths #=> Array
resp.org_package_paths[0] #=> String
resp.package_paths #=> Array
resp.package_paths[0] #=> String
resp.status #=> String, one of "ACTIVATED", "DEACTIVATED", "PENDING", "FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Returns:

See Also:



2157
2158
2159
2160
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 2157

def get_ec2_deep_inspection_configuration(params = {}, options = {})
  req = build_request(:get_ec2_deep_inspection_configuration, params)
  req.send_request(options)
end

#get_encryption_key(params = {}) ⇒ Types::GetEncryptionKeyResponse

Gets an encryption key.

Examples:

Request syntax with placeholder values


resp = client.get_encryption_key({
  resource_type: "AWS_EC2_INSTANCE", # required, accepts AWS_EC2_INSTANCE, AWS_ECR_CONTAINER_IMAGE, AWS_ECR_REPOSITORY, AWS_LAMBDA_FUNCTION
  scan_type: "NETWORK", # required, accepts NETWORK, PACKAGE, CODE
})

Response structure


resp.kms_key_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_type (required, String)

    The resource type the key encrypts.

  • :scan_type (required, String)

    The scan type the key encrypts.

Returns:

See Also:



2189
2190
2191
2192
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 2189

def get_encryption_key(params = {}, options = {})
  req = build_request(:get_encryption_key, params)
  req.send_request(options)
end

#get_findings_report_status(params = {}) ⇒ Types::GetFindingsReportStatusResponse

Gets the status of a findings report.

Examples:

Request syntax with placeholder values


resp = client.get_findings_report_status({
  report_id: "ReportId",
})

Response structure


resp.destination.bucket_name #=> String
resp.destination.key_prefix #=> String
resp.destination.kms_key_arn #=> String
resp.error_code #=> String, one of "INTERNAL_ERROR", "INVALID_PERMISSIONS", "NO_FINDINGS_FOUND", "BUCKET_NOT_FOUND", "INCOMPATIBLE_BUCKET_REGION", "MALFORMED_KMS_KEY"
resp.error_message #=> String
resp.filter_criteria. #=> Array
resp.filter_criteria.[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.[0].value #=> String
resp.filter_criteria.code_vulnerability_detector_name #=> Array
resp.filter_criteria.code_vulnerability_detector_name[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.code_vulnerability_detector_name[0].value #=> String
resp.filter_criteria.code_vulnerability_detector_tags #=> Array
resp.filter_criteria.code_vulnerability_detector_tags[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.code_vulnerability_detector_tags[0].value #=> String
resp.filter_criteria.code_vulnerability_file_path #=> Array
resp.filter_criteria.code_vulnerability_file_path[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.code_vulnerability_file_path[0].value #=> String
resp.filter_criteria.component_id #=> Array
resp.filter_criteria.component_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.component_id[0].value #=> String
resp.filter_criteria.component_type #=> Array
resp.filter_criteria.component_type[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.component_type[0].value #=> String
resp.filter_criteria.ec2_instance_image_id #=> Array
resp.filter_criteria.ec2_instance_image_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.ec2_instance_image_id[0].value #=> String
resp.filter_criteria.ec2_instance_subnet_id #=> Array
resp.filter_criteria.ec2_instance_subnet_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.ec2_instance_subnet_id[0].value #=> String
resp.filter_criteria.ec2_instance_vpc_id #=> Array
resp.filter_criteria.ec2_instance_vpc_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.ec2_instance_vpc_id[0].value #=> String
resp.filter_criteria.ecr_image_architecture #=> Array
resp.filter_criteria.ecr_image_architecture[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.ecr_image_architecture[0].value #=> String
resp.filter_criteria.ecr_image_hash #=> Array
resp.filter_criteria.ecr_image_hash[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.ecr_image_hash[0].value #=> String
resp.filter_criteria.ecr_image_pushed_at #=> Array
resp.filter_criteria.ecr_image_pushed_at[0].end_inclusive #=> Time
resp.filter_criteria.ecr_image_pushed_at[0].start_inclusive #=> Time
resp.filter_criteria.ecr_image_registry #=> Array
resp.filter_criteria.ecr_image_registry[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.ecr_image_registry[0].value #=> String
resp.filter_criteria.ecr_image_repository_name #=> Array
resp.filter_criteria.ecr_image_repository_name[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.ecr_image_repository_name[0].value #=> String
resp.filter_criteria.ecr_image_tags #=> Array
resp.filter_criteria.ecr_image_tags[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.ecr_image_tags[0].value #=> String
resp.filter_criteria.epss_score #=> Array
resp.filter_criteria.epss_score[0].lower_inclusive #=> Float
resp.filter_criteria.epss_score[0].upper_inclusive #=> Float
resp.filter_criteria.exploit_available #=> Array
resp.filter_criteria.exploit_available[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.exploit_available[0].value #=> String
resp.filter_criteria.finding_arn #=> Array
resp.filter_criteria.finding_arn[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.finding_arn[0].value #=> String
resp.filter_criteria.finding_status #=> Array
resp.filter_criteria.finding_status[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.finding_status[0].value #=> String
resp.filter_criteria.finding_type #=> Array
resp.filter_criteria.finding_type[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.finding_type[0].value #=> String
resp.filter_criteria.first_observed_at #=> Array
resp.filter_criteria.first_observed_at[0].end_inclusive #=> Time
resp.filter_criteria.first_observed_at[0].start_inclusive #=> Time
resp.filter_criteria.fix_available #=> Array
resp.filter_criteria.fix_available[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.fix_available[0].value #=> String
resp.filter_criteria.inspector_score #=> Array
resp.filter_criteria.inspector_score[0].lower_inclusive #=> Float
resp.filter_criteria.inspector_score[0].upper_inclusive #=> Float
resp.filter_criteria.lambda_function_execution_role_arn #=> Array
resp.filter_criteria.lambda_function_execution_role_arn[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.lambda_function_execution_role_arn[0].value #=> String
resp.filter_criteria.lambda_function_last_modified_at #=> Array
resp.filter_criteria.lambda_function_last_modified_at[0].end_inclusive #=> Time
resp.filter_criteria.lambda_function_last_modified_at[0].start_inclusive #=> Time
resp.filter_criteria.lambda_function_layers #=> Array
resp.filter_criteria.lambda_function_layers[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.lambda_function_layers[0].value #=> String
resp.filter_criteria.lambda_function_name #=> Array
resp.filter_criteria.lambda_function_name[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.lambda_function_name[0].value #=> String
resp.filter_criteria.lambda_function_runtime #=> Array
resp.filter_criteria.lambda_function_runtime[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.lambda_function_runtime[0].value #=> String
resp.filter_criteria.last_observed_at #=> Array
resp.filter_criteria.last_observed_at[0].end_inclusive #=> Time
resp.filter_criteria.last_observed_at[0].start_inclusive #=> Time
resp.filter_criteria.network_protocol #=> Array
resp.filter_criteria.network_protocol[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.network_protocol[0].value #=> String
resp.filter_criteria.port_range #=> Array
resp.filter_criteria.port_range[0].begin_inclusive #=> Integer
resp.filter_criteria.port_range[0].end_inclusive #=> Integer
resp.filter_criteria.related_vulnerabilities #=> Array
resp.filter_criteria.related_vulnerabilities[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.related_vulnerabilities[0].value #=> String
resp.filter_criteria.resource_id #=> Array
resp.filter_criteria.resource_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.resource_id[0].value #=> String
resp.filter_criteria.resource_tags #=> Array
resp.filter_criteria.resource_tags[0].comparison #=> String, one of "EQUALS"
resp.filter_criteria.resource_tags[0].key #=> String
resp.filter_criteria.resource_tags[0].value #=> String
resp.filter_criteria.resource_type #=> Array
resp.filter_criteria.resource_type[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.resource_type[0].value #=> String
resp.filter_criteria.severity #=> Array
resp.filter_criteria.severity[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.severity[0].value #=> String
resp.filter_criteria.title #=> Array
resp.filter_criteria.title[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.title[0].value #=> String
resp.filter_criteria.updated_at #=> Array
resp.filter_criteria.updated_at[0].end_inclusive #=> Time
resp.filter_criteria.updated_at[0].start_inclusive #=> Time
resp.filter_criteria.vendor_severity #=> Array
resp.filter_criteria.vendor_severity[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.vendor_severity[0].value #=> String
resp.filter_criteria.vulnerability_id #=> Array
resp.filter_criteria.vulnerability_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.vulnerability_id[0].value #=> String
resp.filter_criteria.vulnerability_source #=> Array
resp.filter_criteria.vulnerability_source[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.vulnerability_source[0].value #=> String
resp.filter_criteria.vulnerable_packages #=> Array
resp.filter_criteria.vulnerable_packages[0].architecture.comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.vulnerable_packages[0].architecture.value #=> String
resp.filter_criteria.vulnerable_packages[0].epoch.lower_inclusive #=> Float
resp.filter_criteria.vulnerable_packages[0].epoch.upper_inclusive #=> Float
resp.filter_criteria.vulnerable_packages[0].file_path.comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.vulnerable_packages[0].file_path.value #=> String
resp.filter_criteria.vulnerable_packages[0].name.comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.vulnerable_packages[0].name.value #=> String
resp.filter_criteria.vulnerable_packages[0].release.comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.vulnerable_packages[0].release.value #=> String
resp.filter_criteria.vulnerable_packages[0].source_lambda_layer_arn.comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.vulnerable_packages[0].source_lambda_layer_arn.value #=> String
resp.filter_criteria.vulnerable_packages[0].source_layer_hash.comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.vulnerable_packages[0].source_layer_hash.value #=> String
resp.filter_criteria.vulnerable_packages[0].version.comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filter_criteria.vulnerable_packages[0].version.value #=> String
resp.report_id #=> String
resp.status #=> String, one of "SUCCEEDED", "IN_PROGRESS", "CANCELLED", "FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :report_id (String)

    The ID of the report to retrieve the status of.

Returns:

See Also:



2369
2370
2371
2372
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 2369

def get_findings_report_status(params = {}, options = {})
  req = build_request(:get_findings_report_status, params)
  req.send_request(options)
end

#get_member(params = {}) ⇒ Types::GetMemberResponse

Gets member information for your organization.

Examples:

Request syntax with placeholder values


resp = client.get_member({
  account_id: "AccountId", # required
})

Response structure


resp.member. #=> String
resp.member. #=> String
resp.member.relationship_status #=> String, one of "CREATED", "INVITED", "DISABLED", "ENABLED", "REMOVED", "RESIGNED", "DELETED", "EMAIL_VERIFICATION_IN_PROGRESS", "EMAIL_VERIFICATION_FAILED", "REGION_DISABLED", "ACCOUNT_SUSPENDED", "CANNOT_CREATE_DETECTOR_IN_ORG_MASTER"
resp.member.updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :account_id (required, String)

    The Amazon Web Services account ID of the member account to retrieve information on.

Returns:

See Also:



2401
2402
2403
2404
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 2401

def get_member(params = {}, options = {})
  req = build_request(:get_member, params)
  req.send_request(options)
end

#get_sbom_export(params = {}) ⇒ Types::GetSbomExportResponse

Gets details of a software bill of materials (SBOM) report.

Examples:

Request syntax with placeholder values


resp = client.get_sbom_export({
  report_id: "ReportId", # required
})

Response structure


resp.error_code #=> String, one of "INTERNAL_ERROR", "INVALID_PERMISSIONS", "NO_FINDINGS_FOUND", "BUCKET_NOT_FOUND", "INCOMPATIBLE_BUCKET_REGION", "MALFORMED_KMS_KEY"
resp.error_message #=> String
resp.filter_criteria. #=> Array
resp.filter_criteria.[0].comparison #=> String, one of "EQUALS", "NOT_EQUALS"
resp.filter_criteria.[0].value #=> String
resp.filter_criteria.ec2_instance_tags #=> Array
resp.filter_criteria.ec2_instance_tags[0].comparison #=> String, one of "EQUALS"
resp.filter_criteria.ec2_instance_tags[0].key #=> String
resp.filter_criteria.ec2_instance_tags[0].value #=> String
resp.filter_criteria.ecr_image_tags #=> Array
resp.filter_criteria.ecr_image_tags[0].comparison #=> String, one of "EQUALS", "NOT_EQUALS"
resp.filter_criteria.ecr_image_tags[0].value #=> String
resp.filter_criteria.ecr_repository_name #=> Array
resp.filter_criteria.ecr_repository_name[0].comparison #=> String, one of "EQUALS", "NOT_EQUALS"
resp.filter_criteria.ecr_repository_name[0].value #=> String
resp.filter_criteria.lambda_function_name #=> Array
resp.filter_criteria.lambda_function_name[0].comparison #=> String, one of "EQUALS", "NOT_EQUALS"
resp.filter_criteria.lambda_function_name[0].value #=> String
resp.filter_criteria.lambda_function_tags #=> Array
resp.filter_criteria.lambda_function_tags[0].comparison #=> String, one of "EQUALS"
resp.filter_criteria.lambda_function_tags[0].key #=> String
resp.filter_criteria.lambda_function_tags[0].value #=> String
resp.filter_criteria.resource_id #=> Array
resp.filter_criteria.resource_id[0].comparison #=> String, one of "EQUALS", "NOT_EQUALS"
resp.filter_criteria.resource_id[0].value #=> String
resp.filter_criteria.resource_type #=> Array
resp.filter_criteria.resource_type[0].comparison #=> String, one of "EQUALS", "NOT_EQUALS"
resp.filter_criteria.resource_type[0].value #=> String
resp.format #=> String, one of "CYCLONEDX_1_4", "SPDX_2_3"
resp.report_id #=> String
resp.s3_destination.bucket_name #=> String
resp.s3_destination.key_prefix #=> String
resp.s3_destination.kms_key_arn #=> String
resp.status #=> String, one of "SUCCEEDED", "IN_PROGRESS", "CANCELLED", "FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :report_id (required, String)

    The report ID of the SBOM export to get details for.

Returns:

See Also:



2468
2469
2470
2471
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 2468

def get_sbom_export(params = {}, options = {})
  req = build_request(:get_sbom_export, params)
  req.send_request(options)
end

#list_account_permissions(params = {}) ⇒ Types::ListAccountPermissionsResponse

Lists the permissions an account has to configure Amazon Inspector.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.({
  max_results: 1,
  next_token: "NextToken",
  service: "EC2", # accepts EC2, ECR, LAMBDA
})

Response structure


resp.next_token #=> String
resp.permissions #=> Array
resp.permissions[0].operation #=> String, one of "ENABLE_SCANNING", "DISABLE_SCANNING", "ENABLE_REPOSITORY", "DISABLE_REPOSITORY"
resp.permissions[0].service #=> String, one of "EC2", "ECR", "LAMBDA"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of results the response can return. If your request would return more than the maximum the response will return a nextToken value, use this value when you call the action again to get the remaining results.

  • :next_token (String)

    A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. If your response returns more than the maxResults maximum value it will also return a nextToken value. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

  • :service (String)

    The service scan type to check permissions for.

Returns:

See Also:



2518
2519
2520
2521
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 2518

def (params = {}, options = {})
  req = build_request(:list_account_permissions, params)
  req.send_request(options)
end

#list_cis_scan_configurations(params = {}) ⇒ Types::ListCisScanConfigurationsResponse

Lists CIS scan configurations.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_cis_scan_configurations({
  filter_criteria: {
    scan_configuration_arn_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
    scan_name_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
    target_resource_tag_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        key: "NonEmptyString", # required
        value: "NonEmptyString", # required
      },
    ],
  },
  max_results: 1,
  next_token: "NextToken",
  sort_by: "SCAN_NAME", # accepts SCAN_NAME, SCAN_CONFIGURATION_ARN
  sort_order: "ASC", # accepts ASC, DESC
})

Response structure


resp.next_token #=> String
resp.scan_configurations #=> Array
resp.scan_configurations[0].owner_id #=> String
resp.scan_configurations[0].scan_configuration_arn #=> String
resp.scan_configurations[0].scan_name #=> String
resp.scan_configurations[0].schedule.daily.start_time.time_of_day #=> String
resp.scan_configurations[0].schedule.daily.start_time.timezone #=> String
resp.scan_configurations[0].schedule.monthly.day #=> String, one of "SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"
resp.scan_configurations[0].schedule.monthly.start_time.time_of_day #=> String
resp.scan_configurations[0].schedule.monthly.start_time.timezone #=> String
resp.scan_configurations[0].schedule.weekly.days #=> Array
resp.scan_configurations[0].schedule.weekly.days[0] #=> String, one of "SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"
resp.scan_configurations[0].schedule.weekly.start_time.time_of_day #=> String
resp.scan_configurations[0].schedule.weekly.start_time.timezone #=> String
resp.scan_configurations[0].security_level #=> String, one of "LEVEL_1", "LEVEL_2"
resp.scan_configurations[0].tags #=> Hash
resp.scan_configurations[0].tags["MapKey"] #=> String
resp.scan_configurations[0].targets. #=> Array
resp.scan_configurations[0].targets.[0] #=> String
resp.scan_configurations[0].targets.target_resource_tags #=> Hash
resp.scan_configurations[0].targets.target_resource_tags["TargetResourceTagsKey"] #=> Array
resp.scan_configurations[0].targets.target_resource_tags["TargetResourceTagsKey"][0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filter_criteria (Types::ListCisScanConfigurationsFilterCriteria)

    The CIS scan configuration filter criteria.

  • :max_results (Integer)

    The maximum number of CIS scan configurations to be returned in a single page of results.

  • :next_token (String)

    The pagination token from a previous request that's used to retrieve the next page of results.

  • :sort_by (String)

    The CIS scan configuration sort by order.

  • :sort_order (String)

    The CIS scan configuration sort order order.

Returns:

See Also:



2608
2609
2610
2611
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 2608

def list_cis_scan_configurations(params = {}, options = {})
  req = build_request(:list_cis_scan_configurations, params)
  req.send_request(options)
end

#list_cis_scan_results_aggregated_by_checks(params = {}) ⇒ Types::ListCisScanResultsAggregatedByChecksResponse

Lists scan results aggregated by checks.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_cis_scan_results_aggregated_by_checks({
  filter_criteria: {
    account_id_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
    check_id_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
    failed_resources_filters: [
      {
        lower_inclusive: 1,
        upper_inclusive: 1,
      },
    ],
    platform_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
    security_level_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        value: "LEVEL_1", # required, accepts LEVEL_1, LEVEL_2
      },
    ],
    title_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
  },
  max_results: 1,
  next_token: "NextToken",
  scan_arn: "CisScanArn", # required
  sort_by: "CHECK_ID", # accepts CHECK_ID, TITLE, PLATFORM, FAILED_COUNTS, SECURITY_LEVEL
  sort_order: "ASC", # accepts ASC, DESC
})

Response structure


resp.check_aggregations #=> Array
resp.check_aggregations[0]. #=> String
resp.check_aggregations[0].check_description #=> String
resp.check_aggregations[0].check_id #=> String
resp.check_aggregations[0].level #=> String, one of "LEVEL_1", "LEVEL_2"
resp.check_aggregations[0].platform #=> String
resp.check_aggregations[0].scan_arn #=> String
resp.check_aggregations[0].status_counts.failed #=> Integer
resp.check_aggregations[0].status_counts.passed #=> Integer
resp.check_aggregations[0].status_counts.skipped #=> Integer
resp.check_aggregations[0].title #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filter_criteria (Types::CisScanResultsAggregatedByChecksFilterCriteria)

    The filter criteria.

  • :max_results (Integer)

    The maximum number of scan results aggregated by checks to be returned in a single page of results.

  • :next_token (String)

    The pagination token from a previous request that's used to retrieve the next page of results.

  • :scan_arn (required, String)

    The scan ARN.

  • :sort_by (String)

    The sort by order.

  • :sort_order (String)

    The sort order.

Returns:

See Also:



2709
2710
2711
2712
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 2709

def list_cis_scan_results_aggregated_by_checks(params = {}, options = {})
  req = build_request(:list_cis_scan_results_aggregated_by_checks, params)
  req.send_request(options)
end

#list_cis_scan_results_aggregated_by_target_resource(params = {}) ⇒ Types::ListCisScanResultsAggregatedByTargetResourceResponse

Lists scan results aggregated by a target resource.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_cis_scan_results_aggregated_by_target_resource({
  filter_criteria: {
    account_id_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
    check_id_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
    failed_checks_filters: [
      {
        lower_inclusive: 1,
        upper_inclusive: 1,
      },
    ],
    platform_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
    status_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        value: "PASSED", # required, accepts PASSED, FAILED, SKIPPED
      },
    ],
    target_resource_id_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
    target_resource_tag_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        key: "NonEmptyString", # required
        value: "NonEmptyString", # required
      },
    ],
    target_status_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        value: "TIMED_OUT", # required, accepts TIMED_OUT, CANCELLED, COMPLETED
      },
    ],
    target_status_reason_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        value: "SCAN_IN_PROGRESS", # required, accepts SCAN_IN_PROGRESS, UNSUPPORTED_OS, SSM_UNMANAGED
      },
    ],
  },
  max_results: 1,
  next_token: "NextToken",
  scan_arn: "CisScanArn", # required
  sort_by: "RESOURCE_ID", # accepts RESOURCE_ID, FAILED_COUNTS, ACCOUNT_ID, PLATFORM, TARGET_STATUS, TARGET_STATUS_REASON
  sort_order: "ASC", # accepts ASC, DESC
})

Response structure


resp.next_token #=> String
resp.target_resource_aggregations #=> Array
resp.target_resource_aggregations[0]. #=> String
resp.target_resource_aggregations[0].platform #=> String
resp.target_resource_aggregations[0].scan_arn #=> String
resp.target_resource_aggregations[0].status_counts.failed #=> Integer
resp.target_resource_aggregations[0].status_counts.passed #=> Integer
resp.target_resource_aggregations[0].status_counts.skipped #=> Integer
resp.target_resource_aggregations[0].target_resource_id #=> String
resp.target_resource_aggregations[0].target_resource_tags #=> Hash
resp.target_resource_aggregations[0].target_resource_tags["TargetResourceTagsKey"] #=> Array
resp.target_resource_aggregations[0].target_resource_tags["TargetResourceTagsKey"][0] #=> String
resp.target_resource_aggregations[0].target_status #=> String, one of "TIMED_OUT", "CANCELLED", "COMPLETED"
resp.target_resource_aggregations[0].target_status_reason #=> String, one of "SCAN_IN_PROGRESS", "UNSUPPORTED_OS", "SSM_UNMANAGED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filter_criteria (Types::CisScanResultsAggregatedByTargetResourceFilterCriteria)

    The filter criteria.

  • :max_results (Integer)

    The maximum number of scan results aggregated by a target resource to be returned in a single page of results.

  • :next_token (String)

    The pagination token from a previous request that's used to retrieve the next page of results.

  • :scan_arn (required, String)

    The scan ARN.

  • :sort_by (String)

    The sort by order.

  • :sort_order (String)

    The sort order.

Returns:

See Also:



2831
2832
2833
2834
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 2831

def list_cis_scan_results_aggregated_by_target_resource(params = {}, options = {})
  req = build_request(:list_cis_scan_results_aggregated_by_target_resource, params)
  req.send_request(options)
end

#list_cis_scans(params = {}) ⇒ Types::ListCisScansResponse

Returns a CIS scan list.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_cis_scans({
  detail_level: "ORGANIZATION", # accepts ORGANIZATION, MEMBER
  filter_criteria: {
    failed_checks_filters: [
      {
        lower_inclusive: 1,
        upper_inclusive: 1,
      },
    ],
    scan_arn_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
    scan_at_filters: [
      {
        earliest_scan_start_time: Time.now,
        latest_scan_start_time: Time.now,
      },
    ],
    scan_configuration_arn_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
    scan_name_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
    scan_status_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        value: "FAILED", # required, accepts FAILED, COMPLETED, CANCELLED, IN_PROGRESS
      },
    ],
    scheduled_by_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
    target_account_id_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
    target_resource_id_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "String", # required
      },
    ],
    target_resource_tag_filters: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        key: "NonEmptyString", # required
        value: "NonEmptyString", # required
      },
    ],
  },
  max_results: 1,
  next_token: "NextToken",
  sort_by: "STATUS", # accepts STATUS, SCHEDULED_BY, SCAN_START_DATE, FAILED_CHECKS
  sort_order: "ASC", # accepts ASC, DESC
})

Response structure


resp.next_token #=> String
resp.scans #=> Array
resp.scans[0].failed_checks #=> Integer
resp.scans[0].scan_arn #=> String
resp.scans[0].scan_configuration_arn #=> String
resp.scans[0].scan_date #=> Time
resp.scans[0].scan_name #=> String
resp.scans[0].scheduled_by #=> String
resp.scans[0].security_level #=> String, one of "LEVEL_1", "LEVEL_2"
resp.scans[0].status #=> String, one of "FAILED", "COMPLETED", "CANCELLED", "IN_PROGRESS"
resp.scans[0].targets. #=> Array
resp.scans[0].targets.[0] #=> String
resp.scans[0].targets.target_resource_tags #=> Hash
resp.scans[0].targets.target_resource_tags["TargetResourceTagsKey"] #=> Array
resp.scans[0].targets.target_resource_tags["TargetResourceTagsKey"][0] #=> String
resp.scans[0].total_checks #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :detail_level (String)

    The detail applied to the CIS scan.

  • :filter_criteria (Types::ListCisScansFilterCriteria)

    The CIS scan filter criteria.

  • :max_results (Integer)

    The maximum number of results to be returned.

  • :next_token (String)

    The pagination token from a previous request that's used to retrieve the next page of results.

  • :sort_by (String)

    The CIS scans sort by order.

  • :sort_order (String)

    The CIS scans sort order.

Returns:

See Also:



2960
2961
2962
2963
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 2960

def list_cis_scans(params = {}, options = {})
  req = build_request(:list_cis_scans, params)
  req.send_request(options)
end

#list_coverage(params = {}) ⇒ Types::ListCoverageResponse

Lists coverage details for your environment.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_coverage({
  filter_criteria: {
    account_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    ec2_instance_tags: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        key: "NonEmptyString", # required
        value: "NonEmptyString",
      },
    ],
    ecr_image_tags: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    ecr_repository_name: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    image_pulled_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    lambda_function_name: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    lambda_function_runtime: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    lambda_function_tags: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        key: "NonEmptyString", # required
        value: "NonEmptyString",
      },
    ],
    last_scanned_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    resource_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    resource_type: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    scan_mode: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    scan_status_code: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    scan_status_reason: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    scan_type: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
  },
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.covered_resources #=> Array
resp.covered_resources[0]. #=> String
resp.covered_resources[0].last_scanned_at #=> Time
resp.covered_resources[0].resource_id #=> String
resp.covered_resources[0]..ec2.ami_id #=> String
resp.covered_resources[0]..ec2.platform #=> String, one of "WINDOWS", "LINUX", "UNKNOWN", "MACOS"
resp.covered_resources[0]..ec2.tags #=> Hash
resp.covered_resources[0]..ec2.tags["MapKey"] #=> String
resp.covered_resources[0]..ecr_image.image_pulled_at #=> Time
resp.covered_resources[0]..ecr_image.tags #=> Array
resp.covered_resources[0]..ecr_image.tags[0] #=> String
resp.covered_resources[0]..ecr_repository.name #=> String
resp.covered_resources[0]..ecr_repository.scan_frequency #=> String, one of "MANUAL", "SCAN_ON_PUSH", "CONTINUOUS_SCAN"
resp.covered_resources[0]..lambda_function.function_name #=> String
resp.covered_resources[0]..lambda_function.function_tags #=> Hash
resp.covered_resources[0]..lambda_function.function_tags["MapKey"] #=> String
resp.covered_resources[0]..lambda_function.layers #=> Array
resp.covered_resources[0]..lambda_function.layers[0] #=> String
resp.covered_resources[0]..lambda_function.runtime #=> String, one of "NODEJS", "NODEJS_12_X", "NODEJS_14_X", "NODEJS_16_X", "JAVA_8", "JAVA_8_AL2", "JAVA_11", "PYTHON_3_7", "PYTHON_3_8", "PYTHON_3_9", "UNSUPPORTED", "NODEJS_18_X", "GO_1_X", "JAVA_17", "PYTHON_3_10", "PYTHON_3_11", "DOTNETCORE_3_1", "DOTNET_6", "DOTNET_7", "RUBY_2_7", "RUBY_3_2"
resp.covered_resources[0].resource_type #=> String, one of "AWS_EC2_INSTANCE", "AWS_ECR_CONTAINER_IMAGE", "AWS_ECR_REPOSITORY", "AWS_LAMBDA_FUNCTION"
resp.covered_resources[0].scan_mode #=> String, one of "EC2_SSM_AGENT_BASED", "EC2_AGENTLESS"
resp.covered_resources[0].scan_status.reason #=> String, one of "PENDING_INITIAL_SCAN", "ACCESS_DENIED", "INTERNAL_ERROR", "UNMANAGED_EC2_INSTANCE", "UNSUPPORTED_OS", "SCAN_ELIGIBILITY_EXPIRED", "RESOURCE_TERMINATED", "SUCCESSFUL", "NO_RESOURCES_FOUND", "IMAGE_SIZE_EXCEEDED", "SCAN_FREQUENCY_MANUAL", "SCAN_FREQUENCY_SCAN_ON_PUSH", "EC2_INSTANCE_STOPPED", "PENDING_DISABLE", "NO_INVENTORY", "STALE_INVENTORY", "EXCLUDED_BY_TAG", "UNSUPPORTED_RUNTIME", "UNSUPPORTED_MEDIA_TYPE", "UNSUPPORTED_CONFIG_FILE", "DEEP_INSPECTION_PACKAGE_COLLECTION_LIMIT_EXCEEDED", "DEEP_INSPECTION_DAILY_SSM_INVENTORY_LIMIT_EXCEEDED", "DEEP_INSPECTION_COLLECTION_TIME_LIMIT_EXCEEDED", "DEEP_INSPECTION_NO_INVENTORY", "AGENTLESS_INSTANCE_STORAGE_LIMIT_EXCEEDED", "AGENTLESS_INSTANCE_COLLECTION_TIME_LIMIT_EXCEEDED"
resp.covered_resources[0].scan_status.status_code #=> String, one of "ACTIVE", "INACTIVE"
resp.covered_resources[0].scan_type #=> String, one of "NETWORK", "PACKAGE", "CODE"
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filter_criteria (Types::CoverageFilterCriteria)

    An object that contains details on the filters to apply to the coverage data for your environment.

  • :max_results (Integer)

    The maximum number of results the response can return. If your request would return more than the maximum the response will return a nextToken value, use this value when you call the action again to get the remaining results.

  • :next_token (String)

    A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. If your response returns more than the maxResults maximum value it will also return a nextToken value. For subsequent calls, use the nextToken value returned from the previous request to continue listing results after the first page.

Returns:

See Also:



3125
3126
3127
3128
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 3125

def list_coverage(params = {}, options = {})
  req = build_request(:list_coverage, params)
  req.send_request(options)
end

#list_coverage_statistics(params = {}) ⇒ Types::ListCoverageStatisticsResponse

Lists Amazon Inspector coverage statistics for your environment.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_coverage_statistics({
  filter_criteria: {
    account_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    ec2_instance_tags: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        key: "NonEmptyString", # required
        value: "NonEmptyString",
      },
    ],
    ecr_image_tags: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    ecr_repository_name: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    image_pulled_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    lambda_function_name: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    lambda_function_runtime: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    lambda_function_tags: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        key: "NonEmptyString", # required
        value: "NonEmptyString",
      },
    ],
    last_scanned_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    resource_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    resource_type: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    scan_mode: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    scan_status_code: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    scan_status_reason: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
    scan_type: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, NOT_EQUALS
        value: "CoverageStringInput", # required
      },
    ],
  },
  group_by: "SCAN_STATUS_CODE", # accepts SCAN_STATUS_CODE, SCAN_STATUS_REASON, ACCOUNT_ID, RESOURCE_TYPE, ECR_REPOSITORY_NAME
  next_token: "NextToken",
})

Response structure


resp.counts_by_group #=> Array
resp.counts_by_group[0].count #=> Integer
resp.counts_by_group[0].group_key #=> String, one of "SCAN_STATUS_CODE", "SCAN_STATUS_REASON", "ACCOUNT_ID", "RESOURCE_TYPE", "ECR_REPOSITORY_NAME"
resp.next_token #=> String
resp.total_counts #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filter_criteria (Types::CoverageFilterCriteria)

    An object that contains details on the filters to apply to the coverage data for your environment.

  • :group_by (String)

    The value to group the results by.

  • :next_token (String)

    A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

Returns:

See Also:



3267
3268
3269
3270
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 3267

def list_coverage_statistics(params = {}, options = {})
  req = build_request(:list_coverage_statistics, params)
  req.send_request(options)
end

#list_delegated_admin_accounts(params = {}) ⇒ Types::ListDelegatedAdminAccountsResponse

Lists information about the Amazon Inspector delegated administrator of your organization.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_delegated_admin_accounts({
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.delegated_admin_accounts #=> Array
resp.delegated_admin_accounts[0]. #=> String
resp.delegated_admin_accounts[0].status #=> String, one of "ENABLED", "DISABLE_IN_PROGRESS"
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of results the response can return. If your request would return more than the maximum the response will return a nextToken value, use this value when you call the action again to get the remaining results.

  • :next_token (String)

    A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. If your response returns more than the maxResults maximum value it will also return a nextToken value. For subsequent calls, use the nextToken value returned from the previous request to continue listing results after the first page.

Returns:

See Also:



3314
3315
3316
3317
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 3314

def list_delegated_admin_accounts(params = {}, options = {})
  req = build_request(:list_delegated_admin_accounts, params)
  req.send_request(options)
end

#list_filters(params = {}) ⇒ Types::ListFiltersResponse

Lists the filters associated with your account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_filters({
  action: "NONE", # accepts NONE, SUPPRESS
  arns: ["FilterArn"],
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.filters #=> Array
resp.filters[0].action #=> String, one of "NONE", "SUPPRESS"
resp.filters[0].arn #=> String
resp.filters[0].created_at #=> Time
resp.filters[0].criteria. #=> Array
resp.filters[0].criteria.[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.[0].value #=> String
resp.filters[0].criteria.code_vulnerability_detector_name #=> Array
resp.filters[0].criteria.code_vulnerability_detector_name[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.code_vulnerability_detector_name[0].value #=> String
resp.filters[0].criteria.code_vulnerability_detector_tags #=> Array
resp.filters[0].criteria.code_vulnerability_detector_tags[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.code_vulnerability_detector_tags[0].value #=> String
resp.filters[0].criteria.code_vulnerability_file_path #=> Array
resp.filters[0].criteria.code_vulnerability_file_path[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.code_vulnerability_file_path[0].value #=> String
resp.filters[0].criteria.component_id #=> Array
resp.filters[0].criteria.component_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.component_id[0].value #=> String
resp.filters[0].criteria.component_type #=> Array
resp.filters[0].criteria.component_type[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.component_type[0].value #=> String
resp.filters[0].criteria.ec2_instance_image_id #=> Array
resp.filters[0].criteria.ec2_instance_image_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.ec2_instance_image_id[0].value #=> String
resp.filters[0].criteria.ec2_instance_subnet_id #=> Array
resp.filters[0].criteria.ec2_instance_subnet_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.ec2_instance_subnet_id[0].value #=> String
resp.filters[0].criteria.ec2_instance_vpc_id #=> Array
resp.filters[0].criteria.ec2_instance_vpc_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.ec2_instance_vpc_id[0].value #=> String
resp.filters[0].criteria.ecr_image_architecture #=> Array
resp.filters[0].criteria.ecr_image_architecture[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.ecr_image_architecture[0].value #=> String
resp.filters[0].criteria.ecr_image_hash #=> Array
resp.filters[0].criteria.ecr_image_hash[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.ecr_image_hash[0].value #=> String
resp.filters[0].criteria.ecr_image_pushed_at #=> Array
resp.filters[0].criteria.ecr_image_pushed_at[0].end_inclusive #=> Time
resp.filters[0].criteria.ecr_image_pushed_at[0].start_inclusive #=> Time
resp.filters[0].criteria.ecr_image_registry #=> Array
resp.filters[0].criteria.ecr_image_registry[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.ecr_image_registry[0].value #=> String
resp.filters[0].criteria.ecr_image_repository_name #=> Array
resp.filters[0].criteria.ecr_image_repository_name[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.ecr_image_repository_name[0].value #=> String
resp.filters[0].criteria.ecr_image_tags #=> Array
resp.filters[0].criteria.ecr_image_tags[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.ecr_image_tags[0].value #=> String
resp.filters[0].criteria.epss_score #=> Array
resp.filters[0].criteria.epss_score[0].lower_inclusive #=> Float
resp.filters[0].criteria.epss_score[0].upper_inclusive #=> Float
resp.filters[0].criteria.exploit_available #=> Array
resp.filters[0].criteria.exploit_available[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.exploit_available[0].value #=> String
resp.filters[0].criteria.finding_arn #=> Array
resp.filters[0].criteria.finding_arn[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.finding_arn[0].value #=> String
resp.filters[0].criteria.finding_status #=> Array
resp.filters[0].criteria.finding_status[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.finding_status[0].value #=> String
resp.filters[0].criteria.finding_type #=> Array
resp.filters[0].criteria.finding_type[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.finding_type[0].value #=> String
resp.filters[0].criteria.first_observed_at #=> Array
resp.filters[0].criteria.first_observed_at[0].end_inclusive #=> Time
resp.filters[0].criteria.first_observed_at[0].start_inclusive #=> Time
resp.filters[0].criteria.fix_available #=> Array
resp.filters[0].criteria.fix_available[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.fix_available[0].value #=> String
resp.filters[0].criteria.inspector_score #=> Array
resp.filters[0].criteria.inspector_score[0].lower_inclusive #=> Float
resp.filters[0].criteria.inspector_score[0].upper_inclusive #=> Float
resp.filters[0].criteria.lambda_function_execution_role_arn #=> Array
resp.filters[0].criteria.lambda_function_execution_role_arn[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.lambda_function_execution_role_arn[0].value #=> String
resp.filters[0].criteria.lambda_function_last_modified_at #=> Array
resp.filters[0].criteria.lambda_function_last_modified_at[0].end_inclusive #=> Time
resp.filters[0].criteria.lambda_function_last_modified_at[0].start_inclusive #=> Time
resp.filters[0].criteria.lambda_function_layers #=> Array
resp.filters[0].criteria.lambda_function_layers[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.lambda_function_layers[0].value #=> String
resp.filters[0].criteria.lambda_function_name #=> Array
resp.filters[0].criteria.lambda_function_name[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.lambda_function_name[0].value #=> String
resp.filters[0].criteria.lambda_function_runtime #=> Array
resp.filters[0].criteria.lambda_function_runtime[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.lambda_function_runtime[0].value #=> String
resp.filters[0].criteria.last_observed_at #=> Array
resp.filters[0].criteria.last_observed_at[0].end_inclusive #=> Time
resp.filters[0].criteria.last_observed_at[0].start_inclusive #=> Time
resp.filters[0].criteria.network_protocol #=> Array
resp.filters[0].criteria.network_protocol[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.network_protocol[0].value #=> String
resp.filters[0].criteria.port_range #=> Array
resp.filters[0].criteria.port_range[0].begin_inclusive #=> Integer
resp.filters[0].criteria.port_range[0].end_inclusive #=> Integer
resp.filters[0].criteria.related_vulnerabilities #=> Array
resp.filters[0].criteria.related_vulnerabilities[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.related_vulnerabilities[0].value #=> String
resp.filters[0].criteria.resource_id #=> Array
resp.filters[0].criteria.resource_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.resource_id[0].value #=> String
resp.filters[0].criteria.resource_tags #=> Array
resp.filters[0].criteria.resource_tags[0].comparison #=> String, one of "EQUALS"
resp.filters[0].criteria.resource_tags[0].key #=> String
resp.filters[0].criteria.resource_tags[0].value #=> String
resp.filters[0].criteria.resource_type #=> Array
resp.filters[0].criteria.resource_type[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.resource_type[0].value #=> String
resp.filters[0].criteria.severity #=> Array
resp.filters[0].criteria.severity[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.severity[0].value #=> String
resp.filters[0].criteria.title #=> Array
resp.filters[0].criteria.title[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.title[0].value #=> String
resp.filters[0].criteria.updated_at #=> Array
resp.filters[0].criteria.updated_at[0].end_inclusive #=> Time
resp.filters[0].criteria.updated_at[0].start_inclusive #=> Time
resp.filters[0].criteria.vendor_severity #=> Array
resp.filters[0].criteria.vendor_severity[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.vendor_severity[0].value #=> String
resp.filters[0].criteria.vulnerability_id #=> Array
resp.filters[0].criteria.vulnerability_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.vulnerability_id[0].value #=> String
resp.filters[0].criteria.vulnerability_source #=> Array
resp.filters[0].criteria.vulnerability_source[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.vulnerability_source[0].value #=> String
resp.filters[0].criteria.vulnerable_packages #=> Array
resp.filters[0].criteria.vulnerable_packages[0].architecture.comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.vulnerable_packages[0].architecture.value #=> String
resp.filters[0].criteria.vulnerable_packages[0].epoch.lower_inclusive #=> Float
resp.filters[0].criteria.vulnerable_packages[0].epoch.upper_inclusive #=> Float
resp.filters[0].criteria.vulnerable_packages[0].file_path.comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.vulnerable_packages[0].file_path.value #=> String
resp.filters[0].criteria.vulnerable_packages[0].name.comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.vulnerable_packages[0].name.value #=> String
resp.filters[0].criteria.vulnerable_packages[0].release.comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.vulnerable_packages[0].release.value #=> String
resp.filters[0].criteria.vulnerable_packages[0].source_lambda_layer_arn.comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.vulnerable_packages[0].source_lambda_layer_arn.value #=> String
resp.filters[0].criteria.vulnerable_packages[0].source_layer_hash.comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.vulnerable_packages[0].source_layer_hash.value #=> String
resp.filters[0].criteria.vulnerable_packages[0].version.comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS"
resp.filters[0].criteria.vulnerable_packages[0].version.value #=> String
resp.filters[0].description #=> String
resp.filters[0].name #=> String
resp.filters[0].owner_id #=> String
resp.filters[0].reason #=> String
resp.filters[0].tags #=> Hash
resp.filters[0].tags["MapKey"] #=> String
resp.filters[0].updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :action (String)

    The action the filter applies to matched findings.

  • :arns (Array<String>)

    The Amazon resource number (ARN) of the filter.

  • :max_results (Integer)

    The maximum number of results the response can return. If your request would return more than the maximum the response will return a nextToken value, use this value when you call the action again to get the remaining results.

  • :next_token (String)

    A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. If your response returns more than the maxResults maximum value it will also return a nextToken value. For subsequent calls, use the nextToken value returned from the previous request to continue listing results after the first page.

Returns:

See Also:



3517
3518
3519
3520
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 3517

def list_filters(params = {}, options = {})
  req = build_request(:list_filters, params)
  req.send_request(options)
end

#list_finding_aggregations(params = {}) ⇒ Types::ListFindingAggregationsResponse

Lists aggregated finding data for your environment based on specific criteria.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_finding_aggregations({
  account_ids: [
    {
      comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
      value: "StringInput", # required
    },
  ],
  aggregation_request: {
    account_aggregation: {
      finding_type: "NETWORK_REACHABILITY", # accepts NETWORK_REACHABILITY, PACKAGE_VULNERABILITY, CODE_VULNERABILITY
      resource_type: "AWS_EC2_INSTANCE", # accepts AWS_EC2_INSTANCE, AWS_ECR_CONTAINER_IMAGE, AWS_LAMBDA_FUNCTION
      sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL
      sort_order: "ASC", # accepts ASC, DESC
    },
    ami_aggregation: {
      amis: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL, AFFECTED_INSTANCES
      sort_order: "ASC", # accepts ASC, DESC
    },
    aws_ecr_container_aggregation: {
      architectures: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      image_shas: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      image_tags: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      repositories: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      resource_ids: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL
      sort_order: "ASC", # accepts ASC, DESC
    },
    ec2_instance_aggregation: {
      amis: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      instance_ids: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      instance_tags: [
        {
          comparison: "EQUALS", # required, accepts EQUALS
          key: "MapKey", # required
          value: "MapValue",
        },
      ],
      operating_systems: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      sort_by: "NETWORK_FINDINGS", # accepts NETWORK_FINDINGS, CRITICAL, HIGH, ALL
      sort_order: "ASC", # accepts ASC, DESC
    },
    finding_type_aggregation: {
      finding_type: "NETWORK_REACHABILITY", # accepts NETWORK_REACHABILITY, PACKAGE_VULNERABILITY, CODE_VULNERABILITY
      resource_type: "AWS_EC2_INSTANCE", # accepts AWS_EC2_INSTANCE, AWS_ECR_CONTAINER_IMAGE, AWS_LAMBDA_FUNCTION
      sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL
      sort_order: "ASC", # accepts ASC, DESC
    },
    image_layer_aggregation: {
      layer_hashes: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      repositories: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      resource_ids: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL
      sort_order: "ASC", # accepts ASC, DESC
    },
    lambda_function_aggregation: {
      function_names: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      function_tags: [
        {
          comparison: "EQUALS", # required, accepts EQUALS
          key: "MapKey", # required
          value: "MapValue",
        },
      ],
      resource_ids: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      runtimes: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL
      sort_order: "ASC", # accepts ASC, DESC
    },
    lambda_layer_aggregation: {
      function_names: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      layer_arns: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      resource_ids: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL
      sort_order: "ASC", # accepts ASC, DESC
    },
    package_aggregation: {
      package_names: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL
      sort_order: "ASC", # accepts ASC, DESC
    },
    repository_aggregation: {
      repositories: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL, AFFECTED_IMAGES
      sort_order: "ASC", # accepts ASC, DESC
    },
    title_aggregation: {
      finding_type: "NETWORK_REACHABILITY", # accepts NETWORK_REACHABILITY, PACKAGE_VULNERABILITY, CODE_VULNERABILITY
      resource_type: "AWS_EC2_INSTANCE", # accepts AWS_EC2_INSTANCE, AWS_ECR_CONTAINER_IMAGE, AWS_LAMBDA_FUNCTION
      sort_by: "CRITICAL", # accepts CRITICAL, HIGH, ALL
      sort_order: "ASC", # accepts ASC, DESC
      titles: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
      vulnerability_ids: [
        {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      ],
    },
  },
  aggregation_type: "FINDING_TYPE", # required, accepts FINDING_TYPE, PACKAGE, TITLE, REPOSITORY, AMI, AWS_EC2_INSTANCE, AWS_ECR_CONTAINER, IMAGE_LAYER, ACCOUNT, AWS_LAMBDA_FUNCTION, LAMBDA_LAYER
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.aggregation_type #=> String, one of "FINDING_TYPE", "PACKAGE", "TITLE", "REPOSITORY", "AMI", "AWS_EC2_INSTANCE", "AWS_ECR_CONTAINER", "IMAGE_LAYER", "ACCOUNT", "AWS_LAMBDA_FUNCTION", "LAMBDA_LAYER"
resp.next_token #=> String
resp.responses #=> Array
resp.responses[0].. #=> String
resp.responses[0]..exploit_available_count #=> Integer
resp.responses[0]..fix_available_count #=> Integer
resp.responses[0]..severity_counts.all #=> Integer
resp.responses[0]..severity_counts.critical #=> Integer
resp.responses[0]..severity_counts.high #=> Integer
resp.responses[0]..severity_counts.medium #=> Integer
resp.responses[0].ami_aggregation. #=> String
resp.responses[0].ami_aggregation.affected_instances #=> Integer
resp.responses[0].ami_aggregation.ami #=> String
resp.responses[0].ami_aggregation.severity_counts.all #=> Integer
resp.responses[0].ami_aggregation.severity_counts.critical #=> Integer
resp.responses[0].ami_aggregation.severity_counts.high #=> Integer
resp.responses[0].ami_aggregation.severity_counts.medium #=> Integer
resp.responses[0].aws_ecr_container_aggregation. #=> String
resp.responses[0].aws_ecr_container_aggregation.architecture #=> String
resp.responses[0].aws_ecr_container_aggregation.image_sha #=> String
resp.responses[0].aws_ecr_container_aggregation.image_tags #=> Array
resp.responses[0].aws_ecr_container_aggregation.image_tags[0] #=> String
resp.responses[0].aws_ecr_container_aggregation.repository #=> String
resp.responses[0].aws_ecr_container_aggregation.resource_id #=> String
resp.responses[0].aws_ecr_container_aggregation.severity_counts.all #=> Integer
resp.responses[0].aws_ecr_container_aggregation.severity_counts.critical #=> Integer
resp.responses[0].aws_ecr_container_aggregation.severity_counts.high #=> Integer
resp.responses[0].aws_ecr_container_aggregation.severity_counts.medium #=> Integer
resp.responses[0].ec2_instance_aggregation. #=> String
resp.responses[0].ec2_instance_aggregation.ami #=> String
resp.responses[0].ec2_instance_aggregation.instance_id #=> String
resp.responses[0].ec2_instance_aggregation.instance_tags #=> Hash
resp.responses[0].ec2_instance_aggregation.instance_tags["MapKey"] #=> String
resp.responses[0].ec2_instance_aggregation.network_findings #=> Integer
resp.responses[0].ec2_instance_aggregation.operating_system #=> String
resp.responses[0].ec2_instance_aggregation.severity_counts.all #=> Integer
resp.responses[0].ec2_instance_aggregation.severity_counts.critical #=> Integer
resp.responses[0].ec2_instance_aggregation.severity_counts.high #=> Integer
resp.responses[0].ec2_instance_aggregation.severity_counts.medium #=> Integer
resp.responses[0].finding_type_aggregation. #=> String
resp.responses[0].finding_type_aggregation.exploit_available_count #=> Integer
resp.responses[0].finding_type_aggregation.fix_available_count #=> Integer
resp.responses[0].finding_type_aggregation.severity_counts.all #=> Integer
resp.responses[0].finding_type_aggregation.severity_counts.critical #=> Integer
resp.responses[0].finding_type_aggregation.severity_counts.high #=> Integer
resp.responses[0].finding_type_aggregation.severity_counts.medium #=> Integer
resp.responses[0].image_layer_aggregation. #=> String
resp.responses[0].image_layer_aggregation.layer_hash #=> String
resp.responses[0].image_layer_aggregation.repository #=> String
resp.responses[0].image_layer_aggregation.resource_id #=> String
resp.responses[0].image_layer_aggregation.severity_counts.all #=> Integer
resp.responses[0].image_layer_aggregation.severity_counts.critical #=> Integer
resp.responses[0].image_layer_aggregation.severity_counts.high #=> Integer
resp.responses[0].image_layer_aggregation.severity_counts.medium #=> Integer
resp.responses[0].lambda_function_aggregation. #=> String
resp.responses[0].lambda_function_aggregation.function_name #=> String
resp.responses[0].lambda_function_aggregation.lambda_tags #=> Hash
resp.responses[0].lambda_function_aggregation.lambda_tags["MapKey"] #=> String
resp.responses[0].lambda_function_aggregation.last_modified_at #=> Time
resp.responses[0].lambda_function_aggregation.resource_id #=> String
resp.responses[0].lambda_function_aggregation.runtime #=> String
resp.responses[0].lambda_function_aggregation.severity_counts.all #=> Integer
resp.responses[0].lambda_function_aggregation.severity_counts.critical #=> Integer
resp.responses[0].lambda_function_aggregation.severity_counts.high #=> Integer
resp.responses[0].lambda_function_aggregation.severity_counts.medium #=> Integer
resp.responses[0].lambda_layer_aggregation. #=> String
resp.responses[0].lambda_layer_aggregation.function_name #=> String
resp.responses[0].lambda_layer_aggregation.layer_arn #=> String
resp.responses[0].lambda_layer_aggregation.resource_id #=> String
resp.responses[0].lambda_layer_aggregation.severity_counts.all #=> Integer
resp.responses[0].lambda_layer_aggregation.severity_counts.critical #=> Integer
resp.responses[0].lambda_layer_aggregation.severity_counts.high #=> Integer
resp.responses[0].lambda_layer_aggregation.severity_counts.medium #=> Integer
resp.responses[0].package_aggregation. #=> String
resp.responses[0].package_aggregation.package_name #=> String
resp.responses[0].package_aggregation.severity_counts.all #=> Integer
resp.responses[0].package_aggregation.severity_counts.critical #=> Integer
resp.responses[0].package_aggregation.severity_counts.high #=> Integer
resp.responses[0].package_aggregation.severity_counts.medium #=> Integer
resp.responses[0].repository_aggregation. #=> String
resp.responses[0].repository_aggregation.affected_images #=> Integer
resp.responses[0].repository_aggregation.repository #=> String
resp.responses[0].repository_aggregation.severity_counts.all #=> Integer
resp.responses[0].repository_aggregation.severity_counts.critical #=> Integer
resp.responses[0].repository_aggregation.severity_counts.high #=> Integer
resp.responses[0].repository_aggregation.severity_counts.medium #=> Integer
resp.responses[0].title_aggregation. #=> String
resp.responses[0].title_aggregation.severity_counts.all #=> Integer
resp.responses[0].title_aggregation.severity_counts.critical #=> Integer
resp.responses[0].title_aggregation.severity_counts.high #=> Integer
resp.responses[0].title_aggregation.severity_counts.medium #=> Integer
resp.responses[0].title_aggregation.title #=> String
resp.responses[0].title_aggregation.vulnerability_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :account_ids (Array<Types::StringFilter>)

    The Amazon Web Services account IDs to retrieve finding aggregation data for.

  • :aggregation_request (Types::AggregationRequest)

    Details of the aggregation request that is used to filter your aggregation results.

  • :aggregation_type (required, String)

    The type of the aggregation request.

  • :max_results (Integer)

    The maximum number of results the response can return. If your request would return more than the maximum the response will return a nextToken value, use this value when you call the action again to get the remaining results.

  • :next_token (String)

    A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. If your response returns more than the maxResults maximum value it will also return a nextToken value. For subsequent calls, use the nextToken value returned from the previous request to continue listing results after the first page.

Returns:

See Also:



3870
3871
3872
3873
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 3870

def list_finding_aggregations(params = {}, options = {})
  req = build_request(:list_finding_aggregations, params)
  req.send_request(options)
end

#list_findings(params = {}) ⇒ Types::ListFindingsResponse

Lists findings for your environment.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_findings({
  filter_criteria: {
    aws_account_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    code_vulnerability_detector_name: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    code_vulnerability_detector_tags: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    code_vulnerability_file_path: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    component_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    component_type: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ec2_instance_image_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ec2_instance_subnet_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ec2_instance_vpc_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ecr_image_architecture: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ecr_image_hash: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ecr_image_pushed_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    ecr_image_registry: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ecr_image_repository_name: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    ecr_image_tags: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    epss_score: [
      {
        lower_inclusive: 1.0,
        upper_inclusive: 1.0,
      },
    ],
    exploit_available: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    finding_arn: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    finding_status: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    finding_type: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    first_observed_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    fix_available: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    inspector_score: [
      {
        lower_inclusive: 1.0,
        upper_inclusive: 1.0,
      },
    ],
    lambda_function_execution_role_arn: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    lambda_function_last_modified_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    lambda_function_layers: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    lambda_function_name: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    lambda_function_runtime: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    last_observed_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    network_protocol: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    port_range: [
      {
        begin_inclusive: 1,
        end_inclusive: 1,
      },
    ],
    related_vulnerabilities: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    resource_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    resource_tags: [
      {
        comparison: "EQUALS", # required, accepts EQUALS
        key: "MapKey", # required
        value: "MapValue",
      },
    ],
    resource_type: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    severity: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    title: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    updated_at: [
      {
        end_inclusive: Time.now,
        start_inclusive: Time.now,
      },
    ],
    vendor_severity: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    vulnerability_id: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    vulnerability_source: [
      {
        comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
        value: "StringInput", # required
      },
    ],
    vulnerable_packages: [
      {
        architecture: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
        epoch: {
          lower_inclusive: 1.0,
          upper_inclusive: 1.0,
        },
        file_path: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
        name: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
        release: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
        source_lambda_layer_arn: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
        source_layer_hash: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
        version: {
          comparison: "EQUALS", # required, accepts EQUALS, PREFIX, NOT_EQUALS
          value: "StringInput", # required
        },
      },
    ],
  },
  max_results: 1,
  next_token: "NextToken",
  sort_criteria: {
    field: "AWS_ACCOUNT_ID", # required, accepts AWS_ACCOUNT_ID, FINDING_TYPE, SEVERITY, FIRST_OBSERVED_AT, LAST_OBSERVED_AT, FINDING_STATUS, RESOURCE_TYPE, ECR_IMAGE_PUSHED_AT, ECR_IMAGE_REPOSITORY_NAME, ECR_IMAGE_REGISTRY, NETWORK_PROTOCOL, COMPONENT_TYPE, VULNERABILITY_ID, VULNERABILITY_SOURCE, INSPECTOR_SCORE, VENDOR_SEVERITY, EPSS_SCORE
    sort_order: "ASC", # required, accepts ASC, DESC
  },
})

Response structure


resp.findings #=> Array
resp.findings[0]. #=> String
resp.findings[0].code_vulnerability_details.cwes #=> Array
resp.findings[0].code_vulnerability_details.cwes[0] #=> String
resp.findings[0].code_vulnerability_details.detector_id #=> String
resp.findings[0].code_vulnerability_details.detector_name #=> String
resp.findings[0].code_vulnerability_details.detector_tags #=> Array
resp.findings[0].code_vulnerability_details.detector_tags[0] #=> String
resp.findings[0].code_vulnerability_details.file_path.end_line #=> Integer
resp.findings[0].code_vulnerability_details.file_path.file_name #=> String
resp.findings[0].code_vulnerability_details.file_path.file_path #=> String
resp.findings[0].code_vulnerability_details.file_path.start_line #=> Integer
resp.findings[0].code_vulnerability_details.reference_urls #=> Array
resp.findings[0].code_vulnerability_details.reference_urls[0] #=> String
resp.findings[0].code_vulnerability_details.rule_id #=> String
resp.findings[0].code_vulnerability_details.source_lambda_layer_arn #=> String
resp.findings[0].description #=> String
resp.findings[0].epss.score #=> Float
resp.findings[0].exploit_available #=> String, one of "YES", "NO"
resp.findings[0].exploitability_details.last_known_exploit_at #=> Time
resp.findings[0].finding_arn #=> String
resp.findings[0].first_observed_at #=> Time
resp.findings[0].fix_available #=> String, one of "YES", "NO", "PARTIAL"
resp.findings[0].inspector_score #=> Float
resp.findings[0].inspector_score_details.adjusted_cvss.adjustments #=> Array
resp.findings[0].inspector_score_details.adjusted_cvss.adjustments[0].metric #=> String
resp.findings[0].inspector_score_details.adjusted_cvss.adjustments[0].reason #=> String
resp.findings[0].inspector_score_details.adjusted_cvss.cvss_source #=> String
resp.findings[0].inspector_score_details.adjusted_cvss.score #=> Float
resp.findings[0].inspector_score_details.adjusted_cvss.score_source #=> String
resp.findings[0].inspector_score_details.adjusted_cvss.scoring_vector #=> String
resp.findings[0].inspector_score_details.adjusted_cvss.version #=> String
resp.findings[0].last_observed_at #=> Time
resp.findings[0].network_reachability_details.network_path.steps #=> Array
resp.findings[0].network_reachability_details.network_path.steps[0].component_id #=> String
resp.findings[0].network_reachability_details.network_path.steps[0].component_type #=> String
resp.findings[0].network_reachability_details.open_port_range.begin #=> Integer
resp.findings[0].network_reachability_details.open_port_range.end #=> Integer
resp.findings[0].network_reachability_details.protocol #=> String, one of "TCP", "UDP"
resp.findings[0].package_vulnerability_details.cvss #=> Array
resp.findings[0].package_vulnerability_details.cvss[0].base_score #=> Float
resp.findings[0].package_vulnerability_details.cvss[0].scoring_vector #=> String
resp.findings[0].package_vulnerability_details.cvss[0].source #=> String
resp.findings[0].package_vulnerability_details.cvss[0].version #=> String
resp.findings[0].package_vulnerability_details.reference_urls #=> Array
resp.findings[0].package_vulnerability_details.reference_urls[0] #=> String
resp.findings[0].package_vulnerability_details.related_vulnerabilities #=> Array
resp.findings[0].package_vulnerability_details.related_vulnerabilities[0] #=> String
resp.findings[0].package_vulnerability_details.source #=> String
resp.findings[0].package_vulnerability_details.source_url #=> String
resp.findings[0].package_vulnerability_details.vendor_created_at #=> Time
resp.findings[0].package_vulnerability_details.vendor_severity #=> String
resp.findings[0].package_vulnerability_details.vendor_updated_at #=> Time
resp.findings[0].package_vulnerability_details.vulnerability_id #=> String
resp.findings[0].package_vulnerability_details.vulnerable_packages #=> Array
resp.findings[0].package_vulnerability_details.vulnerable_packages[0].arch #=> String
resp.findings[0].package_vulnerability_details.vulnerable_packages[0].epoch #=> Integer
resp.findings[0].package_vulnerability_details.vulnerable_packages[0].file_path #=> String
resp.findings[0].package_vulnerability_details.vulnerable_packages[0].fixed_in_version #=> String
resp.findings[0].package_vulnerability_details.vulnerable_packages[0].name #=> String
resp.findings[0].package_vulnerability_details.vulnerable_packages[0].package_manager #=> String, one of "BUNDLER", "CARGO", "COMPOSER", "NPM", "NUGET", "PIPENV", "POETRY", "YARN", "GOBINARY", "GOMOD", "JAR", "OS", "PIP", "PYTHONPKG", "NODEPKG", "POM", "GEMSPEC", "DOTNET_CORE"
resp.findings[0].package_vulnerability_details.vulnerable_packages[0].release #=> String
resp.findings[0].package_vulnerability_details.vulnerable_packages[0].remediation #=> String
resp.findings[0].package_vulnerability_details.vulnerable_packages[0].source_lambda_layer_arn #=> String
resp.findings[0].package_vulnerability_details.vulnerable_packages[0].source_layer_hash #=> String
resp.findings[0].package_vulnerability_details.vulnerable_packages[0].version #=> String
resp.findings[0].remediation.recommendation.url #=> String
resp.findings[0].remediation.recommendation.text #=> String
resp.findings[0].resources #=> Array
resp.findings[0].resources[0].details.aws_ec2_instance.iam_instance_profile_arn #=> String
resp.findings[0].resources[0].details.aws_ec2_instance.image_id #=> String
resp.findings[0].resources[0].details.aws_ec2_instance.ip_v4_addresses #=> Array
resp.findings[0].resources[0].details.aws_ec2_instance.ip_v4_addresses[0] #=> String
resp.findings[0].resources[0].details.aws_ec2_instance.ip_v6_addresses #=> Array
resp.findings[0].resources[0].details.aws_ec2_instance.ip_v6_addresses[0] #=> String
resp.findings[0].resources[0].details.aws_ec2_instance.key_name #=> String
resp.findings[0].resources[0].details.aws_ec2_instance.launched_at #=> Time
resp.findings[0].resources[0].details.aws_ec2_instance.platform #=> String
resp.findings[0].resources[0].details.aws_ec2_instance.subnet_id #=> String
resp.findings[0].resources[0].details.aws_ec2_instance.type #=> String
resp.findings[0].resources[0].details.aws_ec2_instance.vpc_id #=> String
resp.findings[0].resources[0].details.aws_ecr_container_image.architecture #=> String
resp.findings[0].resources[0].details.aws_ecr_container_image.author #=> String
resp.findings[0].resources[0].details.aws_ecr_container_image.image_hash #=> String
resp.findings[0].resources[0].details.aws_ecr_container_image.image_tags #=> Array
resp.findings[0].resources[0].details.aws_ecr_container_image.image_tags[0] #=> String
resp.findings[0].resources[0].details.aws_ecr_container_image.platform #=> String
resp.findings[0].resources[0].details.aws_ecr_container_image.pushed_at #=> Time
resp.findings[0].resources[0].details.aws_ecr_container_image.registry #=> String
resp.findings[0].resources[0].details.aws_ecr_container_image.repository_name #=> String
resp.findings[0].resources[0].details.aws_lambda_function.architectures #=> Array
resp.findings[0].resources[0].details.aws_lambda_function.architectures[0] #=> String, one of "X86_64", "ARM64"
resp.findings[0].resources[0].details.aws_lambda_function.code_sha_256 #=> String
resp.findings[0].resources[0].details.aws_lambda_function.execution_role_arn #=> String
resp.findings[0].resources[0].details.aws_lambda_function.function_name #=> String
resp.findings[0].resources[0].details.aws_lambda_function.last_modified_at #=> Time
resp.findings[0].resources[0].details.aws_lambda_function.layers #=> Array
resp.findings[0].resources[0].details.aws_lambda_function.layers[0] #=> String
resp.findings[0].resources[0].details.aws_lambda_function.package_type #=> String, one of "IMAGE", "ZIP"
resp.findings[0].resources[0].details.aws_lambda_function.runtime #=> String, one of "NODEJS", "NODEJS_12_X", "NODEJS_14_X", "NODEJS_16_X", "JAVA_8", "JAVA_8_AL2", "JAVA_11", "PYTHON_3_7", "PYTHON_3_8", "PYTHON_3_9", "UNSUPPORTED", "NODEJS_18_X", "GO_1_X", "JAVA_17", "PYTHON_3_10", "PYTHON_3_11", "DOTNETCORE_3_1", "DOTNET_6", "DOTNET_7", "RUBY_2_7", "RUBY_3_2"
resp.findings[0].resources[0].details.aws_lambda_function.version #=> String
resp.findings[0].resources[0].details.aws_lambda_function.vpc_config.security_group_ids #=> Array
resp.findings[0].resources[0].details.aws_lambda_function.vpc_config.security_group_ids[0] #=> String
resp.findings[0].resources[0].details.aws_lambda_function.vpc_config.subnet_ids #=> Array
resp.findings[0].resources[0].details.aws_lambda_function.vpc_config.subnet_ids[0] #=> String
resp.findings[0].resources[0].details.aws_lambda_function.vpc_config.vpc_id #=> String
resp.findings[0].resources[0].id #=> String
resp.findings[0].resources[0].partition #=> String
resp.findings[0].resources[0].region #=> String
resp.findings[0].resources[0].tags #=> Hash
resp.findings[0].resources[0].tags["MapKey"] #=> String
resp.findings[0].resources[0].type #=> String, one of "AWS_EC2_INSTANCE", "AWS_ECR_CONTAINER_IMAGE", "AWS_ECR_REPOSITORY", "AWS_LAMBDA_FUNCTION"
resp.findings[0].severity #=> String, one of "INFORMATIONAL", "LOW", "MEDIUM", "HIGH", "CRITICAL", "UNTRIAGED"
resp.findings[0].status #=> String, one of "ACTIVE", "SUPPRESSED", "CLOSED"
resp.findings[0].title #=> String
resp.findings[0].type #=> String, one of "NETWORK_REACHABILITY", "PACKAGE_VULNERABILITY", "CODE_VULNERABILITY"
resp.findings[0].updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filter_criteria (Types::FilterCriteria)

    Details on the filters to apply to your finding results.

  • :max_results (Integer)

    The maximum number of results the response can return. If your request would return more than the maximum the response will return a nextToken value, use this value when you call the action again to get the remaining results.

  • :next_token (String)

    A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. If your response returns more than the maxResults maximum value it will also return a nextToken value. For subsequent calls, use the nextToken value returned from the previous request to continue listing results after the first page.

  • :sort_criteria (Types::SortCriteria)

    Details on the sort criteria to apply to your finding results.

Returns:

See Also:



4325
4326
4327
4328
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 4325

def list_findings(params = {}, options = {})
  req = build_request(:list_findings, params)
  req.send_request(options)
end

#list_members(params = {}) ⇒ Types::ListMembersResponse

List members associated with the Amazon Inspector delegated administrator for your organization.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_members({
  max_results: 1,
  next_token: "NextToken",
  only_associated: false,
})

Response structure


resp.members #=> Array
resp.members[0]. #=> String
resp.members[0]. #=> String
resp.members[0].relationship_status #=> String, one of "CREATED", "INVITED", "DISABLED", "ENABLED", "REMOVED", "RESIGNED", "DELETED", "EMAIL_VERIFICATION_IN_PROGRESS", "EMAIL_VERIFICATION_FAILED", "REGION_DISABLED", "ACCOUNT_SUSPENDED", "CANNOT_CREATE_DETECTOR_IN_ORG_MASTER"
resp.members[0].updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of results the response can return. If your request would return more than the maximum the response will return a nextToken value, use this value when you call the action again to get the remaining results.

  • :next_token (String)

    A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. If your response returns more than the maxResults maximum value it will also return a nextToken value. For subsequent calls, use the nextToken value returned from the previous request to continue listing results after the first page.

  • :only_associated (Boolean)

    Specifies whether to list only currently associated members if True or to list all members within the organization if False.

Returns:

See Also:



4379
4380
4381
4382
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 4379

def list_members(params = {}, options = {})
  req = build_request(:list_members, params)
  req.send_request(options)
end

#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse

Lists all tags attached to a given resource.

Examples:

Request syntax with placeholder values


resp = client.list_tags_for_resource({
  resource_arn: "Arn", # required
})

Response structure


resp.tags #=> Hash
resp.tags["MapKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon resource number (ARN) of the resource to list tags of.

Returns:

See Also:



4408
4409
4410
4411
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 4408

def list_tags_for_resource(params = {}, options = {})
  req = build_request(:list_tags_for_resource, params)
  req.send_request(options)
end

#list_usage_totals(params = {}) ⇒ Types::ListUsageTotalsResponse

Lists the Amazon Inspector usage totals over the last 30 days.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_usage_totals({
  account_ids: ["UsageAccountId"],
  max_results: 1,
  next_token: "ListUsageTotalsNextToken",
})

Response structure


resp.next_token #=> String
resp.totals #=> Array
resp.totals[0]. #=> String
resp.totals[0].usage #=> Array
resp.totals[0].usage[0].currency #=> String, one of "USD"
resp.totals[0].usage[0].estimated_monthly_cost #=> Float
resp.totals[0].usage[0].total #=> Float
resp.totals[0].usage[0].type #=> String, one of "EC2_INSTANCE_HOURS", "ECR_INITIAL_SCAN", "ECR_RESCAN", "LAMBDA_FUNCTION_HOURS", "LAMBDA_FUNCTION_CODE_HOURS"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :account_ids (Array<String>)

    The Amazon Web Services account IDs to retrieve usage totals for.

  • :max_results (Integer)

    The maximum number of results the response can return. If your request would return more than the maximum the response will return a nextToken value, use this value when you call the action again to get the remaining results.

  • :next_token (String)

    A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. If your response returns more than the maxResults maximum value it will also return a nextToken value. For subsequent calls, use the nextToken value returned from the previous request to continue listing results after the first page.

Returns:

See Also:



4462
4463
4464
4465
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 4462

def list_usage_totals(params = {}, options = {})
  req = build_request(:list_usage_totals, params)
  req.send_request(options)
end

#reset_encryption_key(params = {}) ⇒ Struct

Resets an encryption key. After the key is reset your resources will be encrypted by an Amazon Web Services owned key.

Examples:

Request syntax with placeholder values


resp = client.reset_encryption_key({
  resource_type: "AWS_EC2_INSTANCE", # required, accepts AWS_EC2_INSTANCE, AWS_ECR_CONTAINER_IMAGE, AWS_ECR_REPOSITORY, AWS_LAMBDA_FUNCTION
  scan_type: "NETWORK", # required, accepts NETWORK, PACKAGE, CODE
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_type (required, String)

    The resource type the key encrypts.

  • :scan_type (required, String)

    The scan type the key encrypts.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4489
4490
4491
4492
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 4489

def reset_encryption_key(params = {}, options = {})
  req = build_request(:reset_encryption_key, params)
  req.send_request(options)
end

#search_vulnerabilities(params = {}) ⇒ Types::SearchVulnerabilitiesResponse

Lists Amazon Inspector coverage details for a specific vulnerability.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.search_vulnerabilities({
  filter_criteria: { # required
    vulnerability_ids: ["VulnId"], # required
  },
  next_token: "NextToken",
})

Response structure


resp.next_token #=> String
resp.vulnerabilities #=> Array
resp.vulnerabilities[0].atig_data.first_seen #=> Time
resp.vulnerabilities[0].atig_data.last_seen #=> Time
resp.vulnerabilities[0].atig_data.targets #=> Array
resp.vulnerabilities[0].atig_data.targets[0] #=> String
resp.vulnerabilities[0].atig_data.ttps #=> Array
resp.vulnerabilities[0].atig_data.ttps[0] #=> String
resp.vulnerabilities[0].cisa_data.action #=> String
resp.vulnerabilities[0].cisa_data.date_added #=> Time
resp.vulnerabilities[0].cisa_data.date_due #=> Time
resp.vulnerabilities[0].cvss2.base_score #=> Float
resp.vulnerabilities[0].cvss2.scoring_vector #=> String
resp.vulnerabilities[0].cvss3.base_score #=> Float
resp.vulnerabilities[0].cvss3.scoring_vector #=> String
resp.vulnerabilities[0].cwes #=> Array
resp.vulnerabilities[0].cwes[0] #=> String
resp.vulnerabilities[0].description #=> String
resp.vulnerabilities[0].detection_platforms #=> Array
resp.vulnerabilities[0].detection_platforms[0] #=> String
resp.vulnerabilities[0].epss.score #=> Float
resp.vulnerabilities[0].exploit_observed.first_seen #=> Time
resp.vulnerabilities[0].exploit_observed.last_seen #=> Time
resp.vulnerabilities[0].id #=> String
resp.vulnerabilities[0].reference_urls #=> Array
resp.vulnerabilities[0].reference_urls[0] #=> String
resp.vulnerabilities[0].related_vulnerabilities #=> Array
resp.vulnerabilities[0].related_vulnerabilities[0] #=> String
resp.vulnerabilities[0].source #=> String, one of "NVD"
resp.vulnerabilities[0].source_url #=> String
resp.vulnerabilities[0].vendor_created_at #=> Time
resp.vulnerabilities[0].vendor_severity #=> String
resp.vulnerabilities[0].vendor_updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filter_criteria (required, Types::SearchVulnerabilitiesFilterCriteria)

    The criteria used to filter the results of a vulnerability search.

  • :next_token (String)

    A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request to a list action. For subsequent calls, use the NextToken value returned from the previous request to continue listing results after the first page.

Returns:

See Also:



4562
4563
4564
4565
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 4562

def search_vulnerabilities(params = {}, options = {})
  req = build_request(:search_vulnerabilities, params)
  req.send_request(options)
end

#send_cis_session_health(params = {}) ⇒ Struct

Sends a CIS session health. This API is used by the Amazon Inspector SSM plugin to communicate with the Amazon Inspector service. The Amazon Inspector SSM plugin calls this API to start a CIS scan session for the scan ID supplied by the service.

Examples:

Request syntax with placeholder values


resp = client.send_cis_session_health({
  scan_job_id: "UUID", # required
  session_token: "UUID", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :scan_job_id (required, String)

    A unique identifier for the scan job.

  • :session_token (required, String)

    The unique token that identifies the CIS session.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4591
4592
4593
4594
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 4591

def send_cis_session_health(params = {}, options = {})
  req = build_request(:send_cis_session_health, params)
  req.send_request(options)
end

#send_cis_session_telemetry(params = {}) ⇒ Struct

Sends a CIS session telemetry. This API is used by the Amazon Inspector SSM plugin to communicate with the Amazon Inspector service. The Amazon Inspector SSM plugin calls this API to start a CIS scan session for the scan ID supplied by the service.

Examples:

Request syntax with placeholder values


resp = client.send_cis_session_telemetry({
  messages: [ # required
    {
      cis_rule_details: "data", # required
      rule_id: "RuleId", # required
      status: "FAILED", # required, accepts FAILED, PASSED, NOT_EVALUATED, INFORMATIONAL, UNKNOWN, NOT_APPLICABLE, ERROR
    },
  ],
  scan_job_id: "UUID", # required
  session_token: "UUID", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :messages (required, Array<Types::CisSessionMessage>)

    The CIS session telemetry messages.

  • :scan_job_id (required, String)

    A unique identifier for the scan job.

  • :session_token (required, String)

    The unique token that identifies the CIS session.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4630
4631
4632
4633
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 4630

def send_cis_session_telemetry(params = {}, options = {})
  req = build_request(:send_cis_session_telemetry, params)
  req.send_request(options)
end

#start_cis_session(params = {}) ⇒ Struct

Starts a CIS session. This API is used by the Amazon Inspector SSM plugin to communicate with the Amazon Inspector service. The Amazon Inspector SSM plugin calls this API to start a CIS scan session for the scan ID supplied by the service.

Examples:

Request syntax with placeholder values


resp = client.start_cis_session({
  message: { # required
    session_token: "UUID", # required
  },
  scan_job_id: "UUID", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :message (required, Types::StartCisSessionMessage)

    The start CIS session message.

  • :scan_job_id (required, String)

    A unique identifier for the scan job.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4661
4662
4663
4664
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 4661

def start_cis_session(params = {}, options = {})
  req = build_request(:start_cis_session, params)
  req.send_request(options)
end

#stop_cis_session(params = {}) ⇒ Struct

Stops a CIS session. This API is used by the Amazon Inspector SSM plugin to communicate with the Amazon Inspector service. The Amazon Inspector SSM plugin calls this API to stop a CIS scan session for the scan ID supplied by the service.

Examples:

Request syntax with placeholder values


resp = client.stop_cis_session({
  message: { # required
    benchmark_profile: "BenchmarkProfile",
    benchmark_version: "BenchmarkVersion",
    compute_platform: {
      product: "Product",
      vendor: "Vendor",
      version: "PlatformVersion",
    },
    progress: { # required
      error_checks: 1,
      failed_checks: 1,
      informational_checks: 1,
      not_applicable_checks: 1,
      not_evaluated_checks: 1,
      successful_checks: 1,
      total_checks: 1,
      unknown_checks: 1,
    },
    reason: "Reason",
    status: "SUCCESS", # required, accepts SUCCESS, FAILED, INTERRUPTED, UNSUPPORTED_OS
  },
  scan_job_id: "UUID", # required
  session_token: "UUID", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :message (required, Types::StopCisSessionMessage)

    The stop CIS session message.

  • :scan_job_id (required, String)

    A unique identifier for the scan job.

  • :session_token (required, String)

    The unique token that identifies the CIS session.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4714
4715
4716
4717
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 4714

def stop_cis_session(params = {}, options = {})
  req = build_request(:stop_cis_session, params)
  req.send_request(options)
end

#tag_resource(params = {}) ⇒ Struct

Adds tags to a resource.

Examples:

Request syntax with placeholder values


resp = client.tag_resource({
  resource_arn: "Arn", # required
  tags: { # required
    "MapKey" => "MapValue",
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource to apply a tag to.

  • :tags (required, Hash<String,String>)

    The tags to be added to a resource.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4742
4743
4744
4745
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 4742

def tag_resource(params = {}, options = {})
  req = build_request(:tag_resource, params)
  req.send_request(options)
end

#untag_resource(params = {}) ⇒ Struct

Removes tags from a resource.

Examples:

Request syntax with placeholder values


resp = client.untag_resource({
  resource_arn: "Arn", # required
  tag_keys: ["TagKey"], # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) for the resource to remove tags from.

  • :tag_keys (required, Array<String>)

    The tag keys to remove from the resource.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4768
4769
4770
4771
# File 'gems/aws-sdk-inspector2/lib/aws-sdk-inspector2/client.rb', line 4768

def untag_resource(params = {}, options = {})
  req = build_request(:untag_resource, params)
  req.send_request(options)
end

#update_cis_scan_configuration(params = {}) ⇒ Types::UpdateCisScanConfigurationResponse

Updates a CIS scan configuration.

Examples:

Request syntax with placeholder values


resp = client.update_cis_scan_configuration({
  scan_configuration_arn: "CisScanConfigurationArn", # required
  scan_name: "CisScanName",
  schedule: {
    daily: {
      start_time: { # required
        time_of_day: "TimeOfDay", # required
        timezone: "Timezone", # required
      },
    },
    monthly: {
      day: "SUN", # required, accepts SUN, MON, TUE, WED, THU, FRI, SAT
      start_time: { # required
        time_of_day: "TimeOfDay", # required
        timezone: "Timezone", # required
      },
    },
    one_time: {
    },
    weekly: {
      days: ["SUN"], # required, accepts SUN, MON, TUE, WED, THU, FRI, SAT
      start_time: { # required
        time_of_day: "TimeOfDay", # required
        timezone: "Timezone", # required
      },
    },
  },
  security_level: "LEVEL_1",