# frozen_string_literal: true # WARNING ABOUT GENERATED CODE # # This file is generated. See the contributing guide for more information: # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md # # WARNING ABOUT GENERATED CODE require 'seahorse/client/plugins/content_length.rb' require 'aws-sdk-core/plugins/credentials_configuration.rb' require 'aws-sdk-core/plugins/logging.rb' require 'aws-sdk-core/plugins/param_converter.rb' require 'aws-sdk-core/plugins/param_validator.rb' require 'aws-sdk-core/plugins/user_agent.rb' require 'aws-sdk-core/plugins/helpful_socket_errors.rb' require 'aws-sdk-core/plugins/retry_errors.rb' require 'aws-sdk-core/plugins/global_configuration.rb' require 'aws-sdk-core/plugins/regional_endpoint.rb' require 'aws-sdk-core/plugins/endpoint_discovery.rb' require 'aws-sdk-core/plugins/endpoint_pattern.rb' require 'aws-sdk-core/plugins/response_paging.rb' require 'aws-sdk-core/plugins/stub_responses.rb' require 'aws-sdk-core/plugins/idempotency_token.rb' require 'aws-sdk-core/plugins/jsonvalue_converter.rb' require 'aws-sdk-core/plugins/client_metrics_plugin.rb' require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb' require 'aws-sdk-core/plugins/transfer_encoding.rb' require 'aws-sdk-core/plugins/http_checksum.rb' require 'aws-sdk-core/plugins/checksum_algorithm.rb' require 'aws-sdk-core/plugins/defaults_mode.rb' require 'aws-sdk-core/plugins/recursion_detection.rb' require 'aws-sdk-core/plugins/sign.rb' require 'aws-sdk-core/plugins/protocols/rest_json.rb' Aws::Plugins::GlobalConfiguration.add_identifier(:inspector2) module Aws::Inspector2 # 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](/sdk-for-ruby/v3/developer-guide/setup-config.html). # # See {#initialize} for a full list of supported configuration options. class Client < Seahorse::Client::Base include Aws::ClientStubs @identifier = :inspector2 set_api(ClientApi::API) add_plugin(Seahorse::Client::Plugins::ContentLength) add_plugin(Aws::Plugins::CredentialsConfiguration) add_plugin(Aws::Plugins::Logging) add_plugin(Aws::Plugins::ParamConverter) add_plugin(Aws::Plugins::ParamValidator) add_plugin(Aws::Plugins::UserAgent) add_plugin(Aws::Plugins::HelpfulSocketErrors) add_plugin(Aws::Plugins::RetryErrors) add_plugin(Aws::Plugins::GlobalConfiguration) add_plugin(Aws::Plugins::RegionalEndpoint) add_plugin(Aws::Plugins::EndpointDiscovery) add_plugin(Aws::Plugins::EndpointPattern) add_plugin(Aws::Plugins::ResponsePaging) add_plugin(Aws::Plugins::StubResponses) add_plugin(Aws::Plugins::IdempotencyToken) add_plugin(Aws::Plugins::JsonvalueConverter) add_plugin(Aws::Plugins::ClientMetricsPlugin) add_plugin(Aws::Plugins::ClientMetricsSendPlugin) add_plugin(Aws::Plugins::TransferEncoding) add_plugin(Aws::Plugins::HttpChecksum) add_plugin(Aws::Plugins::ChecksumAlgorithm) add_plugin(Aws::Plugins::DefaultsMode) add_plugin(Aws::Plugins::RecursionDetection) add_plugin(Aws::Plugins::Sign) add_plugin(Aws::Plugins::Protocols::RestJson) add_plugin(Aws::Inspector2::Plugins::Endpoints) # @overload initialize(options) # @param [Hash] options # @option options [required, Aws::CredentialProvider] :credentials # 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`, and `:session_token` options. # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'] # * `~/.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::InstanceProfileCredentails` 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. # # @option options [required, String] :region # 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` # # @option options [String] :access_key_id # # @option options [Boolean] :active_endpoint_cache (false) # When set to `true`, a thread polling for endpoints will be running in # the background every 60 secs (default). Defaults to `false`. # # @option options [Boolean] :adaptive_retry_wait_to_fill (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. # # @option options [Boolean] :client_side_monitoring (false) # When `true`, client-side metrics will be collected for all API requests from # this client. # # @option options [String] :client_side_monitoring_client_id ("") # Allows you to provide an identifier for this client which will be attached to # all generated client side metrics. Defaults to an empty string. # # @option options [String] :client_side_monitoring_host ("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. # # @option options [Integer] :client_side_monitoring_port (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. # # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher) # Allows you to provide a custom client-side monitoring publisher class. By default, # will use the Client Side Monitoring Agent Publisher. # # @option options [Boolean] :convert_params (true) # When `true`, an attempt is made to coerce request parameters into # the required types. # # @option options [Boolean] :correct_clock_skew (true) # Used only in `standard` and adaptive retry modes. Specifies whether to apply # a clock skew correction and retry requests with skewed client clocks. # # @option options [String] :defaults_mode ("legacy") # See {Aws::DefaultsModeConfiguration} for a list of the # accepted modes and the configuration defaults that are included. # # @option options [Boolean] :disable_host_prefix_injection (false) # Set to true to disable SDK automatically adding host prefix # to default service endpoint when available. # # @option options [String] :endpoint # The client endpoint is normally constructed from the `:region` # option. You should only configure an `:endpoint` when connecting # to test or custom endpoints. This should be a valid HTTP(S) URI. # # @option options [Integer] :endpoint_cache_max_entries (1000) # Used for the maximum size limit of the LRU cache storing endpoints data # for endpoint discovery enabled operations. Defaults to 1000. # # @option options [Integer] :endpoint_cache_max_threads (10) # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10. # # @option options [Integer] :endpoint_cache_poll_interval (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. # # @option options [Boolean] :endpoint_discovery (false) # When set to `true`, endpoint discovery will be enabled for operations when available. # # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default) # The log formatter. # # @option options [Symbol] :log_level (:info) # The log level to send messages to the `:logger` at. # # @option options [Logger] :logger # The Logger instance to send log messages to. If this option # is not set, logging will be disabled. # # @option options [Integer] :max_attempts (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. # # @option options [String] :profile ("default") # Used when loading credentials from the shared credentials file # at HOME/.aws/credentials. When not specified, 'default' is used. # # @option options [Proc] :retry_backoff # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay. # This option is only used in the `legacy` retry mode. # # @option options [Float] :retry_base_delay (0.3) # The base delay in seconds used by the default backoff function. This option # is only used in the `legacy` retry mode. # # @option options [Symbol] :retry_jitter (: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 # # @option options [Integer] :retry_limit (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. # # @option options [Integer] :retry_max_delay (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. # # @option options [String] :retry_mode ("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. # # # @option options [String] :secret_access_key # # @option options [String] :session_token # # @option options [Boolean] :stub_responses (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. # # @option options [Aws::TokenProvider] :token_provider # 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. # # @option options [Boolean] :use_dualstack_endpoint # When set to `true`, dualstack enabled endpoints (with `.aws` TLD) # will be used if available. # # @option options [Boolean] :use_fips_endpoint # 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`. # # @option options [Boolean] :validate_params (true) # When `true`, request parameters are validated before # sending the request. # # @option options [Aws::Inspector2::EndpointProvider] :endpoint_provider # 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` # # @option options [URI::HTTP,String] :http_proxy A proxy to send # requests through. Formatted like 'http://proxy.com:123'. # # @option options [Float] :http_open_timeout (15) The number of # seconds to wait when opening a HTTP session before raising a # `Timeout::Error`. # # @option options [Float] :http_read_timeout (60) The default # number of seconds to wait for response data. This value can # safely be set per-request on the session. # # @option options [Float] :http_idle_timeout (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. # # @option options [Float] :http_continue_timeout (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. # # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout # in seconds. # # @option options [Boolean] :http_wire_trace (false) When `true`, # HTTP debug output will be sent to the `:logger`. # # @option options [Boolean] :ssl_verify_peer (true) When `true`, # SSL peer certificates are verified when establishing a # connection. # # @option options [String] :ssl_ca_bundle 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. # # @option options [String] :ssl_ca_directory 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. # def initialize(*args) super end # @!group API Operations # Associates an Amazon Web Services account with an Amazon Inspector # delegated administrator. An HTTP 200 response indicates the # association was successfully started, but doesn’t indicate whether it # was completed. You can check if the association completed by using # [ListMembers][1] for multiple accounts or [GetMembers][2] for a single # account. # # # # [1]: https://docs.aws.amazon.com/inspector/v2/APIReference/API_ListMembers.html # [2]: https://docs.aws.amazon.com/inspector/v2/APIReference/API_GetMember.html # # @option params [required, String] :account_id # The Amazon Web Services account ID of the member account to be # associated. # # @return [Types::AssociateMemberResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::AssociateMemberResponse#account_id #account_id} => String # # @example Request syntax with placeholder values # # resp = client.associate_member({ # account_id: "AccountId", # required # }) # # @example Response structure # # resp.account_id #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/AssociateMember AWS API Documentation # # @overload associate_member(params = {}) # @param [Hash] params ({}) def associate_member(params = {}, options = {}) req = build_request(:associate_member, params) req.send_request(options) end # Retrieves the Amazon Inspector status of multiple Amazon Web Services # accounts within your environment. # # @option params [Array] :account_ids # The 12-digit Amazon Web Services account IDs of the accounts to # retrieve Amazon Inspector status for. # # @return [Types::BatchGetAccountStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::BatchGetAccountStatusResponse#accounts #accounts} => Array<Types::AccountState> # * {Types::BatchGetAccountStatusResponse#failed_accounts #failed_accounts} => Array<Types::FailedAccount> # # @example Request syntax with placeholder values # # resp = client.batch_get_account_status({ # account_ids: ["AccountId"], # }) # # @example Response structure # # resp.accounts #=> Array # resp.accounts[0].account_id #=> 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" # 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" # 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" # 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].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" # 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].account_id #=> 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" # 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].status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED" # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/BatchGetAccountStatus AWS API Documentation # # @overload batch_get_account_status(params = {}) # @param [Hash] params ({}) def batch_get_account_status(params = {}, options = {}) req = build_request(:batch_get_account_status, params) req.send_request(options) end # Gets free trial status for multiple Amazon Web Services accounts. # # @option params [required, Array] :account_ids # The account IDs to get free trial status for. # # @return [Types::BatchGetFreeTrialInfoResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::BatchGetFreeTrialInfoResponse#accounts #accounts} => Array<Types::FreeTrialAccountInfo> # * {Types::BatchGetFreeTrialInfoResponse#failed_accounts #failed_accounts} => Array<Types::FreeTrialInfoError> # # @example Request syntax with placeholder values # # resp = client.batch_get_free_trial_info({ # account_ids: ["MeteringAccountId"], # required # }) # # @example Response structure # # resp.accounts #=> Array # resp.accounts[0].account_id #=> 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" # resp.failed_accounts #=> Array # resp.failed_accounts[0].account_id #=> String # resp.failed_accounts[0].code #=> String, one of "ACCESS_DENIED", "INTERNAL_ERROR" # resp.failed_accounts[0].message #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/BatchGetFreeTrialInfo AWS API Documentation # # @overload batch_get_free_trial_info(params = {}) # @param [Hash] params ({}) def batch_get_free_trial_info(params = {}, options = {}) req = build_request(:batch_get_free_trial_info, params) req.send_request(options) end # 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. # # @option params [Array] :account_ids # The unique identifiers for the Amazon Web Services accounts to # retrieve Amazon Inspector deep inspection activation status for. #

# # @return [Types::BatchGetMemberEc2DeepInspectionStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::BatchGetMemberEc2DeepInspectionStatusResponse#account_ids #account_ids} => Array<Types::MemberAccountEc2DeepInspectionStatusState> # * {Types::BatchGetMemberEc2DeepInspectionStatusResponse#failed_account_ids #failed_account_ids} => Array<Types::FailedMemberAccountEc2DeepInspectionStatusState> # # @example Request syntax with placeholder values # # resp = client.batch_get_member_ec2_deep_inspection_status({ # account_ids: ["AccountId"], # }) # # @example Response structure # # resp.account_ids #=> Array # resp.account_ids[0].account_id #=> String # resp.account_ids[0].error_message #=> String # resp.account_ids[0].status #=> String, one of "ACTIVATED", "DEACTIVATED", "PENDING", "FAILED" # resp.failed_account_ids #=> Array # resp.failed_account_ids[0].account_id #=> String # resp.failed_account_ids[0].ec2_scan_status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED" # resp.failed_account_ids[0].error_message #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/BatchGetMemberEc2DeepInspectionStatus AWS API Documentation # # @overload batch_get_member_ec2_deep_inspection_status(params = {}) # @param [Hash] params ({}) 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 # 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. # # @option params [required, Array] :account_ids # The unique identifiers for the Amazon Web Services accounts to change # Amazon Inspector deep inspection status for. # # @return [Types::BatchUpdateMemberEc2DeepInspectionStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::BatchUpdateMemberEc2DeepInspectionStatusResponse#account_ids #account_ids} => Array<Types::MemberAccountEc2DeepInspectionStatusState> # * {Types::BatchUpdateMemberEc2DeepInspectionStatusResponse#failed_account_ids #failed_account_ids} => Array<Types::FailedMemberAccountEc2DeepInspectionStatusState> # # @example 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 # }, # ], # }) # # @example Response structure # # resp.account_ids #=> Array # resp.account_ids[0].account_id #=> String # resp.account_ids[0].error_message #=> String # resp.account_ids[0].status #=> String, one of "ACTIVATED", "DEACTIVATED", "PENDING", "FAILED" # resp.failed_account_ids #=> Array # resp.failed_account_ids[0].account_id #=> String # resp.failed_account_ids[0].ec2_scan_status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED" # resp.failed_account_ids[0].error_message #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/BatchUpdateMemberEc2DeepInspectionStatus AWS API Documentation # # @overload batch_update_member_ec2_deep_inspection_status(params = {}) # @param [Hash] params ({}) 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 # Cancels the given findings report. # # @option params [required, String] :report_id # The ID of the report to be canceled. # # @return [Types::CancelFindingsReportResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::CancelFindingsReportResponse#report_id #report_id} => String # # @example Request syntax with placeholder values # # resp = client.cancel_findings_report({ # report_id: "ReportId", # required # }) # # @example Response structure # # resp.report_id #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/CancelFindingsReport AWS API Documentation # # @overload cancel_findings_report(params = {}) # @param [Hash] params ({}) def cancel_findings_report(params = {}, options = {}) req = build_request(:cancel_findings_report, params) req.send_request(options) end # Creates a filter resource using specified filter criteria. # # @option params [required, String] :action # Defines the action that is to be applied to the findings that match # the filter. # # @option params [String] :description # A description of the filter. # # @option params [required, Types::FilterCriteria] :filter_criteria # Defines the criteria to be used in the filter for querying findings. # # @option params [required, String] :name # 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. # # @option params [String] :reason # The reason for creating the filter. # # @option params [Hash] :tags # A list of tags for the filter. # # @return [Types::CreateFilterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::CreateFilterResponse#arn #arn} => String # # @example 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 # }, # ], # 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 # }, # ], # 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, # }, # 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", # }, # }) # # @example Response structure # # resp.arn #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/CreateFilter AWS API Documentation # # @overload create_filter(params = {}) # @param [Hash] params ({}) def create_filter(params = {}, options = {}) req = build_request(:create_filter, params) req.send_request(options) end # 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. # # @option params [Types::FilterCriteria] :filter_criteria # The filter criteria to apply to the results of the finding report. # # @option params [required, String] :report_format # The format to generate the report in. # # @option params [required, Types::Destination] :s3_destination # The Amazon S3 export destination for the report. # # @return [Types::CreateFindingsReportResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::CreateFindingsReportResponse#report_id #report_id} => String # # @example 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 # }, # ], # 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 # }, # ], # 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, # }, # 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 # }, # }) # # @example Response structure # # resp.report_id #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/CreateFindingsReport AWS API Documentation # # @overload create_findings_report(params = {}) # @param [Hash] params ({}) def create_findings_report(params = {}, options = {}) req = build_request(:create_findings_report, params) req.send_request(options) end # Deletes a filter resource. # # @option params [required, String] :arn # The Amazon Resource Number (ARN) of the filter to be deleted. # # @return [Types::DeleteFilterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DeleteFilterResponse#arn #arn} => String # # @example Request syntax with placeholder values # # resp = client.delete_filter({ # arn: "FilterArn", # required # }) # # @example Response structure # # resp.arn #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/DeleteFilter AWS API Documentation # # @overload delete_filter(params = {}) # @param [Hash] params ({}) def delete_filter(params = {}, options = {}) req = build_request(:delete_filter, params) req.send_request(options) end # Describe Amazon Inspector configuration settings for an Amazon Web # Services organization. # # @return [Types::DescribeOrganizationConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DescribeOrganizationConfigurationResponse#auto_enable #auto_enable} => Types::AutoEnable # * {Types::DescribeOrganizationConfigurationResponse#max_account_limit_reached #max_account_limit_reached} => Boolean # # @example Response structure # # resp.auto_enable.ec2 #=> Boolean # resp.auto_enable.ecr #=> Boolean # resp.auto_enable.lambda #=> Boolean # resp.max_account_limit_reached #=> Boolean # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/DescribeOrganizationConfiguration AWS API Documentation # # @overload describe_organization_configuration(params = {}) # @param [Hash] params ({}) def describe_organization_configuration(params = {}, options = {}) req = build_request(:describe_organization_configuration, params) req.send_request(options) end # Disables Amazon Inspector scans for one or more Amazon Web Services # accounts. Disabling all scan types in an account disables the Amazon # Inspector service. # # @option params [Array] :account_ids # An array of account IDs you want to disable Amazon Inspector scans # for. # # @option params [Array] :resource_types # The resource scan types you want to disable. # # @return [Types::DisableResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DisableResponse#accounts #accounts} => Array<Types::Account> # * {Types::DisableResponse#failed_accounts #failed_accounts} => Array<Types::FailedAccount> # # @example Request syntax with placeholder values # # resp = client.disable({ # account_ids: ["AccountId"], # resource_types: ["EC2"], # accepts EC2, ECR, LAMBDA # }) # # @example Response structure # # resp.accounts #=> Array # resp.accounts[0].account_id #=> 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].status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED" # resp.failed_accounts #=> Array # resp.failed_accounts[0].account_id #=> 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" # 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].status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED" # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/Disable AWS API Documentation # # @overload disable(params = {}) # @param [Hash] params ({}) def disable(params = {}, options = {}) req = build_request(:disable, params) req.send_request(options) end # Disables the Amazon Inspector delegated administrator for your # organization. # # @option params [required, String] :delegated_admin_account_id # The Amazon Web Services account ID of the current Amazon Inspector # delegated administrator. # # @return [Types::DisableDelegatedAdminAccountResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DisableDelegatedAdminAccountResponse#delegated_admin_account_id #delegated_admin_account_id} => String # # @example Request syntax with placeholder values # # resp = client.disable_delegated_admin_account({ # delegated_admin_account_id: "AccountId", # required # }) # # @example Response structure # # resp.delegated_admin_account_id #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/DisableDelegatedAdminAccount AWS API Documentation # # @overload disable_delegated_admin_account(params = {}) # @param [Hash] params ({}) def disable_delegated_admin_account(params = {}, options = {}) req = build_request(:disable_delegated_admin_account, params) req.send_request(options) end # Disassociates a member account from an Amazon Inspector delegated # administrator. # # @option params [required, String] :account_id # The Amazon Web Services account ID of the member account to # disassociate. # # @return [Types::DisassociateMemberResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::DisassociateMemberResponse#account_id #account_id} => String # # @example Request syntax with placeholder values # # resp = client.disassociate_member({ # account_id: "AccountId", # required # }) # # @example Response structure # # resp.account_id #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/DisassociateMember AWS API Documentation # # @overload disassociate_member(params = {}) # @param [Hash] params ({}) def disassociate_member(params = {}, options = {}) req = build_request(:disassociate_member, params) req.send_request(options) end # Enables Amazon Inspector scans for one or more Amazon Web Services # accounts. # # @option params [Array] :account_ids # A list of account IDs you want to enable Amazon Inspector scans for. # # @option params [String] :client_token # The idempotency token for the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option.** # # @option params [required, Array] :resource_types # The resource scan types you want to enable. # # @return [Types::EnableResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::EnableResponse#accounts #accounts} => Array<Types::Account> # * {Types::EnableResponse#failed_accounts #failed_accounts} => Array<Types::FailedAccount> # # @example Request syntax with placeholder values # # resp = client.enable({ # account_ids: ["AccountId"], # client_token: "ClientToken", # resource_types: ["EC2"], # required, accepts EC2, ECR, LAMBDA # }) # # @example Response structure # # resp.accounts #=> Array # resp.accounts[0].account_id #=> 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].status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED" # resp.failed_accounts #=> Array # resp.failed_accounts[0].account_id #=> 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" # 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].status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED", "SUSPENDING", "SUSPENDED" # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/Enable AWS API Documentation # # @overload enable(params = {}) # @param [Hash] params ({}) def enable(params = {}, options = {}) req = build_request(:enable, params) req.send_request(options) end # Enables the Amazon Inspector delegated administrator for your # Organizations organization. # # @option params [String] :client_token # The idempotency token for the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option.** # # @option params [required, String] :delegated_admin_account_id # The Amazon Web Services account ID of the Amazon Inspector delegated # administrator. # # @return [Types::EnableDelegatedAdminAccountResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::EnableDelegatedAdminAccountResponse#delegated_admin_account_id #delegated_admin_account_id} => String # # @example Request syntax with placeholder values # # resp = client.enable_delegated_admin_account({ # client_token: "ClientToken", # delegated_admin_account_id: "AccountId", # required # }) # # @example Response structure # # resp.delegated_admin_account_id #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/EnableDelegatedAdminAccount AWS API Documentation # # @overload enable_delegated_admin_account(params = {}) # @param [Hash] params ({}) def enable_delegated_admin_account(params = {}, options = {}) req = build_request(:enable_delegated_admin_account, params) req.send_request(options) end # Retrieves setting configurations for Inspector scans. # # @return [Types::GetConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetConfigurationResponse#ecr_configuration #ecr_configuration} => Types::EcrConfigurationState # # @example Response structure # # resp.ecr_configuration.rescan_duration_state.rescan_duration #=> String, one of "LIFETIME", "DAYS_30", "DAYS_180" # resp.ecr_configuration.rescan_duration_state.status #=> String, one of "SUCCESS", "PENDING", "FAILED" # resp.ecr_configuration.rescan_duration_state.updated_at #=> Time # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/GetConfiguration AWS API Documentation # # @overload get_configuration(params = {}) # @param [Hash] params ({}) def get_configuration(params = {}, options = {}) req = build_request(:get_configuration, params) req.send_request(options) end # Retrieves information about the Amazon Inspector delegated # administrator for your organization. # # @return [Types::GetDelegatedAdminAccountResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetDelegatedAdminAccountResponse#delegated_admin #delegated_admin} => Types::DelegatedAdmin # # @example Response structure # # resp.delegated_admin.account_id #=> 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" # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/GetDelegatedAdminAccount AWS API Documentation # # @overload get_delegated_admin_account(params = {}) # @param [Hash] params ({}) def get_delegated_admin_account(params = {}, options = {}) req = build_request(:get_delegated_admin_account, params) req.send_request(options) end # Retrieves the activation status of Amazon Inspector deep inspection # and custom paths associated with your account. # # @return [Types::GetEc2DeepInspectionConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetEc2DeepInspectionConfigurationResponse#error_message #error_message} => String # * {Types::GetEc2DeepInspectionConfigurationResponse#org_package_paths #org_package_paths} => Array<String> # * {Types::GetEc2DeepInspectionConfigurationResponse#package_paths #package_paths} => Array<String> # * {Types::GetEc2DeepInspectionConfigurationResponse#status #status} => String # # @example 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" # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/GetEc2DeepInspectionConfiguration AWS API Documentation # # @overload get_ec2_deep_inspection_configuration(params = {}) # @param [Hash] params ({}) def get_ec2_deep_inspection_configuration(params = {}, options = {}) req = build_request(:get_ec2_deep_inspection_configuration, params) req.send_request(options) end # Gets the status of a findings report. # # @option params [String] :report_id # The ID of the report to retrieve the status of. # # @return [Types::GetFindingsReportStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetFindingsReportStatusResponse#destination #destination} => Types::Destination # * {Types::GetFindingsReportStatusResponse#error_code #error_code} => String # * {Types::GetFindingsReportStatusResponse#error_message #error_message} => String # * {Types::GetFindingsReportStatusResponse#filter_criteria #filter_criteria} => Types::FilterCriteria # * {Types::GetFindingsReportStatusResponse#report_id #report_id} => String # * {Types::GetFindingsReportStatusResponse#status #status} => String # # @example Request syntax with placeholder values # # resp = client.get_findings_report_status({ # report_id: "ReportId", # }) # # @example 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.aws_account_id #=> Array # resp.filter_criteria.aws_account_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS" # resp.filter_criteria.aws_account_id[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.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].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" # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/GetFindingsReportStatus AWS API Documentation # # @overload get_findings_report_status(params = {}) # @param [Hash] params ({}) def get_findings_report_status(params = {}, options = {}) req = build_request(:get_findings_report_status, params) req.send_request(options) end # Gets member information for your organization. # # @option params [required, String] :account_id # The Amazon Web Services account ID of the member account to retrieve # information on. # # @return [Types::GetMemberResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetMemberResponse#member #member} => Types::Member # # @example Request syntax with placeholder values # # resp = client.get_member({ # account_id: "AccountId", # required # }) # # @example Response structure # # resp.member.account_id #=> String # resp.member.delegated_admin_account_id #=> 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 # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/GetMember AWS API Documentation # # @overload get_member(params = {}) # @param [Hash] params ({}) def get_member(params = {}, options = {}) req = build_request(:get_member, params) req.send_request(options) end # Lists the permissions an account has to configure Amazon Inspector. # # @option params [Integer] :max_results # The maximum number of results to return in the response. # # @option params [String] :next_token # 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. # # @option params [String] :service # The service scan type to check permissions for. # # @return [Types::ListAccountPermissionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListAccountPermissionsResponse#next_token #next_token} => String # * {Types::ListAccountPermissionsResponse#permissions #permissions} => Array<Types::Permission> # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example Request syntax with placeholder values # # resp = client.list_account_permissions({ # max_results: 1, # next_token: "NextToken", # service: "EC2", # accepts EC2, ECR, LAMBDA # }) # # @example 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" # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListAccountPermissions AWS API Documentation # # @overload list_account_permissions(params = {}) # @param [Hash] params ({}) def list_account_permissions(params = {}, options = {}) req = build_request(:list_account_permissions, params) req.send_request(options) end # Lists coverage details for you environment. # # @option params [Types::CoverageFilterCriteria] :filter_criteria # An object that contains details on the filters to apply to the # coverage data for your environment. # # @option params [Integer] :max_results # The maximum number of results to return in the response. # # @option params [String] :next_token # 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. # # @return [Types::ListCoverageResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListCoverageResponse#covered_resources #covered_resources} => Array<Types::CoveredResource> # * {Types::ListCoverageResponse#next_token #next_token} => String # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example 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 # }, # ], # 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", # }, # ], # 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_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", # }) # # @example Response structure # # resp.covered_resources #=> Array # resp.covered_resources[0].account_id #=> String # resp.covered_resources[0].resource_id #=> String # resp.covered_resources[0].resource_metadata.ec2.ami_id #=> String # resp.covered_resources[0].resource_metadata.ec2.platform #=> String, one of "WINDOWS", "LINUX", "UNKNOWN" # resp.covered_resources[0].resource_metadata.ec2.tags #=> Hash # resp.covered_resources[0].resource_metadata.ec2.tags["MapKey"] #=> String # resp.covered_resources[0].resource_metadata.ecr_image.tags #=> Array # resp.covered_resources[0].resource_metadata.ecr_image.tags[0] #=> String # resp.covered_resources[0].resource_metadata.ecr_repository.name #=> String # resp.covered_resources[0].resource_metadata.ecr_repository.scan_frequency #=> String, one of "MANUAL", "SCAN_ON_PUSH", "CONTINUOUS_SCAN" # resp.covered_resources[0].resource_metadata.lambda_function.function_name #=> String # resp.covered_resources[0].resource_metadata.lambda_function.function_tags #=> Hash # resp.covered_resources[0].resource_metadata.lambda_function.function_tags["MapKey"] #=> String # resp.covered_resources[0].resource_metadata.lambda_function.layers #=> Array # resp.covered_resources[0].resource_metadata.lambda_function.layers[0] #=> String # resp.covered_resources[0].resource_metadata.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" # 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_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" # resp.covered_resources[0].scan_status.status_code #=> String, one of "ACTIVE", "INACTIVE" # resp.covered_resources[0].scan_type #=> String, one of "NETWORK", "PACKAGE" # resp.next_token #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListCoverage AWS API Documentation # # @overload list_coverage(params = {}) # @param [Hash] params ({}) def list_coverage(params = {}, options = {}) req = build_request(:list_coverage, params) req.send_request(options) end # Lists Amazon Inspector coverage statistics for your environment. # # @option params [Types::CoverageFilterCriteria] :filter_criteria # An object that contains details on the filters to apply to the # coverage data for your environment. # # @option params [String] :group_by # The value to group the results by. # # @option params [String] :next_token # 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. # # @return [Types::ListCoverageStatisticsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListCoverageStatisticsResponse#counts_by_group #counts_by_group} => Array<Types::Counts> # * {Types::ListCoverageStatisticsResponse#next_token #next_token} => String # * {Types::ListCoverageStatisticsResponse#total_counts #total_counts} => Integer # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example 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 # }, # ], # 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", # }, # ], # 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_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", # }) # # @example 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 # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListCoverageStatistics AWS API Documentation # # @overload list_coverage_statistics(params = {}) # @param [Hash] params ({}) def list_coverage_statistics(params = {}, options = {}) req = build_request(:list_coverage_statistics, params) req.send_request(options) end # Lists information about the Amazon Inspector delegated administrator # of your organization. # # @option params [Integer] :max_results # The maximum number of results to return in the response. # # @option params [String] :next_token # 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. # # @return [Types::ListDelegatedAdminAccountsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListDelegatedAdminAccountsResponse#delegated_admin_accounts #delegated_admin_accounts} => Array<Types::DelegatedAdminAccount> # * {Types::ListDelegatedAdminAccountsResponse#next_token #next_token} => String # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example Request syntax with placeholder values # # resp = client.list_delegated_admin_accounts({ # max_results: 1, # next_token: "NextToken", # }) # # @example Response structure # # resp.delegated_admin_accounts #=> Array # resp.delegated_admin_accounts[0].account_id #=> String # resp.delegated_admin_accounts[0].status #=> String, one of "ENABLED", "DISABLE_IN_PROGRESS" # resp.next_token #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListDelegatedAdminAccounts AWS API Documentation # # @overload list_delegated_admin_accounts(params = {}) # @param [Hash] params ({}) def list_delegated_admin_accounts(params = {}, options = {}) req = build_request(:list_delegated_admin_accounts, params) req.send_request(options) end # Lists the filters associated with your account. # # @option params [String] :action # The action the filter applies to matched findings. # # @option params [Array] :arns # The Amazon resource number (ARN) of the filter. # # @option params [Integer] :max_results # The maximum number of results to return in the response. # # @option params [String] :next_token # 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. # # @return [Types::ListFiltersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListFiltersResponse#filters #filters} => Array<Types::Filter> # * {Types::ListFiltersResponse#next_token #next_token} => String # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example Request syntax with placeholder values # # resp = client.list_filters({ # action: "NONE", # accepts NONE, SUPPRESS # arns: ["FilterArn"], # max_results: 1, # next_token: "NextToken", # }) # # @example 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.aws_account_id #=> Array # resp.filters[0].criteria.aws_account_id[0].comparison #=> String, one of "EQUALS", "PREFIX", "NOT_EQUALS" # resp.filters[0].criteria.aws_account_id[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.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].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 # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListFilters AWS API Documentation # # @overload list_filters(params = {}) # @param [Hash] params ({}) def list_filters(params = {}, options = {}) req = build_request(:list_filters, params) req.send_request(options) end # Lists aggregated finding data for your environment based on specific # criteria. # # @option params [Array] :account_ids # The Amazon Web Services account IDs to retrieve finding aggregation # data for. # # @option params [Types::AggregationRequest] :aggregation_request # Details of the aggregation request that is used to filter your # aggregation results. # # @option params [required, String] :aggregation_type # The type of the aggregation request. # # @option params [Integer] :max_results # The maximum number of results to return in the response. # # @option params [String] :next_token # 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. # # @return [Types::ListFindingAggregationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListFindingAggregationsResponse#aggregation_type #aggregation_type} => String # * {Types::ListFindingAggregationsResponse#next_token #next_token} => String # * {Types::ListFindingAggregationsResponse#responses #responses} => Array<Types::AggregationResponse> # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example 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 # 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 # 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: { # 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", # }) # # @example 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].account_aggregation.account_id #=> String # resp.responses[0].account_aggregation.severity_counts.all #=> Integer # resp.responses[0].account_aggregation.severity_counts.critical #=> Integer # resp.responses[0].account_aggregation.severity_counts.high #=> Integer # resp.responses[0].account_aggregation.severity_counts.medium #=> Integer # resp.responses[0].ami_aggregation.account_id #=> 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.account_id #=> 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.account_id #=> 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.account_id #=> String # 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.account_id #=> 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.account_id #=> 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.account_id #=> 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.account_id #=> 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.account_id #=> 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.account_id #=> 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 # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListFindingAggregations AWS API Documentation # # @overload list_finding_aggregations(params = {}) # @param [Hash] params ({}) def list_finding_aggregations(params = {}, options = {}) req = build_request(:list_finding_aggregations, params) req.send_request(options) end # Lists findings for your environment. # # @option params [Types::FilterCriteria] :filter_criteria # Details on the filters to apply to your finding results. # # @option params [Integer] :max_results # The maximum number of results to return in the response. # # @option params [String] :next_token # 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. # # @option params [Types::SortCriteria] :sort_criteria # Details on the sort criteria to apply to your finding results. # # @return [Types::ListFindingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListFindingsResponse#findings #findings} => Array<Types::Finding> # * {Types::ListFindingsResponse#next_token #next_token} => String # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example 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 # }, # ], # 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 # }, # ], # 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, # }, # 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 # sort_order: "ASC", # required, accepts ASC, DESC # }, # }) # # @example Response structure # # resp.findings #=> Array # resp.findings[0].aws_account_id #=> String # resp.findings[0].description #=> String # 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" # 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" # 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" # resp.findings[0].updated_at #=> Time # resp.next_token #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListFindings AWS API Documentation # # @overload list_findings(params = {}) # @param [Hash] params ({}) def list_findings(params = {}, options = {}) req = build_request(:list_findings, params) req.send_request(options) end # List members associated with the Amazon Inspector delegated # administrator for your organization. # # @option params [Integer] :max_results # The maximum number of results to return in the response. # # @option params [String] :next_token # 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. # # @option params [Boolean] :only_associated # Specifies whether to list only currently associated members if `True` # or to list all members within the organization if `False`. # # @return [Types::ListMembersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListMembersResponse#members #members} => Array<Types::Member> # * {Types::ListMembersResponse#next_token #next_token} => String # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example Request syntax with placeholder values # # resp = client.list_members({ # max_results: 1, # next_token: "NextToken", # only_associated: false, # }) # # @example Response structure # # resp.members #=> Array # resp.members[0].account_id #=> String # resp.members[0].delegated_admin_account_id #=> 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 # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListMembers AWS API Documentation # # @overload list_members(params = {}) # @param [Hash] params ({}) def list_members(params = {}, options = {}) req = build_request(:list_members, params) req.send_request(options) end # Lists all tags attached to a given resource. # # @option params [required, String] :resource_arn # The Amazon resource number (ARN) of the resource to list tags of. # # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListTagsForResourceResponse#tags #tags} => Hash<String,String> # # @example Request syntax with placeholder values # # resp = client.list_tags_for_resource({ # resource_arn: "Arn", # required # }) # # @example Response structure # # resp.tags #=> Hash # resp.tags["MapKey"] #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListTagsForResource AWS API Documentation # # @overload list_tags_for_resource(params = {}) # @param [Hash] params ({}) def list_tags_for_resource(params = {}, options = {}) req = build_request(:list_tags_for_resource, params) req.send_request(options) end # Lists the Amazon Inspector usage totals over the last 30 days. # # @option params [Array] :account_ids # The Amazon Web Services account IDs to retrieve usage totals for. # # @option params [Integer] :max_results # The maximum number of results to return in the response. # # @option params [String] :next_token # 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. # # @return [Types::ListUsageTotalsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListUsageTotalsResponse#next_token #next_token} => String # * {Types::ListUsageTotalsResponse#totals #totals} => Array<Types::UsageTotal> # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example Request syntax with placeholder values # # resp = client.list_usage_totals({ # account_ids: ["UsageAccountId"], # max_results: 1, # next_token: "ListUsageTotalsNextToken", # }) # # @example Response structure # # resp.next_token #=> String # resp.totals #=> Array # resp.totals[0].account_id #=> 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" # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/ListUsageTotals AWS API Documentation # # @overload list_usage_totals(params = {}) # @param [Hash] params ({}) def list_usage_totals(params = {}, options = {}) req = build_request(:list_usage_totals, params) req.send_request(options) end # Lists Amazon Inspector coverage details for a specific vulnerability. # # @option params [required, Types::SearchVulnerabilitiesFilterCriteria] :filter_criteria # The criteria used to filter the results of a vulnerability search. # # @option params [String] :next_token # 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. # # @return [Types::SearchVulnerabilitiesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::SearchVulnerabilitiesResponse#next_token #next_token} => String # * {Types::SearchVulnerabilitiesResponse#vulnerabilities #vulnerabilities} => Array<Types::Vulnerability> # # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. # # @example Request syntax with placeholder values # # resp = client.search_vulnerabilities({ # filter_criteria: { # required # vulnerability_ids: ["VulnId"], # required # }, # next_token: "NextToken", # }) # # @example 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 # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/SearchVulnerabilities AWS API Documentation # # @overload search_vulnerabilities(params = {}) # @param [Hash] params ({}) def search_vulnerabilities(params = {}, options = {}) req = build_request(:search_vulnerabilities, params) req.send_request(options) end # Adds tags to a resource. # # @option params [required, String] :resource_arn # The Amazon Resource Name (ARN) of the resource to apply a tag to. # # @option params [required, Hash] :tags # The tags to be added to a resource. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.tag_resource({ # resource_arn: "Arn", # required # tags: { # required # "MapKey" => "MapValue", # }, # }) # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/TagResource AWS API Documentation # # @overload tag_resource(params = {}) # @param [Hash] params ({}) def tag_resource(params = {}, options = {}) req = build_request(:tag_resource, params) req.send_request(options) end # Removes tags from a resource. # # @option params [required, String] :resource_arn # The Amazon Resource Name (ARN) for the resource to remove tags from. # # @option params [required, Array] :tag_keys # The tag keys to remove from the resource. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.untag_resource({ # resource_arn: "Arn", # required # tag_keys: ["TagKey"], # required # }) # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/UntagResource AWS API Documentation # # @overload untag_resource(params = {}) # @param [Hash] params ({}) def untag_resource(params = {}, options = {}) req = build_request(:untag_resource, params) req.send_request(options) end # Updates setting configurations for your Amazon Inspector account. When # you use this API as an Amazon Inspector delegated administrator this # updates the setting for all accounts you manage. Member accounts in an # organization cannot update this setting. # # @option params [required, Types::EcrConfiguration] :ecr_configuration # Specifies how the ECR automated re-scan will be updated for your # environment. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.update_configuration({ # ecr_configuration: { # required # rescan_duration: "LIFETIME", # required, accepts LIFETIME, DAYS_30, DAYS_180 # }, # }) # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/UpdateConfiguration AWS API Documentation # # @overload update_configuration(params = {}) # @param [Hash] params ({}) def update_configuration(params = {}, options = {}) req = build_request(:update_configuration, params) req.send_request(options) end # Activates, deactivates Amazon Inspector deep inspection, or updates # custom paths for your account. # # @option params [Boolean] :activate_deep_inspection # Specify `TRUE` to activate Amazon Inspector deep inspection in your # account, or `FALSE` to deactivate. Member accounts in an organization # cannot deactivate deep inspection, instead the delegated administrator # for the organization can deactivate a member account using # [BatchUpdateMemberEc2DeepInspectionStatus][1]. # # # # [1]: https://docs.aws.amazon.com/inspector/v2/APIReference/API_BatchUpdateMemberEc2DeepInspectionStatus.html # # @option params [Array] :package_paths # The Amazon Inspector deep inspection custom paths you are adding for # your account. # # @return [Types::UpdateEc2DeepInspectionConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::UpdateEc2DeepInspectionConfigurationResponse#error_message #error_message} => String # * {Types::UpdateEc2DeepInspectionConfigurationResponse#org_package_paths #org_package_paths} => Array<String> # * {Types::UpdateEc2DeepInspectionConfigurationResponse#package_paths #package_paths} => Array<String> # * {Types::UpdateEc2DeepInspectionConfigurationResponse#status #status} => String # # @example Request syntax with placeholder values # # resp = client.update_ec2_deep_inspection_configuration({ # activate_deep_inspection: false, # package_paths: ["Path"], # }) # # @example 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" # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/UpdateEc2DeepInspectionConfiguration AWS API Documentation # # @overload update_ec2_deep_inspection_configuration(params = {}) # @param [Hash] params ({}) def update_ec2_deep_inspection_configuration(params = {}, options = {}) req = build_request(:update_ec2_deep_inspection_configuration, params) req.send_request(options) end # Specifies the action that is to be applied to the findings that match # the filter. # # @option params [String] :action # Specifies the action that is to be applied to the findings that match # the filter. # # @option params [String] :description # A description of the filter. # # @option params [required, String] :filter_arn # The Amazon Resource Number (ARN) of the filter to update. # # @option params [Types::FilterCriteria] :filter_criteria # Defines the criteria to be update in the filter. # # @option params [String] :name # The name of the filter. # # @option params [String] :reason # The reason the filter was updated. # # @return [Types::UpdateFilterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::UpdateFilterResponse#arn #arn} => String # # @example Request syntax with placeholder values # # resp = client.update_filter({ # action: "NONE", # accepts NONE, SUPPRESS # description: "FilterDescription", # filter_arn: "FilterArn", # required # filter_criteria: { # aws_account_id: [ # { # 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 # }, # ], # 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, # }, # 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", # reason: "FilterReason", # }) # # @example Response structure # # resp.arn #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/UpdateFilter AWS API Documentation # # @overload update_filter(params = {}) # @param [Hash] params ({}) def update_filter(params = {}, options = {}) req = build_request(:update_filter, params) req.send_request(options) end # Updates the Amazon Inspector deep inspection custom paths for your # organization. You must be an Amazon Inspector delegated administrator # to use this API. # # @option params [required, Array] :org_package_paths # The Amazon Inspector deep inspection custom paths you are adding for # your organization. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.update_org_ec2_deep_inspection_configuration({ # org_package_paths: ["Path"], # required # }) # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/UpdateOrgEc2DeepInspectionConfiguration AWS API Documentation # # @overload update_org_ec2_deep_inspection_configuration(params = {}) # @param [Hash] params ({}) def update_org_ec2_deep_inspection_configuration(params = {}, options = {}) req = build_request(:update_org_ec2_deep_inspection_configuration, params) req.send_request(options) end # Updates the configurations for your Amazon Inspector organization. # # @option params [required, Types::AutoEnable] :auto_enable # Defines which scan types are enabled automatically for new members of # your Amazon Inspector organization. # # @return [Types::UpdateOrganizationConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::UpdateOrganizationConfigurationResponse#auto_enable #auto_enable} => Types::AutoEnable # # @example Request syntax with placeholder values # # resp = client.update_organization_configuration({ # auto_enable: { # required # ec2: false, # required # ecr: false, # required # lambda: false, # }, # }) # # @example Response structure # # resp.auto_enable.ec2 #=> Boolean # resp.auto_enable.ecr #=> Boolean # resp.auto_enable.lambda #=> Boolean # # @see http://docs.aws.amazon.com/goto/WebAPI/inspector2-2020-06-08/UpdateOrganizationConfiguration AWS API Documentation # # @overload update_organization_configuration(params = {}) # @param [Hash] params ({}) def update_organization_configuration(params = {}, options = {}) req = build_request(:update_organization_configuration, params) req.send_request(options) end # @!endgroup # @param params ({}) # @api private def build_request(operation_name, params = {}) handlers = @handlers.for(operation_name) context = Seahorse::Client::RequestContext.new( operation_name: operation_name, operation: config.api.operation(operation_name), client: self, params: params, config: config) context[:gem_name] = 'aws-sdk-inspector2' context[:gem_version] = '1.12.0' Seahorse::Client::Request.new(handlers, context) end # @api private # @deprecated def waiter_names [] end class << self # @api private attr_reader :identifier # @api private def errors_module Errors end end end end